729진법 벡터형 4상균형3진 레이어 고도화
개요
crownyc v10.3 — 729진법 네이티브 벡터 연산 레이어 추가. 큐브(27 trits)를 4-digit₇₂₉ 벡터로 해석하여 digit-parallel SIMD-style 연산을 구현.
무엇을 했는지
1. 729진법 ALU 코어 (crownyc.c +619줄)
digit729_encode/decode— 6-trit ↔ 729-digit 변환cube729_pack/unpack— 큐브 ↔ 4-digit 벡터 변환vec729_add/sub/scale/dot/dist2/lerp/proj— 벡터 산술mat729_multiply/transpose/determinant— 행렬 연산phase_extract/merge3— 4상 분리/합성vec729_batch_op— 배치 연산 (스케일/부정/시프트/절대값)vec729_mem_add— 메모리 벡터 연산
2. ISA729+ opcode 820~845 (26개)
| 범위 | 카테고리 | 내용 |
|---|---|---|
| 820~826 | 벡터 | ADD, SUB, SCALE, DOT, DIST, LERP, PROJ |
| 827~829 | 행렬 | MUL, TRANS, DET |
| 830~832 | 4상 | SPLIT, MERGE, VEC |
| 833~839 | 큐브729 | ENCODE, DECODE, GET, SET, BATCH, TRIT6_PACK/UNPACK |
| 840~845 | 고급 | NORM, CLAMP, MAP, REDUCE, PHASE_WEIGHT, CONV |
3. 한선씨 컴파일러 (hanseonc_high.c +28줄)
26개 한글 키워드 추가: 벡터729더하기, 벡터729내적, 큐브729생성, 상분리, 상합성 등
4. 표준 라이브러리: libs/벡터729.한선
- 고수준 래퍼:
벡터생성,영벡터,단위벡터,채움벡터 - 산술:
벡터더하기단일,벡터빼기단일,벡터곱단일,벡터내적단일 - 유틸리티:
벡터729문자열,벡터영인가,벡터반전,벡터절대값,벡터최대/최소 - 변환:
정수에서729,에서정수729 - 4상:
T상추출,O상추출,A상추출,상결합 - 행렬:
행렬729단위생성,행렬729원소,행렬729설정 - 배치:
배치스칼라곱,배치부정,배치시프트,배치절대값
5. 피홀 최적화
- CUBE729_ENCODE + CUBE729_DECODE 왕복 제거
- TRIT6_PACK + TRIT6_UNPACK 왕복 제거
6. 데모: apps/삼진신경망729.한선
729진법 3진 신경 레이어 — 3값 활성(T/O/A), 4상 에너지 분석 포함.
관련 파일
/Users/ef/CrownyOS/crownyc/crownyc.c(14058줄, +619)/Users/ef/CrownyOS/crownyc/hanseonc_high.c(3590줄, +28)/Users/ef/CrownyOS/crownyc/libs/벡터729.한선(신규)/Users/ef/CrownyOS/crownyc/apps/삼진신경망729.한선(신규)/Users/ef/CrownyOS/crownyc/tests/벡터729테스트.한선(신규)/Users/ef/CrownyOS/crownyc/tests/벡터729라이브러리테스트.한선(신규)/Users/ef/CrownyOS/ISA729_FINAL.md(업데이트)
아키텍처
큐브(27 trits) = [d₀|d₁|d₂|d₃|메타]
6t 6t 6t 6t 3t
digit₇₂₉ 범위: -364 ~ +364 (3⁶/2)
4상: T(+1)=데이터, O(0)=명령, A(-1)=체이닝, U=구분자
벡터 연산 파이프라인:
입력 → cube729_unpack → digit-parallel op → cube729_pack → 출력
(모든 중간 연산이 트릿 네이티브, 2진 변환 없음)
잔여 이슈
벡터같은가(v1, v1)— 동일 큐브를 양쪽 인자에 넘길 때 VM 스택 메모리 접근 오류 (기존 VM 제약)- 벡터곱단일 오버플로 — digit₇₂₉ 범위 초과 시 modular wrap (의도적 설계 vs 클램핑 옵션)
- 중첩 반복문에서
__내장__(7, ...)주소 계산 시 간헐적 범위 오류
통계
- ISA729 총 opcode: 729 + 92(확장) = 821개
- 한선씨 내장함수: 222 + 26 = 248개
- 표준 라이브러리: 163 + 1 = 164개