본문으로 건너뛰기

© 2026 Molayo

Dev.to헤드라인2026. 06. 02. 23:03

수학 증명을 그래프 탐색으로 취급하여 발견하는 시스템을 구축했습니다

요약

수학적 증명을 공리와 기법 간의 경로 탐색 문제로 정의하고, 이를 위해 방대한 수학적 지식을 방향성 그래프로 구조화한 시스템을 구축했습니다. 알려진 기법들의 조합을 통해 유한한 탐색 공간 내에서 새로운 증명 경로를 찾는 것이 핵심입니다.

핵심 포인트

  • 수학적 증명을 방향성 그래프 내의 경로 탐색 문제로 재정의
  • 공리, 기법, 중간 상태를 노드와 엣지로 구성된 지식 그래프 구축
  • 무한한 문장 탐색 대신 유한한 기법 조합을 통한 효율적 탐색
  • 약 100개의 주요 정리와 수천 개의 공리를 포함한 구조화된 데이터

수학의 모든 주요 정리(Theorem)는 알려진 사실에 알려진 기법을 적용함으로써 발견되었습니다.

유클리드(Euclid)는 귀류법(Proof by contradiction)을 사용하여 소수가 무한히 많다는 것을 보여주었습니다. 오일러(Euler)는 바젤 문제(Basel problem)를 해결하기 위해 급수(Series)를 곱 공식(Product formula)에 대입했습니다. 갈루아(Galois)는 다항식의 근에 대해 대칭성 감소(Symmetry reduction)를 사용했습니다. 와일즈(Wiles)는 페르마의 마지막 정리(Fermat's Last Theorem)를 종결짓기 위해 모듈러 형식(Modular forms)과 타원 곡선(Elliptic curves)을 연결했습니다. 이러한 기법들은 반복됩니다. 동일한 증명 방법이 수 세기와 여러 세부 분야에 걸쳐 나타납니다.

그래서 저는 질문했습니다: 만약 이 모든 기법과 사실들을 하나의 그래프로 매핑하고, 기계가 그 안에서 새로운 경로를 탐색하게 할 수 있다면 어떨까?

그것이 제가 구축한 것입니다.

https://youtu.be/ypj-h_Aih5Q

3D Knowledge Graph

핵심 아이디어: 증명은 경로 찾기입니다

이 문제를 다룰 수 있게 만드는 통찰은 다음과 같습니다.

수학적 증명은 하나의 사슬(Chain)입니다. 당신은 알려진 사실(공리, Axioms)에서 시작하여, 기법을 적용하고, 새로운 결과를 얻고, 또 다른 기법을 적용하여, 결국 정리에 도달합니다. 그 사슬은 **방향성 그래프(Directed graph)를 통과하는 경로(Path)**입니다.

공리 (Axiom) → 기법 (Technique) → 중간 상태 (Intermediate state) → 기법 (Technique) → 정리 (Theorem)

모든 가능한 수학적 문장들을 탐색하는 대신(무한하며 절망적입니다), 엔진은 **알려진 상태에 적용된 알려진 기법들의 조합(Compositions of known techniques applied to known states)**을 탐색합니다. 이는 유한하고 구조화된 탐색 공간(Search space)입니다.

지식 그래프 (The knowledge graph)

저는 피타고라스(Pythagoras)부터 펄먼(Perelman)에 이르기까지 수학의 중추적인 정리 약 100개에서 시작하여, 각 정리 뒤에 숨겨진 발견 맥락, 동기, 그리고 증명 아이디어를 추적했습니다. 그런 다음 모든 것을 구조화된 방향성 그래프로 정제했습니다:

항목개수
공리 노드 (Axiom nodes, 시작 사실)3,791
......
각 기법은 입력(inputs), 과정(process), 출력(outputs), 전제 조건(preconditions)을 포함하는 공식적인 시그니처(formal signature)를 가지며, 대수적 조작 (algebraic manipulation), 대칭 및 불변량 (symmetry & invariants), 분야 간 전이 (cross-field transfer), _위상 및 장애 (topology & obstruction)_와 같은 12개의 클러스터로 조직되어 있습니다.

이 그래프는 무엇이 참인지(what is true)뿐만 아니라, 각 진리가 이전의 진리들로부터 어떻게 도달되었는지(how each truth was reached)를 포착합니다.

예시 살펴보기

피타고라스 정리(Pythagorean theorem)가 이 그래프에서 어떻게 존재하는지 추적해 보겠습니다.

Pythagorean theorem 정리 노드는 Complete the square (완전제곱식 만들기) 기법으로부터 들어오는 에지(incoming edges)를 가집니다. 이는 고전적인 증명 방법 중 하나입니다. 이 노드의 나가는 에지(outgoing edges)는 Compose with identity (항등원과 합성) 및 Conjecture refinement (추측 정교화)로 이어지며, 이는 이 정리가 이후 결과들을 위한 빌딩 블록(building block) 역할을 함을 의미합니다.

이것이 바로 그래프 구조의 힘입니다. 모든 정리는 기법을 적용하여 도달하는 목적지(destination)인 동시에, 미래의 증명으로 이어지는 발사대(launchpad)이기도 합니다.

놀라운 연결 고리들

가장 흥미로운 부분은 개별 정리들이 아니라, 바로 **분야 간의 가교 (cross-field bridges)**입니다.

Conserved quantity (보존량, symmetry & invariants 클러스터 소속) 기법은 다음 항목들과 연결됩니다:

  • 페르마의 소정리 (Fermat's little theorem) (정수론)
  • 오일러의 다면체 정리 V-E+F=2 (위상수학)
  • 오일러 경로 판정법 (Eulerian path criterion) (그래프 이론)

완전히 다른 세 가지 수학 분야가 하나의 근본적인 증명 기법으로 연결됩니다. 그래프는 이러한 연결을 명시적으로 보여줍니다.

Symmetry reduction (대칭 감소)은 사영 기하학의 데자르그 정리(Desargues's theorem)를 집합론의 칸토어-베른슈타인-슈뢰더 정리(Cantor-Bernstein-Schroeder theorem)와 대수학의 코시 군 정리(Cauchy's group theorem)로 연결합니다. 동일한 기법이 서로 다른 세계를 잇는 것입니다.

Duality (쌍대성)는 스토크스 정리 (Stokes's theorem, 미적분학), 힐베르트 영점 정리 (Hilbert's Nullstellensatz, 대수 기하학), 그리고 그린 정리 (Green's theorem, 벡터 해석학)를 가교합니다.

이러한 분야 간 전이(cross-field transfers)야말로 새로운 증명이 탄생하는 바로 그 지점이며, 엔진은 이를 알고 있습니다.

발견 엔진의 작동 방식

엔진은 증명 발견을 탐색 문제(search problem)로 재정의합니다:

                    ┌──────────────────────┐
                    │   ORCHESTRATOR LLM   │
                    │  Picks techniques,   │
...```

**오케스트레이터 (Orchestrator)** LLM은 점수 산정 휴리스틱 (scoring heuristic)을 기반으로 시도할 기법들을 선택합니다. **워커 (Worker)** LLM들은 각 기법을 병렬로 적용합니다. **프루너 (Pruner)**는 불가능성 정리 (impossibility theorems) (Abel-Ruffini, Gödel, Turing)를 위반하는 가지(branch)들을 제거합니다. 탐색 트리 (search tree)는 공리 (axioms)로부터 목표 (goal)까지의 경로가 발견되거나, 프런티어 (frontier)가 소진될 때까지 성장합니다.

점수 산정 휴리스틱은 **교차 분야 전이 (cross-field transfers)** — 서로 다른 클러스터(clusters)를 연결하는 기법들 — 에 가산점을 부여합니다. 역사가 보여주듯, 바로 그 지점에서 새로운 증명들이 탄생하기 때문입니다.

## 3D 시각화

전체 그래프는 대화형 3D 뷰어에서 탐색할 수 있습니다. 노드 (nodes)는 유형에 따라 빛나고, 입자 (particles)는 수학적 추론 (mathematical reasoning)의 방향을 보여주며 에지 (edges)를 따라 흐릅니다. 사용자는 궤도 회전, 확대/축소, 클릭을 통해 인접 영역 (neighborhoods)을 탐색할 수 있습니다.

| 요소 | 의미 |
| --- | --- |
| 회색 점 | 공리 (Axioms) — 기초적인 정의 |
| ... | |

노드 위에 마우스를 올리면 연결된 부분이 밝게 빛나는 것을 볼 수 있습니다. 더블 클릭하면 해당 노드의 전체 인접 영역을 탐색할 수 있습니다.

## 직접 시도해 보세요

git clone https://github.com/ansumandas441/mathematical-discovery-engine.git
cd mathematical-discovery-engine
python3 -m http.server 8765
...


또는 발견 엔진 (discovery engine)을 실행하세요:

pip install anthropic networkx
python3 -m discovery_engine.discover --dry-run
"Prove the Erdos primitive set conjecture"


## ![GitHub logo](https://assets.dev.to/assets/github-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg) [ansumandas441](https://github.com/ansumandas441) / [mathematical-discovery-engine](https://github.com/ansumandas441/mathematical-discovery-engine)

### 이것은 기존 결과에 기법을 적용하여 새로운 수학을 탐색하는 수학적 발견 엔진입니다.

# 수학적 발견 엔진 (Mathematical Discovery Engine, MDE)

[![License: MIT](https://camo.githubusercontent.com/08cef40a9105b6526ca22088bc514fbfdbc9aac1ddbf8d4e6c750e3a88a44dca/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c6963656e73652d4d49542d626c75652e737667)](https://github.com/ansumandas441/mathematical-discovery-engine/LICENSE) [![Python 3.10+](https://camo.githubusercontent.com/7856832dba5da6978f73123ee167994b01ba1cec502fab7d542d35eccc165deb/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f507974686f6e2d332e31302532422d3337373641422e7376673f6c6f676f3d707974686f6e266c6f676f436f6c6f723d7768697465)](https://www.python.org/) [![Knowledge Graph Nodes](https://camo.githubusercontent.com/f581bc71da9e92e9a886b4174ce159d1d4fb525c6c8f6ba4a6e429e50bb16f14/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4e6f6465732d392532433436362d627269676874677265656e2e737667)](https://github.com/ansumandas441/mathematical-discovery-engine#knowledge-graph) [![Knowledge Graph Edges](https://camo.githubusercontent.com/bde85b9ba4186e3a2140c276aaad958adad3d86e33006b61393d0046c34c9316/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f45646765732d31332532433530342d627269676874677265656e2e737667)](https://github.com/ansumandas441/mathematical-discovery-engine#knowledge-graph) [![Proof Techniques](https://camo.githubusercontent.com/54bab27650d8d519ea61fa01b53a909b81b1e241108bf379d2b7f530d2e03deb/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f546563686e69717565732d3336302d6f72616e67652e737667)](https://github.com/ansumandas441/mathematical-discovery-engine#knowledge-graph) [![Theorems](https://camo.githubusercontent.com/08910672e72da65f8b80242770f57e56064448b1b9f945a7d90e46d7a2d76956/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5468656f72656d732d322532433539332d707572706c652e737667)](https://github.com/ansumandas441/mathematical-discovery-engine#knowledge-graph) [![GitHub stars](https://camo.githubusercontent.com/55395966d9e1693865c204dc3caa5eeb1deb8a0c575bd1339e7878b247c9c339/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f73746172732f616e73756d616e6461733434312f6d617468656d61746963616c2d646973636f766572792d656e67696e653f7374796c653d736f6369616c)](https://github.com/ansumandas441/mathematical-discovery-engine) [![PRs Welcome](https://camo.githubusercontent.com/dd0b24c1e6776719edb2c273548a510d6490d8d25269a043dfabbd38419905da/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5052732d77656c636f6d652d627269676874677265656e2e737667)](https://github.com/ansumandas441/mathematical-discovery-engine/pulls)

[![3D Knowledge Graph — 9,466 mathematical nodes connected by 13,504 edges](https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fraw.githubusercontent.com%2Fansumandas441%2Fmathematical-discovery-engine%2FHEAD%2Fassets%2Fknowledge_graph_3d_preview.gif)](https://github.com/ansumandas441/mathematical-discovery-engine/assets/knowledge_graph_3d_preview.gif)  
9,466 노드 · 13,504 엣지 · 360 증명 기법 · 2,593 정리 — 3D에서 전체 그래프 탐색

## 이 리포지토리가 하는 일 (What This Repository Does)

이 리포지토리는 **수학적 지식의 구조를 인코딩하고 이를 활용하여 새로운 정리를 자동으로 발견하는 것**을 시도합니다.

이는 단순한 관찰에서 시작됩니다. 수학의 모든 주요 정리는 알려진 기법을 알려진 사실에 적용함으로써 발견되었습니다. 갈루아(Galois)는 다항식 근에 대한 대칭성 축소(symmetry reduction)를 사용했습니다. 칸토어(Cantor)는 실수에 대한 대각선화(diagonalization)를 사용했습니다. 와일스(Wiles)는 모듈러 형식(modular forms)과 타원 곡선(elliptic curves) 사이의 연결고리를 사용했습니다. 이러한 기법들은 재사용 가능합니다. 같은 증명 방법이 수세기와 여러 하위 분야에 걸쳐 나타납니다.

이 프로젝트는 세 가지 일을 합니다:

1.  **지식 수집 (Collects the knowledge).** 피타고라스(Pythagoras)부터 페렐만(Perelman)까지 수학에서 가장 중요한 약 100개의 정리들을 다루며, 각 정리의 발견 맥락, 동기, 사고 과정 및 증명 아이디어를 담은 상세 보고서입니다. 이 보고서는 13개 장으로 구성되어 있습니다…
    
  
  
[GitHub에서 보기](https://github.com/ansumandas441/mathematical-discovery-engine)

## 다음 계획 (What's next)

현재 그래프는 약 100개의 핵심 정리를 다루고 있습니다. 명확한 다음 단계는 다음과 같습니다:

- **범위 확장 (Expand coverage)** — 매핑할 가치가 있는 정리가 수천 개 더 존재합니다.
- **기존 증명과의 검증 (Test against known proofs)** — 이 엔진이 인간이 발견한 증명들을 재발견할 수 있을까요?
- **진정으로 새로운 연결 고리 발견 (Find genuinely new connections)** — 아직 아무도 탐구하지 않은 분야 간의 가교를 찾는 것입니다.
- **커뮤니티 기여 (Community contributions)** — 특정 정리와 그 증명 기법을 알고 있다면, 이를 그래프에 추가하는 방법은 매우 간단합니다.

수학, AI 분야에서 일하시거나 단순히 이 주제에 흥미를 느끼신다면 — 여러분의 피드백을 환영합니다. 저장소(repo)에 Star를 누르거나, Issue를 생성하거나, 직접 연락해 주세요.

_Claude, NetworkX, 그리고 수학적 구조에 대한 건강하지 못한 집착으로 구축되었습니다._

AI 자동 생성 콘텐츠

본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
0

댓글

0