yakmesh 2.8.2 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +637 -0
- package/CONTRIBUTING.md +42 -0
- package/Caddyfile +77 -0
- package/README.md +119 -29
- package/adapters/adapter-mlv-bible/README.md +124 -0
- package/adapters/adapter-mlv-bible/index.js +400 -0
- package/adapters/chat-mod-adapter.js +532 -0
- package/adapters/content-adapter.js +273 -0
- package/content/api.js +50 -41
- package/content/index.js +2 -2
- package/content/store.js +355 -173
- package/dashboard/index.html +19 -3
- package/database/replication.js +117 -37
- package/docs/CRYPTO-AGILITY.md +204 -0
- package/docs/MTLS-RESEARCH.md +367 -0
- package/docs/NAMCHE-SPEC.md +681 -0
- package/docs/PEERQUANTA-YAKMESH-INTEGRATION.md +407 -0
- package/docs/PRECISION-DISCLOSURE.md +96 -0
- package/docs/README.md +76 -0
- package/docs/ROADMAP-2.4.0.md +447 -0
- package/docs/ROADMAP-2.5.0.md +244 -0
- package/docs/SECURITY-AUDIT-REPORT.md +306 -0
- package/docs/SST-INTEGRATION.md +712 -0
- package/docs/STEADYWATCH-IMPLEMENTATION.md +303 -0
- package/docs/TERNARY-AUDIT-REPORT.md +247 -0
- package/docs/TME-FAQ.md +221 -0
- package/docs/WHITEPAPER.md +623 -0
- package/docs/adapters.html +1001 -0
- package/docs/advanced-systems.html +1045 -0
- package/docs/annex.html +1046 -0
- package/docs/api.html +970 -0
- package/docs/business/response-templates.md +160 -0
- package/docs/c2c.html +1225 -0
- package/docs/cli.html +1332 -0
- package/docs/configuration.html +1248 -0
- package/docs/darshan.html +1085 -0
- package/docs/dharma.html +966 -0
- package/docs/docs-bundle.html +1075 -0
- package/docs/docs.css +3120 -0
- package/docs/docs.js +556 -0
- package/docs/doko.html +969 -0
- package/docs/geo-proof.html +858 -0
- package/docs/getting-started.html +840 -0
- package/docs/gumba-tutorial.html +1144 -0
- package/docs/gumba.html +1098 -0
- package/docs/index.html +914 -0
- package/docs/jhilke.html +1312 -0
- package/docs/karma.html +1100 -0
- package/docs/katha.html +1037 -0
- package/docs/lama.html +978 -0
- package/docs/mandala.html +1067 -0
- package/docs/mani.html +964 -0
- package/docs/mantra.html +967 -0
- package/docs/mesh.html +1409 -0
- package/docs/nakpak.html +869 -0
- package/docs/namche.html +928 -0
- package/docs/nav-order.json +53 -0
- package/docs/prahari.html +1043 -0
- package/docs/prism-bash.min.js +1 -0
- package/docs/prism-javascript.min.js +1 -0
- package/docs/prism-json.min.js +1 -0
- package/docs/prism-tomorrow.min.css +1 -0
- package/docs/prism.min.js +1 -0
- package/docs/privacy.html +699 -0
- package/docs/quick-reference.html +1181 -0
- package/docs/sakshi.html +1402 -0
- package/docs/sandboxing.md +386 -0
- package/docs/seva.html +911 -0
- package/docs/sherpa.html +871 -0
- package/docs/studio.html +860 -0
- package/docs/stupa.html +995 -0
- package/docs/tailwind.min.css +2 -0
- package/docs/tattva.html +1332 -0
- package/docs/terms.html +686 -0
- package/docs/time-server-deployment.md +166 -0
- package/docs/time-sources.html +1392 -0
- package/docs/tivra.html +1127 -0
- package/docs/trademark-policy.html +686 -0
- package/docs/tribhuj.html +1183 -0
- package/docs/trust-security.html +1029 -0
- package/docs/tutorials/backup-recovery.html +654 -0
- package/docs/tutorials/dashboard.html +604 -0
- package/docs/tutorials/domain-setup.html +605 -0
- package/docs/tutorials/host-website.html +456 -0
- package/docs/tutorials/mesh-network.html +505 -0
- package/docs/tutorials/mobile-access.html +445 -0
- package/docs/tutorials/privacy.html +467 -0
- package/docs/tutorials/raspberry-pi.html +600 -0
- package/docs/tutorials/security-basics.html +539 -0
- package/docs/tutorials/share-files.html +431 -0
- package/docs/tutorials/troubleshooting.html +637 -0
- package/docs/tutorials/trust-karma.html +419 -0
- package/docs/tutorials/yak-protocol.html +456 -0
- package/docs/tutorials.html +1034 -0
- package/docs/vani.html +1270 -0
- package/docs/webserver.html +809 -0
- package/docs/yak-protocol.html +940 -0
- package/docs/yak-timeserver-design.md +475 -0
- package/docs/yakapp.html +1015 -0
- package/docs/ypc27.html +1069 -0
- package/docs/yurt.html +1344 -0
- package/embedded-docs/bundle.js +334 -74
- package/gossip/protocol.js +247 -27
- package/identity/key-resolver.js +262 -0
- package/identity/machine-seed.js +632 -0
- package/identity/node-key.js +669 -368
- package/identity/tribhuj-ratchet.js +506 -0
- package/knowledge-base.js +37 -8
- package/launcher/yakmesh.bat +62 -0
- package/launcher/yakmesh.sh +70 -0
- package/mesh/annex.js +462 -108
- package/mesh/beacon-broadcast.js +113 -1
- package/mesh/darshan.js +1718 -0
- package/mesh/gumba.js +1567 -0
- package/mesh/jhilke.js +651 -0
- package/mesh/katha.js +1012 -0
- package/mesh/nakpak-routing.js +8 -5
- package/mesh/network.js +724 -34
- package/mesh/pulse-sync.js +4 -1
- package/mesh/rate-limiter.js +127 -15
- package/mesh/seva.js +526 -0
- package/mesh/sherpa-discovery.js +89 -8
- package/mesh/sybil-defense.js +19 -5
- package/mesh/temporal-encoder.js +4 -3
- package/mesh/vani.js +1364 -0
- package/mesh/yurt.js +1340 -0
- package/models/entropy-sentinel.onnx +0 -0
- package/models/karma-trust.onnx +0 -0
- package/models/manifest.json +43 -0
- package/models/sakshi-anomaly.onnx +0 -0
- package/oracle/code-proof-protocol.js +7 -6
- package/oracle/codebase-lock.js +257 -28
- package/oracle/index.js +74 -15
- package/oracle/ma902-snmp.js +678 -0
- package/oracle/module-sealer.js +5 -3
- package/oracle/network-identity.js +16 -0
- package/oracle/packet-checksum.js +201 -0
- package/oracle/sst.js +579 -0
- package/oracle/ternary-144t.js +714 -0
- package/oracle/ternary-ml.js +481 -0
- package/oracle/time-api.js +239 -0
- package/oracle/time-source.js +137 -47
- package/oracle/validation-oracle-hardened.js +1111 -1071
- package/oracle/validation-oracle.js +4 -2
- package/oracle/ypc27.js +211 -0
- package/package.json +20 -3
- package/protocol/yak-handler.js +35 -9
- package/protocol/yak-protocol.js +28 -13
- package/reference/cpp/yakmesh_mceliece_shard.cpp +168 -0
- package/reference/cpp/yakmesh_ypc27.cpp +179 -0
- package/sbom.json +87 -0
- package/scripts/security-audit.mjs +264 -0
- package/scripts/update-docs-nav.js +194 -0
- package/scripts/update-docs-sidebar.cjs +164 -0
- package/security/crypto-config.js +4 -3
- package/security/dharma-moderation.js +517 -0
- package/security/doko-identity.js +193 -143
- package/security/domain-consensus.js +86 -85
- package/security/fs-hardening.js +620 -0
- package/security/hardware-attestation.js +5 -3
- package/security/hybrid-trust.js +227 -87
- package/security/karma-rate-limiter.js +692 -0
- package/security/khata-protocol.js +22 -21
- package/security/khata-trust-integration.js +277 -150
- package/security/memory-safety.js +635 -0
- package/security/mesh-auth.js +11 -10
- package/security/mesh-revocation.js +373 -5
- package/security/namche-gateway.js +298 -69
- package/security/sakshi.js +460 -3
- package/security/sangha.js +770 -0
- package/security/secure-config.js +473 -0
- package/security/silicon-parity.js +13 -10
- package/security/steadywatch.js +1142 -0
- package/security/strike-system.js +32 -3
- package/security/temporal-signing.js +488 -0
- package/security/trit-commitment.js +464 -0
- package/server/crypto/annex.js +247 -0
- package/server/darshan-api.js +343 -0
- package/server/index.js +3259 -362
- package/server/komm-api.js +668 -0
- package/utils/accel.js +2273 -0
- package/utils/ternary-id.js +79 -0
- package/utils/verify-worker.js +57 -0
- package/webserver/index.js +95 -5
- package/assets/yakmesh-logo.png +0 -0
- package/assets/yakmesh-logo.svg +0 -80
- package/assets/yakmesh-logo2.png +0 -0
- package/assets/yakmesh-logo2sm.png +0 -0
- package/assets/ymsm.png +0 -0
- package/website/assets/silhouettes/adapters.svg +0 -107
- package/website/assets/silhouettes/api-endpoints.svg +0 -115
- package/website/assets/silhouettes/atomic-clock.svg +0 -83
- package/website/assets/silhouettes/base-camp.svg +0 -81
- package/website/assets/silhouettes/bridge.svg +0 -69
- package/website/assets/silhouettes/docs-bundle.svg +0 -113
- package/website/assets/silhouettes/doko-basket.svg +0 -70
- package/website/assets/silhouettes/fortress.svg +0 -93
- package/website/assets/silhouettes/gateway.svg +0 -54
- package/website/assets/silhouettes/gears.svg +0 -93
- package/website/assets/silhouettes/globe-satellite.svg +0 -67
- package/website/assets/silhouettes/karma-wheel.svg +0 -137
- package/website/assets/silhouettes/lama-council.svg +0 -141
- package/website/assets/silhouettes/mandala-network.svg +0 -169
- package/website/assets/silhouettes/mani-stones.svg +0 -149
- package/website/assets/silhouettes/mantra-wheel.svg +0 -116
- package/website/assets/silhouettes/mesh-nodes.svg +0 -113
- package/website/assets/silhouettes/nakpak.svg +0 -56
- package/website/assets/silhouettes/peak-lightning.svg +0 -73
- package/website/assets/silhouettes/sherpa.svg +0 -69
- package/website/assets/silhouettes/stupa-tower.svg +0 -119
- package/website/assets/silhouettes/tattva-eye.svg +0 -78
- package/website/assets/silhouettes/terminal.svg +0 -74
- package/website/assets/silhouettes/webserver.svg +0 -145
- package/website/assets/silhouettes/yak.svg +0 -78
- package/website/assets/yakmesh-logo.png +0 -0
- package/website/assets/yakmesh-logo.webp +0 -0
- package/website/assets/yakmesh-logo128x140.webp +0 -0
- package/website/assets/yakmesh-logo2.png +0 -0
- package/website/assets/yakmesh-logo2.svg +0 -51
- package/website/assets/yakmesh-logo40x44.webp +0 -0
- package/website/assets/yakmesh.gif +0 -0
- package/website/assets/yakmesh.ico +0 -0
- package/website/assets/yakmesh.jpg +0 -0
- package/website/assets/yakmesh.pdf +0 -0
- package/website/assets/yakmesh.png +0 -0
- package/website/assets/yakmesh.svg +0 -70
- package/website/assets/yakmesh128.webp +0 -0
- package/website/assets/yakmesh32.png +0 -0
- package/website/assets/yakmesh32.svg +0 -65
- package/website/assets/yakmesh32o.ico +0 -2
- package/website/assets/yakmesh32o.svg +0 -65
- package/website/assets/yakmesh32o.svgz +0 -0
|
@@ -0,0 +1,1183 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en" data-theme="tribhuj">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8">
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
6
|
+
<link rel="icon" href="favicon.ico" sizes="32x32">
|
|
7
|
+
<link rel="icon" href="icon.svg" type="image/svg+xml">
|
|
8
|
+
<link rel="apple-touch-icon" href="apple-touch-icon.png">
|
|
9
|
+
<title>TRIBHUJ Ternary Math | YAKMESH Documentation</title>
|
|
10
|
+
<meta name="description" content="YAKMESH TRIBHUJ balanced ternary mathematics. Core ternary primitives for quantum-resistant operations.">
|
|
11
|
+
<link rel="stylesheet" href="tailwind.min.css">
|
|
12
|
+
<link rel="stylesheet" href="prism-tomorrow.min.css" media="print" onload="this.media='all'">
|
|
13
|
+
<noscript><link rel="stylesheet" href="prism-tomorrow.min.css"></noscript>
|
|
14
|
+
<link rel="stylesheet" href="docs.css">
|
|
15
|
+
<style>
|
|
16
|
+
.theme-accent { color: #f97316; }
|
|
17
|
+
.theme-accent-hover:hover { color: #fb923c; }
|
|
18
|
+
.theme-badge { background: rgba(249, 115, 22, 0.2); color: #fb923c; }
|
|
19
|
+
.theme-border { border-color: #f97316; }
|
|
20
|
+
.theme-callout { background: rgba(249, 115, 22, 0.1); border-color: #ea580c; }
|
|
21
|
+
.active-link { background: rgba(249, 115, 22, 0.2) !important; color: #fb923c !important; }
|
|
22
|
+
.module-card { background: linear-gradient(135deg, rgba(249, 115, 22, 0.15), rgba(234, 88, 12, 0.1)); border-left: 4px solid #f97316; }
|
|
23
|
+
.trit-card { background: linear-gradient(135deg, rgba(168, 85, 247, 0.2), rgba(139, 92, 246, 0.1)); border-left: 4px solid #a855f7; }
|
|
24
|
+
.logic-card { background: linear-gradient(135deg, rgba(34, 197, 94, 0.2), rgba(22, 163, 74, 0.1)); border-left: 4px solid #22c55e; }
|
|
25
|
+
.philosophy-quote { font-style: italic; background: linear-gradient(135deg, rgba(249, 115, 22, 0.2), rgba(234, 88, 12, 0.1)); border-left: 4px solid #f97316; }
|
|
26
|
+
.ops-table { width: 100%; border-collapse: collapse; }
|
|
27
|
+
.ops-table th, .ops-table td { padding: 0.5rem; text-align: center; border: 1px solid #2e4c43; }
|
|
28
|
+
.ops-table th { color: #f97316; font-weight: 600; background: rgba(249, 115, 22, 0.1); }
|
|
29
|
+
.ops-table code { background: #1f332d; padding: 0.25rem 0.5rem; border-radius: 4px; }
|
|
30
|
+
.trit-display { font-family: monospace; font-size: 1.25rem; font-weight: bold; }
|
|
31
|
+
.trit-neg { color: #ef4444; }
|
|
32
|
+
.trit-zero { color: #6b7280; }
|
|
33
|
+
.trit-pos { color: #22c55e; }
|
|
34
|
+
.sanskrit-term { font-style: italic; color: #fb923c; }
|
|
35
|
+
</style>
|
|
36
|
+
|
|
37
|
+
<!-- Open Graph -->
|
|
38
|
+
<meta property="og:type" content="article">
|
|
39
|
+
<meta property="og:site_name" content="Yakmesh Documentation">
|
|
40
|
+
<meta property="og:title" content="TRIBHUJ — Yakmesh">
|
|
41
|
+
<meta property="og:description" content="TRIBHUJ triangle verification — balanced ternary mathematics for cryptographic ratchets.">
|
|
42
|
+
</head>
|
|
43
|
+
<body class="bg-mountain-900 text-white min-h-screen">
|
|
44
|
+
<!-- YAKMESH-ICON-SPRITE-START -->
|
|
45
|
+
<svg xmlns="http://www.w3.org/2000/svg" style="display:none">
|
|
46
|
+
<!--
|
|
47
|
+
Yakmesh Docs Icon Sprite Sheet
|
|
48
|
+
24×24 viewBox — stroke/fill set via .doc-icon CSS
|
|
49
|
+
Usage: <svg class="doc-icon"><use href="#icon-name"/></svg>
|
|
50
|
+
-->
|
|
51
|
+
|
|
52
|
+
<!-- ═══ GUIDES ═══ -->
|
|
53
|
+
|
|
54
|
+
<symbol id="icon-home" viewBox="0 0 24 24">
|
|
55
|
+
<path d="M3 9.5L12 3l9 6.5V20a1 1 0 01-1 1H4a1 1 0 01-1-1V9.5z"/>
|
|
56
|
+
<polyline points="9 22 9 12 15 12 15 22"/>
|
|
57
|
+
</symbol>
|
|
58
|
+
|
|
59
|
+
<symbol id="icon-rocket" viewBox="0 0 24 24">
|
|
60
|
+
<path d="M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 00-2.91-.09z"/>
|
|
61
|
+
<path d="M12 15l-3-3a22 22 0 012-3.95A12.88 12.88 0 0122 2c0 2.72-.78 7.5-6 11a22.35 22.35 0 01-4 2z"/>
|
|
62
|
+
<path d="M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0"/>
|
|
63
|
+
<path d="M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5"/>
|
|
64
|
+
</symbol>
|
|
65
|
+
|
|
66
|
+
<symbol id="icon-book" viewBox="0 0 24 24">
|
|
67
|
+
<path d="M4 19.5A2.5 2.5 0 016.5 17H20"/>
|
|
68
|
+
<path d="M6.5 2H20v20H6.5A2.5 2.5 0 014 19.5v-15A2.5 2.5 0 016.5 2z"/>
|
|
69
|
+
<line x1="8" y1="7" x2="16" y2="7"/>
|
|
70
|
+
<line x1="8" y1="11" x2="13" y2="11"/>
|
|
71
|
+
</symbol>
|
|
72
|
+
|
|
73
|
+
<!-- ═══ PROTOCOL STACK ═══ -->
|
|
74
|
+
|
|
75
|
+
<!-- YAK:// — Content addressing (yak horns) -->
|
|
76
|
+
<symbol id="icon-yak" viewBox="0 0 24 24">
|
|
77
|
+
<path d="M4 4c1 3 3 5 5 6"/>
|
|
78
|
+
<path d="M20 4c-1 3-3 5-5 6"/>
|
|
79
|
+
<circle cx="12" cy="14" r="5"/>
|
|
80
|
+
<circle cx="10" cy="13" r="0.5" fill="currentColor"/>
|
|
81
|
+
<circle cx="14" cy="13" r="0.5" fill="currentColor"/>
|
|
82
|
+
<path d="M10 16c1 1 3 1 4 0"/>
|
|
83
|
+
</symbol>
|
|
84
|
+
|
|
85
|
+
<!-- ANNEX — Encrypted bridge -->
|
|
86
|
+
<symbol id="icon-annex" viewBox="0 0 24 24">
|
|
87
|
+
<path d="M4 18h3a4 4 0 004-4V8"/>
|
|
88
|
+
<path d="M20 18h-3a4 4 0 01-4-4V8"/>
|
|
89
|
+
<circle cx="7" cy="6" r="2"/>
|
|
90
|
+
<circle cx="17" cy="6" r="2"/>
|
|
91
|
+
<line x1="7" y1="8" x2="7" y2="18"/>
|
|
92
|
+
<line x1="17" y1="8" x2="17" y2="18"/>
|
|
93
|
+
</symbol>
|
|
94
|
+
|
|
95
|
+
<!-- JHILKE — Cricket / steganographic key lifecycle -->
|
|
96
|
+
<symbol id="icon-jhilke" viewBox="0 0 24 24">
|
|
97
|
+
<ellipse cx="12" cy="14" rx="4" ry="6"/>
|
|
98
|
+
<path d="M8 10c-2-3-4-6-3-8"/>
|
|
99
|
+
<path d="M16 10c2-3 4-6 3-8"/>
|
|
100
|
+
<line x1="10" y1="20" x2="8" y2="23"/>
|
|
101
|
+
<line x1="14" y1="20" x2="16" y2="23"/>
|
|
102
|
+
<path d="M9 12l-4 2"/>
|
|
103
|
+
<path d="M15 12l4 2"/>
|
|
104
|
+
</symbol>
|
|
105
|
+
|
|
106
|
+
<!-- NAKPAK — Onion layers / backpack -->
|
|
107
|
+
<symbol id="icon-nakpak" viewBox="0 0 24 24">
|
|
108
|
+
<circle cx="12" cy="12" r="10" opacity="0.3"/>
|
|
109
|
+
<circle cx="12" cy="12" r="7" opacity="0.5"/>
|
|
110
|
+
<circle cx="12" cy="12" r="4" opacity="0.8"/>
|
|
111
|
+
<circle cx="12" cy="12" r="1.5" fill="currentColor"/>
|
|
112
|
+
</symbol>
|
|
113
|
+
|
|
114
|
+
<!-- NAMCHE — Gateway door -->
|
|
115
|
+
<symbol id="icon-namche" viewBox="0 0 24 24">
|
|
116
|
+
<rect x="3" y="3" width="18" height="18" rx="2"/>
|
|
117
|
+
<path d="M9 3v18"/>
|
|
118
|
+
<path d="M15 3v18"/>
|
|
119
|
+
<line x1="3" y1="8" x2="9" y2="8"/>
|
|
120
|
+
<line x1="15" y1="8" x2="21" y2="8"/>
|
|
121
|
+
<circle cx="12" cy="14" r="1" fill="currentColor"/>
|
|
122
|
+
</symbol>
|
|
123
|
+
|
|
124
|
+
<!-- DOKO — Basket / certificate -->
|
|
125
|
+
<symbol id="icon-doko" viewBox="0 0 24 24">
|
|
126
|
+
<path d="M6 8l-2 12h16l-2-12"/>
|
|
127
|
+
<path d="M6 8c0-3 2.7-5 6-5s6 2 6 5"/>
|
|
128
|
+
<line x1="8" y1="10" x2="10" y2="18"/>
|
|
129
|
+
<line x1="16" y1="10" x2="14" y2="18"/>
|
|
130
|
+
<line x1="12" y1="10" x2="12" y2="18"/>
|
|
131
|
+
</symbol>
|
|
132
|
+
|
|
133
|
+
<!-- SHERPA — Mountain climber -->
|
|
134
|
+
<symbol id="icon-sherpa" viewBox="0 0 24 24">
|
|
135
|
+
<path d="M4 20L10 6l3 6 3-4 4 12"/>
|
|
136
|
+
<line x1="4" y1="20" x2="20" y2="20"/>
|
|
137
|
+
<circle cx="13" cy="4" r="1.5"/>
|
|
138
|
+
</symbol>
|
|
139
|
+
|
|
140
|
+
<!-- MANDALA — Network topology web -->
|
|
141
|
+
<symbol id="icon-mandala" viewBox="0 0 24 24">
|
|
142
|
+
<circle cx="12" cy="12" r="9"/>
|
|
143
|
+
<circle cx="12" cy="12" r="4.5"/>
|
|
144
|
+
<line x1="12" y1="3" x2="12" y2="21"/>
|
|
145
|
+
<line x1="3" y1="12" x2="21" y2="12"/>
|
|
146
|
+
<line x1="5.6" y1="5.6" x2="18.4" y2="18.4"/>
|
|
147
|
+
<line x1="18.4" y1="5.6" x2="5.6" y2="18.4"/>
|
|
148
|
+
</symbol>
|
|
149
|
+
|
|
150
|
+
<!-- MANTRA — Gossip / prayer wheel -->
|
|
151
|
+
<symbol id="icon-mantra" viewBox="0 0 24 24">
|
|
152
|
+
<circle cx="12" cy="10" r="7"/>
|
|
153
|
+
<path d="M12 3v14"/>
|
|
154
|
+
<path d="M8 7c2 1.5 6 1.5 8 0"/>
|
|
155
|
+
<path d="M8 13c2-1.5 6-1.5 8 0"/>
|
|
156
|
+
<line x1="12" y1="17" x2="12" y2="22"/>
|
|
157
|
+
<line x1="9" y1="22" x2="15" y2="22"/>
|
|
158
|
+
</symbol>
|
|
159
|
+
|
|
160
|
+
<!-- GUMBA — Temple / access control -->
|
|
161
|
+
<symbol id="icon-gumba" viewBox="0 0 24 24">
|
|
162
|
+
<path d="M12 2L3 9h18z"/>
|
|
163
|
+
<line x1="5" y1="9" x2="5" y2="19"/>
|
|
164
|
+
<line x1="9" y1="9" x2="9" y2="19"/>
|
|
165
|
+
<line x1="15" y1="9" x2="15" y2="19"/>
|
|
166
|
+
<line x1="19" y1="9" x2="19" y2="19"/>
|
|
167
|
+
<line x1="3" y1="19" x2="21" y2="19"/>
|
|
168
|
+
<line x1="3" y1="21" x2="21" y2="21"/>
|
|
169
|
+
</symbol>
|
|
170
|
+
|
|
171
|
+
<!-- YURT — Camp / room -->
|
|
172
|
+
<symbol id="icon-yurt" viewBox="0 0 24 24">
|
|
173
|
+
<path d="M3 20L12 4l9 16"/>
|
|
174
|
+
<line x1="3" y1="20" x2="21" y2="20"/>
|
|
175
|
+
<path d="M10 20v-5a2 2 0 014 0v5"/>
|
|
176
|
+
<path d="M6 14h12"/>
|
|
177
|
+
</symbol>
|
|
178
|
+
|
|
179
|
+
<!-- KATHA — Chat / story scroll -->
|
|
180
|
+
<symbol id="icon-katha" viewBox="0 0 24 24">
|
|
181
|
+
<path d="M21 15a2 2 0 01-2 2H7l-4 4V5a2 2 0 012-2h14a2 2 0 012 2z"/>
|
|
182
|
+
<line x1="8" y1="8" x2="16" y2="8"/>
|
|
183
|
+
<line x1="8" y1="12" x2="13" y2="12"/>
|
|
184
|
+
</symbol>
|
|
185
|
+
|
|
186
|
+
<!-- VANI — Voice / microphone -->
|
|
187
|
+
<symbol id="icon-vani" viewBox="0 0 24 24">
|
|
188
|
+
<rect x="9" y="2" width="6" height="11" rx="3"/>
|
|
189
|
+
<path d="M5 10a7 7 0 0014 0"/>
|
|
190
|
+
<line x1="12" y1="17" x2="12" y2="22"/>
|
|
191
|
+
<line x1="8" y1="22" x2="16" y2="22"/>
|
|
192
|
+
</symbol>
|
|
193
|
+
|
|
194
|
+
<!-- DARSHAN — Eye / viewing -->
|
|
195
|
+
<symbol id="icon-darshan" viewBox="0 0 24 24">
|
|
196
|
+
<path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8S1 12 1 12z"/>
|
|
197
|
+
<circle cx="12" cy="12" r="3"/>
|
|
198
|
+
</symbol>
|
|
199
|
+
|
|
200
|
+
<!-- STUPA — Tower / distributed storage -->
|
|
201
|
+
<symbol id="icon-stupa" viewBox="0 0 24 24">
|
|
202
|
+
<line x1="12" y1="2" x2="12" y2="5"/>
|
|
203
|
+
<path d="M10 5h4l1 3H9z"/>
|
|
204
|
+
<ellipse cx="12" cy="11" rx="5" ry="3"/>
|
|
205
|
+
<ellipse cx="12" cy="15" rx="6" ry="3"/>
|
|
206
|
+
<ellipse cx="12" cy="19" rx="7" ry="3"/>
|
|
207
|
+
</symbol>
|
|
208
|
+
|
|
209
|
+
<!-- LAMA — Crystal ball / consensus -->
|
|
210
|
+
<symbol id="icon-lama" viewBox="0 0 24 24">
|
|
211
|
+
<circle cx="12" cy="10" r="7"/>
|
|
212
|
+
<path d="M12 3c-1.5 2-2 5 0 7s4.5 2 6 0"/>
|
|
213
|
+
<path d="M7 19h10"/>
|
|
214
|
+
<path d="M9 22h6"/>
|
|
215
|
+
<line x1="9" y1="17" x2="9" y2="19"/>
|
|
216
|
+
<line x1="15" y1="17" x2="15" y2="19"/>
|
|
217
|
+
</symbol>
|
|
218
|
+
|
|
219
|
+
<!-- MANI — Prayer stone / time sync -->
|
|
220
|
+
<symbol id="icon-mani" viewBox="0 0 24 24">
|
|
221
|
+
<circle cx="12" cy="12" r="9"/>
|
|
222
|
+
<polyline points="12 6 12 12 16 14"/>
|
|
223
|
+
<circle cx="12" cy="12" r="1" fill="currentColor"/>
|
|
224
|
+
</symbol>
|
|
225
|
+
|
|
226
|
+
<!-- KARMA — Yin-yang / reputation -->
|
|
227
|
+
<symbol id="icon-karma" viewBox="0 0 24 24">
|
|
228
|
+
<circle cx="12" cy="12" r="9"/>
|
|
229
|
+
<path d="M12 3a4.5 4.5 0 010 9 4.5 4.5 0 000 9"/>
|
|
230
|
+
<circle cx="12" cy="7.5" r="1.5" fill="currentColor"/>
|
|
231
|
+
<circle cx="12" cy="16.5" r="1.5"/>
|
|
232
|
+
</symbol>
|
|
233
|
+
|
|
234
|
+
<!-- TATTVA — Quantum elements / atom -->
|
|
235
|
+
<symbol id="icon-tattva" viewBox="0 0 24 24">
|
|
236
|
+
<circle cx="12" cy="12" r="2.5" fill="currentColor" stroke="none"/>
|
|
237
|
+
<ellipse cx="12" cy="12" rx="10" ry="4"/>
|
|
238
|
+
<ellipse cx="12" cy="12" rx="10" ry="4" transform="rotate(60 12 12)"/>
|
|
239
|
+
<ellipse cx="12" cy="12" rx="10" ry="4" transform="rotate(120 12 12)"/>
|
|
240
|
+
</symbol>
|
|
241
|
+
|
|
242
|
+
<!-- TRIBHUJ — Triangle / balanced ternary -->
|
|
243
|
+
<symbol id="icon-tribhuj" viewBox="0 0 24 24">
|
|
244
|
+
<polygon points="12,3 21,20 3,20"/>
|
|
245
|
+
<line x1="12" y1="3" x2="12" y2="20"/>
|
|
246
|
+
<line x1="7.5" y1="11.5" x2="16.5" y2="11.5"/>
|
|
247
|
+
<circle cx="12" cy="14" r="1" fill="currentColor"/>
|
|
248
|
+
</symbol>
|
|
249
|
+
|
|
250
|
+
<!-- YPC-27 — Lock / cipher -->
|
|
251
|
+
<symbol id="icon-ypc27" viewBox="0 0 24 24">
|
|
252
|
+
<rect x="5" y="11" width="14" height="10" rx="2"/>
|
|
253
|
+
<path d="M8 11V7a4 4 0 118 0v4"/>
|
|
254
|
+
<circle cx="12" cy="16" r="1" fill="currentColor"/>
|
|
255
|
+
<line x1="12" y1="17" x2="12" y2="19"/>
|
|
256
|
+
</symbol>
|
|
257
|
+
|
|
258
|
+
<!-- SAKSHI — Witness / aperture eye -->
|
|
259
|
+
<symbol id="icon-sakshi" viewBox="0 0 24 24">
|
|
260
|
+
<circle cx="12" cy="12" r="9"/>
|
|
261
|
+
<path d="M12 3l3 9-3 9"/>
|
|
262
|
+
<path d="M12 3l-3 9 3 9"/>
|
|
263
|
+
<circle cx="12" cy="12" r="2.5"/>
|
|
264
|
+
<circle cx="12" cy="12" r="0.8" fill="currentColor"/>
|
|
265
|
+
</symbol>
|
|
266
|
+
|
|
267
|
+
<!-- PRAMAAN — Globe / geographic proof -->
|
|
268
|
+
<symbol id="icon-pramaan" viewBox="0 0 24 24">
|
|
269
|
+
<circle cx="12" cy="12" r="9"/>
|
|
270
|
+
<ellipse cx="12" cy="12" rx="4" ry="9"/>
|
|
271
|
+
<line x1="3" y1="9" x2="21" y2="9"/>
|
|
272
|
+
<line x1="3" y1="15" x2="21" y2="15"/>
|
|
273
|
+
<path d="M18 4l-2 2 1 3"/>
|
|
274
|
+
<path d="M6 18l2-1 3 1"/>
|
|
275
|
+
</symbol>
|
|
276
|
+
|
|
277
|
+
<!-- SURAKSHA — Shield / security -->
|
|
278
|
+
<symbol id="icon-suraksha" viewBox="0 0 24 24">
|
|
279
|
+
<path d="M12 2l8 4v6c0 5.5-3.8 10.7-8 12-4.2-1.3-8-6.5-8-12V6z"/>
|
|
280
|
+
<polyline points="9 12 11 14 15 10"/>
|
|
281
|
+
</symbol>
|
|
282
|
+
|
|
283
|
+
<!-- TIVRA — Lightning bolt / acceleration -->
|
|
284
|
+
<symbol id="icon-tivra" viewBox="0 0 24 24">
|
|
285
|
+
<polygon points="13,2 3,14 12,14 11,22 21,10 12,10"/>
|
|
286
|
+
</symbol>
|
|
287
|
+
|
|
288
|
+
<!-- PRAHARI — Satellite / sentinel -->
|
|
289
|
+
<symbol id="icon-prahari" viewBox="0 0 24 24">
|
|
290
|
+
<rect x="9" y="9" width="6" height="6" rx="1" transform="rotate(45 12 12)"/>
|
|
291
|
+
<line x1="12" y1="5" x2="12" y2="2"/>
|
|
292
|
+
<line x1="19" y1="12" x2="22" y2="12"/>
|
|
293
|
+
<line x1="12" y1="19" x2="12" y2="22"/>
|
|
294
|
+
<line x1="5" y1="12" x2="2" y2="12"/>
|
|
295
|
+
<path d="M7 7L5 5"/>
|
|
296
|
+
<path d="M17 7l2-2"/>
|
|
297
|
+
</symbol>
|
|
298
|
+
|
|
299
|
+
<!-- DHARMA — Balance scale / content moderation -->
|
|
300
|
+
<symbol id="icon-dharma" viewBox="0 0 24 24">
|
|
301
|
+
<line x1="12" y1="3" x2="12" y2="21"/>
|
|
302
|
+
<line x1="4" y1="7" x2="20" y2="7"/>
|
|
303
|
+
<path d="M4 7l2 7h0a3 3 0 006 0h0l2-7"/>
|
|
304
|
+
<path d="M14 7l2 7h0a3 3 0 006 0h0l2-7"/>
|
|
305
|
+
<line x1="10" y1="21" x2="14" y2="21"/>
|
|
306
|
+
</symbol>
|
|
307
|
+
|
|
308
|
+
<!-- SEVA — Helping hands / NPU sharing -->
|
|
309
|
+
<symbol id="icon-seva" viewBox="0 0 24 24">
|
|
310
|
+
<path d="M12 22c-4 0-8-2-8-6 0-2 1-3 3-4l5-3 5 3c2 1 3 2 3 4 0 4-4 6-8 6z"/>
|
|
311
|
+
<path d="M12 11V5"/>
|
|
312
|
+
<path d="M9 8l3-3 3 3"/>
|
|
313
|
+
<circle cx="12" cy="16" r="2"/>
|
|
314
|
+
</symbol>
|
|
315
|
+
|
|
316
|
+
<!-- ═══ APPLICATIONS ═══ -->
|
|
317
|
+
|
|
318
|
+
<!-- YakApp — Messenger -->
|
|
319
|
+
<symbol id="icon-yakapp" viewBox="0 0 24 24">
|
|
320
|
+
<path d="M21 11.5a8.38 8.38 0 01-.9 3.8 8.5 8.5 0 01-7.6 4.7 8.38 8.38 0 01-3.8-.9L3 21l1.9-5.7a8.38 8.38 0 01-.9-3.8 8.5 8.5 0 014.7-7.6 8.38 8.38 0 013.8-.9h.5a8.48 8.48 0 018 8v.5z"/>
|
|
321
|
+
</symbol>
|
|
322
|
+
|
|
323
|
+
<!-- C2C — Core to Cosmos -->
|
|
324
|
+
<symbol id="icon-c2c" viewBox="0 0 24 24">
|
|
325
|
+
<circle cx="12" cy="12" r="3"/>
|
|
326
|
+
<circle cx="12" cy="12" r="9"/>
|
|
327
|
+
<path d="M12 3v3"/>
|
|
328
|
+
<path d="M12 18v3"/>
|
|
329
|
+
<path d="M3 12h3"/>
|
|
330
|
+
<path d="M18 12h3"/>
|
|
331
|
+
</symbol>
|
|
332
|
+
|
|
333
|
+
<!-- Studio — Creative suite -->
|
|
334
|
+
<symbol id="icon-studio" viewBox="0 0 24 24">
|
|
335
|
+
<circle cx="13.5" cy="6.5" r="2.5"/>
|
|
336
|
+
<path d="M6 21l4-10 3 5 4-7 4 12"/>
|
|
337
|
+
<rect x="2" y="2" width="20" height="20" rx="2"/>
|
|
338
|
+
</symbol>
|
|
339
|
+
|
|
340
|
+
|
|
341
|
+
<!-- ═══ REFERENCE ═══ -->
|
|
342
|
+
|
|
343
|
+
<!-- Quick Reference — Clipboard -->
|
|
344
|
+
<symbol id="icon-quickref" viewBox="0 0 24 24">
|
|
345
|
+
<path d="M16 4h2a2 2 0 012 2v14a2 2 0 01-2 2H6a2 2 0 01-2-2V6a2 2 0 012-2h2"/>
|
|
346
|
+
<rect x="8" y="2" width="8" height="4" rx="1"/>
|
|
347
|
+
<line x1="8" y1="10" x2="16" y2="10"/>
|
|
348
|
+
<line x1="8" y1="14" x2="16" y2="14"/>
|
|
349
|
+
<line x1="8" y1="18" x2="12" y2="18"/>
|
|
350
|
+
</symbol>
|
|
351
|
+
|
|
352
|
+
<!-- GRANTH — Docs bundle -->
|
|
353
|
+
<symbol id="icon-granth" viewBox="0 0 24 24">
|
|
354
|
+
<path d="M4 19.5A2.5 2.5 0 016.5 17H20"/>
|
|
355
|
+
<path d="M6.5 2H20v20H6.5A2.5 2.5 0 014 19.5v-15A2.5 2.5 0 016.5 2z"/>
|
|
356
|
+
<path d="M8 7h8"/>
|
|
357
|
+
<path d="M8 11h5"/>
|
|
358
|
+
<path d="M8 15h3"/>
|
|
359
|
+
</symbol>
|
|
360
|
+
|
|
361
|
+
<!-- API — Signal tower -->
|
|
362
|
+
<symbol id="icon-api" viewBox="0 0 24 24">
|
|
363
|
+
<line x1="12" y1="10" x2="12" y2="22"/>
|
|
364
|
+
<path d="M8 6a6 6 0 018 0"/>
|
|
365
|
+
<path d="M5 3a10 10 0 0114 0"/>
|
|
366
|
+
<circle cx="12" cy="10" r="2"/>
|
|
367
|
+
</symbol>
|
|
368
|
+
|
|
369
|
+
<!-- Adapters — Plug connector -->
|
|
370
|
+
<symbol id="icon-adapters" viewBox="0 0 24 24">
|
|
371
|
+
<path d="M6 3v4"/>
|
|
372
|
+
<path d="M10 3v4"/>
|
|
373
|
+
<path d="M4 7h8v3a4 4 0 01-8 0V7z"/>
|
|
374
|
+
<line x1="8" y1="14" x2="8" y2="17"/>
|
|
375
|
+
<path d="M14 10h4v3a2 2 0 01-4 0v-3z"/>
|
|
376
|
+
<line x1="16" y1="7" x2="16" y2="10"/>
|
|
377
|
+
<line x1="16" y1="13" x2="16" y2="17"/>
|
|
378
|
+
<line x1="8" y1="17" x2="16" y2="17"/>
|
|
379
|
+
<line x1="12" y1="17" x2="12" y2="21"/>
|
|
380
|
+
</symbol>
|
|
381
|
+
|
|
382
|
+
<!-- ═══ EXTRA (pages outside nav-order) ═══ -->
|
|
383
|
+
|
|
384
|
+
<!-- Terminal / CLI -->
|
|
385
|
+
<symbol id="icon-terminal" viewBox="0 0 24 24">
|
|
386
|
+
<rect x="2" y="3" width="20" height="18" rx="2"/>
|
|
387
|
+
<polyline points="7 9 10 12 7 15"/>
|
|
388
|
+
<line x1="13" y1="15" x2="17" y2="15"/>
|
|
389
|
+
</symbol>
|
|
390
|
+
|
|
391
|
+
<!-- Gear / Configuration -->
|
|
392
|
+
<symbol id="icon-gear" viewBox="0 0 24 24">
|
|
393
|
+
<circle cx="12" cy="12" r="3"/>
|
|
394
|
+
<path d="M19.4 15a1.65 1.65 0 00.33 1.82l.06.06a2 2 0 01-2.83 2.83l-.06-.06a1.65 1.65 0 00-1.82-.33 1.65 1.65 0 00-1 1.51V21a2 2 0 01-4 0v-.09A1.65 1.65 0 009 19.4a1.65 1.65 0 00-1.82.33l-.06.06a2 2 0 01-2.83-2.83l.06-.06A1.65 1.65 0 004.68 15a1.65 1.65 0 00-1.51-1H3a2 2 0 010-4h.09A1.65 1.65 0 004.6 9a1.65 1.65 0 00-.33-1.82l-.06-.06a2 2 0 012.83-2.83l.06.06A1.65 1.65 0 009 4.68a1.65 1.65 0 001-1.51V3a2 2 0 014 0v.09a1.65 1.65 0 001 1.51 1.65 1.65 0 001.82-.33l.06-.06a2 2 0 012.83 2.83l-.06.06A1.65 1.65 0 0019.4 9a1.65 1.65 0 001.51 1H21a2 2 0 010 4h-.09a1.65 1.65 0 00-1.51 1z"/>
|
|
395
|
+
</symbol>
|
|
396
|
+
|
|
397
|
+
<!-- Server / Web hosting -->
|
|
398
|
+
<symbol id="icon-server" viewBox="0 0 24 24">
|
|
399
|
+
<rect x="2" y="2" width="20" height="8" rx="2"/>
|
|
400
|
+
<rect x="2" y="14" width="20" height="8" rx="2"/>
|
|
401
|
+
<line x1="6" y1="6" x2="6.01" y2="6"/>
|
|
402
|
+
<line x1="6" y1="18" x2="6.01" y2="18"/>
|
|
403
|
+
</symbol>
|
|
404
|
+
|
|
405
|
+
<!-- ═══ CHROME / UI ═══ -->
|
|
406
|
+
|
|
407
|
+
<!-- Mountain peak — logo icon (replaces 🏔️) -->
|
|
408
|
+
<symbol id="icon-mountain" viewBox="0 0 24 24">
|
|
409
|
+
<path d="M8 21l4.5-9 3 5.5L19 12l3 9H2l6-9z"/>
|
|
410
|
+
<path d="M12 12l1.5-3L16 14"/>
|
|
411
|
+
</symbol>
|
|
412
|
+
|
|
413
|
+
<!-- Dashboard / bar chart (replaces 📊) -->
|
|
414
|
+
<symbol id="icon-dashboard" viewBox="0 0 24 24">
|
|
415
|
+
<line x1="18" y1="20" x2="18" y2="10"/>
|
|
416
|
+
<line x1="12" y1="20" x2="12" y2="4"/>
|
|
417
|
+
<line x1="6" y1="20" x2="6" y2="14"/>
|
|
418
|
+
<rect x="2" y="2" width="20" height="20" rx="2" stroke-opacity="0.4"/>
|
|
419
|
+
</symbol>
|
|
420
|
+
|
|
421
|
+
<!-- ═══ GENERIC / CONTENT ICONS ═══ -->
|
|
422
|
+
|
|
423
|
+
<!-- Lock / encrypted (replaces 🔐) -->
|
|
424
|
+
<symbol id="icon-lock" viewBox="0 0 24 24">
|
|
425
|
+
<rect x="3" y="11" width="18" height="11" rx="2"/>
|
|
426
|
+
<path d="M7 11V7a5 5 0 0110 0v4"/>
|
|
427
|
+
</symbol>
|
|
428
|
+
|
|
429
|
+
<!-- Signal / broadcast (replaces 📡) -->
|
|
430
|
+
<symbol id="icon-signal" viewBox="0 0 24 24">
|
|
431
|
+
<path d="M2 12a10 10 0 0118 0"/>
|
|
432
|
+
<path d="M5 12a7 7 0 0112 0"/>
|
|
433
|
+
<path d="M8 12a4 4 0 016 0"/>
|
|
434
|
+
<circle cx="11" cy="12" r="1"/>
|
|
435
|
+
</symbol>
|
|
436
|
+
|
|
437
|
+
<!-- Link / chain (replaces 🔗) -->
|
|
438
|
+
<symbol id="icon-link" viewBox="0 0 24 24">
|
|
439
|
+
<path d="M10 13a5 5 0 007.54.54l3-3a5 5 0 00-7.07-7.07l-1.72 1.71"/>
|
|
440
|
+
<path d="M14 11a5 5 0 00-7.54-.54l-3 3a5 5 0 007.07 7.07l1.71-1.71"/>
|
|
441
|
+
</symbol>
|
|
442
|
+
|
|
443
|
+
<!-- Globe / network (replaces 🌐) -->
|
|
444
|
+
<symbol id="icon-globe" viewBox="0 0 24 24">
|
|
445
|
+
<circle cx="12" cy="12" r="10"/>
|
|
446
|
+
<line x1="2" y1="12" x2="22" y2="12"/>
|
|
447
|
+
<path d="M12 2a15.3 15.3 0 014 10 15.3 15.3 0 01-4 10 15.3 15.3 0 01-4-10 15.3 15.3 0 014-10z"/>
|
|
448
|
+
</symbol>
|
|
449
|
+
|
|
450
|
+
<!-- Sync / refresh (replaces 🔄) -->
|
|
451
|
+
<symbol id="icon-sync" viewBox="0 0 24 24">
|
|
452
|
+
<polyline points="23 4 23 10 17 10"/>
|
|
453
|
+
<polyline points="1 20 1 14 7 14"/>
|
|
454
|
+
<path d="M3.51 9a9 9 0 0114.85-3.36L23 10M1 14l4.64 4.36A9 9 0 0020.49 15"/>
|
|
455
|
+
</symbol>
|
|
456
|
+
|
|
457
|
+
<!-- Users / group (replaces 👥) -->
|
|
458
|
+
<symbol id="icon-users" viewBox="0 0 24 24">
|
|
459
|
+
<path d="M17 21v-2a4 4 0 00-4-4H5a4 4 0 00-4 4v2"/>
|
|
460
|
+
<circle cx="9" cy="7" r="4"/>
|
|
461
|
+
<path d="M23 21v-2a4 4 0 00-3-3.87"/>
|
|
462
|
+
<path d="M16 3.13a4 4 0 010 7.75"/>
|
|
463
|
+
</symbol>
|
|
464
|
+
|
|
465
|
+
<!-- Shield / protection (replaces 🛡) -->
|
|
466
|
+
<symbol id="icon-shield" viewBox="0 0 24 24">
|
|
467
|
+
<path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"/>
|
|
468
|
+
</symbol>
|
|
469
|
+
|
|
470
|
+
<!-- Heartbeat / pulse (replaces 💓) -->
|
|
471
|
+
<symbol id="icon-heartbeat" viewBox="0 0 24 24">
|
|
472
|
+
<path d="M3 12h4l3-9 4 18 3-9h4"/>
|
|
473
|
+
</symbol>
|
|
474
|
+
|
|
475
|
+
<!-- Map pin / location (replaces 📍) -->
|
|
476
|
+
<symbol id="icon-pin" viewBox="0 0 24 24">
|
|
477
|
+
<path d="M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0118 0z"/>
|
|
478
|
+
<circle cx="12" cy="10" r="3"/>
|
|
479
|
+
</symbol>
|
|
480
|
+
|
|
481
|
+
<!-- Traffic light / status (replaces 🚦) -->
|
|
482
|
+
<symbol id="icon-traffic" viewBox="0 0 24 24">
|
|
483
|
+
<rect x="7" y="2" width="10" height="20" rx="3"/>
|
|
484
|
+
<circle cx="12" cy="7" r="1.5"/>
|
|
485
|
+
<circle cx="12" cy="12" r="1.5"/>
|
|
486
|
+
<circle cx="12" cy="17" r="1.5"/>
|
|
487
|
+
</symbol>
|
|
488
|
+
|
|
489
|
+
<!-- Check circle (replaces ✅) -->
|
|
490
|
+
<symbol id="icon-check" viewBox="0 0 24 24">
|
|
491
|
+
<path d="M22 11.08V12a10 10 0 11-5.93-9.14"/>
|
|
492
|
+
<polyline points="22 4 12 14.01 9 11.01"/>
|
|
493
|
+
</symbol>
|
|
494
|
+
|
|
495
|
+
<!-- Megaphone / broadcast (replaces 📢) -->
|
|
496
|
+
<symbol id="icon-megaphone" viewBox="0 0 24 24">
|
|
497
|
+
<path d="M21 15a2 2 0 01-2 2H7l-4 4V5a2 2 0 012-2h14a2 2 0 012 2z"/>
|
|
498
|
+
</symbol>
|
|
499
|
+
|
|
500
|
+
<!-- Pen / signed (replaces ✍) -->
|
|
501
|
+
<symbol id="icon-pen" viewBox="0 0 24 24">
|
|
502
|
+
<path d="M12 20h9"/>
|
|
503
|
+
<path d="M16.5 3.5a2.121 2.121 0 013 3L7 19l-4 1 1-4L16.5 3.5z"/>
|
|
504
|
+
</symbol>
|
|
505
|
+
|
|
506
|
+
<!-- Warning / alert (replaces ⚠) -->
|
|
507
|
+
<symbol id="icon-warning" viewBox="0 0 24 24">
|
|
508
|
+
<path d="M10.29 3.86L1.82 18a2 2 0 001.71 3h16.94a2 2 0 001.71-3L13.71 3.86a2 2 0 00-3.42 0z"/>
|
|
509
|
+
<line x1="12" y1="9" x2="12" y2="13"/>
|
|
510
|
+
<line x1="12" y1="17" x2="12.01" y2="17"/>
|
|
511
|
+
</symbol>
|
|
512
|
+
|
|
513
|
+
<!-- Hourglass / timer (replaces ⏳) -->
|
|
514
|
+
<symbol id="icon-hourglass" viewBox="0 0 24 24">
|
|
515
|
+
<path d="M6 2h12v5l-4 4 4 4v5H6v-5l4-4-4-4V2z"/>
|
|
516
|
+
</symbol>
|
|
517
|
+
|
|
518
|
+
<!-- Scroll / document (replaces 📜) -->
|
|
519
|
+
<symbol id="icon-scroll" viewBox="0 0 24 24">
|
|
520
|
+
<path d="M14 2H6a2 2 0 00-2 2v16a2 2 0 002 2h12a2 2 0 002-2V8z"/>
|
|
521
|
+
<polyline points="14 2 14 8 20 8"/>
|
|
522
|
+
<line x1="16" y1="13" x2="8" y2="13"/>
|
|
523
|
+
<line x1="16" y1="17" x2="8" y2="17"/>
|
|
524
|
+
</symbol>
|
|
525
|
+
|
|
526
|
+
<!-- Bolt / lightning (replaces ⚡) -->
|
|
527
|
+
<symbol id="icon-bolt" viewBox="0 0 24 24">
|
|
528
|
+
<polygon points="13 2 3 14 12 14 11 22 21 10 12 10 13 2"/>
|
|
529
|
+
</symbol>
|
|
530
|
+
|
|
531
|
+
<!-- Target / crosshair (replaces 🎯) -->
|
|
532
|
+
<symbol id="icon-target" viewBox="0 0 24 24">
|
|
533
|
+
<circle cx="12" cy="12" r="10"/>
|
|
534
|
+
<circle cx="12" cy="12" r="6"/>
|
|
535
|
+
<circle cx="12" cy="12" r="2"/>
|
|
536
|
+
</symbol>
|
|
537
|
+
|
|
538
|
+
<!-- Handshake / trust (replaces 🤝) -->
|
|
539
|
+
<symbol id="icon-handshake" viewBox="0 0 24 24">
|
|
540
|
+
<path d="M11 17l-3.5-3.5a2.12 2.12 0 013-3L14 14"/>
|
|
541
|
+
<path d="M20.88 7.12l-3.17 3.17"/>
|
|
542
|
+
<path d="M3.12 7.12l3.17 3.17"/>
|
|
543
|
+
<path d="M2 12h4"/>
|
|
544
|
+
<path d="M18 12h4"/>
|
|
545
|
+
<path d="M7.76 4.25L12 2l4.24 2.25"/>
|
|
546
|
+
</symbol>
|
|
547
|
+
|
|
548
|
+
<!-- Leaf / organic (replaces 🌿) -->
|
|
549
|
+
<symbol id="icon-leaf" viewBox="0 0 24 24">
|
|
550
|
+
<path d="M17 8C8 10 5.9 16.17 3.82 21.34l1.89.66.95-2.3c.48.17.98.3 1.34.3C19 20 22 3 22 3c-1 0-8 0-10 2"/>
|
|
551
|
+
<path d="M7 15c2-2 5.5-3 9-3"/>
|
|
552
|
+
</symbol>
|
|
553
|
+
|
|
554
|
+
<!-- Satellite (replaces 🛰) -->
|
|
555
|
+
<symbol id="icon-satellite" viewBox="0 0 24 24">
|
|
556
|
+
<path d="M13 7L9 3 5 7l4 4"/>
|
|
557
|
+
<path d="M17 11l4 4-4 4-4-4"/>
|
|
558
|
+
<line x1="8" y1="11" x2="13" y2="16"/>
|
|
559
|
+
<line x1="3" y1="21" x2="3.01" y2="21"/>
|
|
560
|
+
<path d="M6 18a3 3 0 000 0"/>
|
|
561
|
+
<path d="M9 15a6 6 0 000 0"/>
|
|
562
|
+
</symbol>
|
|
563
|
+
|
|
564
|
+
<!-- Phone / mobile (replaces 📱) -->
|
|
565
|
+
<symbol id="icon-phone" viewBox="0 0 24 24">
|
|
566
|
+
<rect x="5" y="2" width="14" height="20" rx="2"/>
|
|
567
|
+
<line x1="12" y1="18" x2="12.01" y2="18"/>
|
|
568
|
+
</symbol>
|
|
569
|
+
|
|
570
|
+
<!-- Masks / theater (replaces 🎭) -->
|
|
571
|
+
<symbol id="icon-masks" viewBox="0 0 24 24">
|
|
572
|
+
<circle cx="12" cy="12" r="10"/>
|
|
573
|
+
<path d="M8 14s1.5 2 4 2 4-2 4-2"/>
|
|
574
|
+
<line x1="9" y1="9" x2="9.01" y2="9"/>
|
|
575
|
+
<line x1="15" y1="9" x2="15.01" y2="9"/>
|
|
576
|
+
</symbol>
|
|
577
|
+
|
|
578
|
+
<!-- Stars / cosmos (replaces 🌌) -->
|
|
579
|
+
<symbol id="icon-cosmos" viewBox="0 0 24 24">
|
|
580
|
+
<polygon points="12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2"/>
|
|
581
|
+
</symbol>
|
|
582
|
+
|
|
583
|
+
<!-- Gem / diamond (replaces 💎) -->
|
|
584
|
+
<symbol id="icon-gem" viewBox="0 0 24 24">
|
|
585
|
+
<polygon points="6 3 18 3 22 9 12 22 2 9 6 3"/>
|
|
586
|
+
<line x1="2" y1="9" x2="22" y2="9"/>
|
|
587
|
+
<line x1="12" y1="22" x2="8" y2="9"/>
|
|
588
|
+
<line x1="12" y1="22" x2="16" y2="9"/>
|
|
589
|
+
<line x1="8" y1="9" x2="10" y2="3"/>
|
|
590
|
+
<line x1="16" y1="9" x2="14" y2="3"/>
|
|
591
|
+
</symbol>
|
|
592
|
+
|
|
593
|
+
<!-- Search / magnifying glass (replaces 🔍) -->
|
|
594
|
+
<symbol id="icon-search" viewBox="0 0 24 24">
|
|
595
|
+
<circle cx="11" cy="11" r="8"/>
|
|
596
|
+
<line x1="21" y1="21" x2="16.65" y2="16.65"/>
|
|
597
|
+
</symbol>
|
|
598
|
+
|
|
599
|
+
</svg>
|
|
600
|
+
<!-- YAKMESH-ICON-SPRITE-END -->
|
|
601
|
+
<a href="#mainContent" class="skip-link">Skip to main content</a>
|
|
602
|
+
|
|
603
|
+
<nav class="docs-sidebar" id="sidebar">
|
|
604
|
+
<a href="index.html" class="sidebar-logo">
|
|
605
|
+
<span class="logo-icon"><svg class="doc-icon" aria-hidden="true"><use href="#icon-mountain"/></svg></span>
|
|
606
|
+
<span class="logo-text">Yakmesh</span>
|
|
607
|
+
</a>
|
|
608
|
+
<a href="/dashboard" class="sidebar-dashboard-link"><svg class="doc-icon" aria-hidden="true"><use href="#icon-dashboard"/></svg> <span>Dashboard</span></a>
|
|
609
|
+
<ul class="sidebar-nav">
|
|
610
|
+
<li class="sidebar-section"><span><svg class="doc-icon" aria-hidden="true"><use href="#icon-book"/></svg> Guides</span></li>
|
|
611
|
+
<li><a href="index.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-home"/></svg> <span>Overview</span></a></li>
|
|
612
|
+
<li><a href="getting-started.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-rocket"/></svg> <span>Getting Started</span></a></li>
|
|
613
|
+
<li><a href="tutorials.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-book"/></svg> <span>Tutorials</span></a></li>
|
|
614
|
+
<li class="sidebar-section"><span><svg class="doc-icon" aria-hidden="true"><use href="#icon-yak"/></svg> Protocol Stack</span></li>
|
|
615
|
+
<li><a href="yak-protocol.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-yak"/></svg> <span>YAK://</span></a></li>
|
|
616
|
+
<li><a href="annex.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-annex"/></svg> <span>ANNEX</span></a></li>
|
|
617
|
+
<li><a href="jhilke.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-jhilke"/></svg> <span>JHILKE</span></a></li>
|
|
618
|
+
<li><a href="nakpak.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-nakpak"/></svg> <span>NAKPAK</span></a></li>
|
|
619
|
+
<li><a href="namche.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-namche"/></svg> <span>NAMCHE</span></a></li>
|
|
620
|
+
<li><a href="doko.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-doko"/></svg> <span>DOKO</span></a></li>
|
|
621
|
+
<li><a href="sherpa.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-sherpa"/></svg> <span>SHERPA</span></a></li>
|
|
622
|
+
<li><a href="mandala.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-mandala"/></svg> <span>MANDALA</span></a></li>
|
|
623
|
+
<li><a href="mantra.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-mantra"/></svg> <span>MANTRA</span></a></li>
|
|
624
|
+
<li><a href="gumba.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-gumba"/></svg> <span>GUMBA</span></a></li>
|
|
625
|
+
<li><a href="yurt.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-yurt"/></svg> <span>YURT</span></a></li>
|
|
626
|
+
<li><a href="katha.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-katha"/></svg> <span>KATHA</span></a></li>
|
|
627
|
+
<li><a href="vani.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-vani"/></svg> <span>VANI</span></a></li>
|
|
628
|
+
<li><a href="darshan.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-darshan"/></svg> <span>DARSHAN</span></a></li>
|
|
629
|
+
<li><a href="stupa.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-stupa"/></svg> <span>STUPA</span></a></li>
|
|
630
|
+
<li><a href="lama.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-lama"/></svg> <span>LAMA</span></a></li>
|
|
631
|
+
<li><a href="mani.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-mani"/></svg> <span>MANI</span></a></li>
|
|
632
|
+
<li><a href="karma.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-karma"/></svg> <span>KARMA</span></a></li>
|
|
633
|
+
<li><a href="tattva.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-tattva"/></svg> <span>TATTVA</span></a></li>
|
|
634
|
+
<li><a href="tribhuj.html" class="active"><svg class="doc-icon" aria-hidden="true"><use href="#icon-tribhuj"/></svg> <span>TRIBHUJ</span></a></li>
|
|
635
|
+
<li><a href="ypc27.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-ypc27"/></svg> <span>YPC-27</span></a></li>
|
|
636
|
+
<li><a href="sakshi.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-sakshi"/></svg> <span>SAKSHI</span></a></li>
|
|
637
|
+
<li><a href="geo-proof.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-pramaan"/></svg> <span>PRAMAAN</span></a></li>
|
|
638
|
+
<li><a href="trust-security.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-suraksha"/></svg> <span>SURAKSHA</span></a></li>
|
|
639
|
+
<li><a href="tivra.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-tivra"/></svg> <span>TIVRA</span></a></li>
|
|
640
|
+
<li><a href="prahari.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-prahari"/></svg> <span>PRAHARI</span></a></li>
|
|
641
|
+
<li><a href="dharma.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-dharma"/></svg> <span>DHARMA</span></a></li>
|
|
642
|
+
<li><a href="seva.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-seva"/></svg> <span>SEVA</span></a></li>
|
|
643
|
+
<li><a href="docs-bundle.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-granth"/></svg> <span>GRANTH</span></a></li>
|
|
644
|
+
<li><a href="api.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-api"/></svg> <span>API</span></a></li>
|
|
645
|
+
<li><a href="adapters.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-adapters"/></svg> <span>Adapters</span></a></li>
|
|
646
|
+
<li class="sidebar-section"><span><svg class="doc-icon" aria-hidden="true"><use href="#icon-rocket"/></svg> Applications</span></li>
|
|
647
|
+
<li><a href="yakapp.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-yakapp"/></svg> <span>YakApp</span></a></li>
|
|
648
|
+
<li><a href="c2c.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-c2c"/></svg> <span>C2C</span></a></li>
|
|
649
|
+
<li><a href="studio.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-studio"/></svg> <span>Studio</span></a></li>
|
|
650
|
+
<li class="sidebar-section"><span><svg class="doc-icon" aria-hidden="true"><use href="#icon-gear"/></svg> Infrastructure</span></li>
|
|
651
|
+
<li><a href="cli.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-terminal"/></svg> <span>CLI</span></a></li>
|
|
652
|
+
<li><a href="configuration.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-gear"/></svg> <span>Configuration</span></a></li>
|
|
653
|
+
<li><a href="mesh.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-mandala"/></svg> <span>Mesh Network</span></a></li>
|
|
654
|
+
<li><a href="time-sources.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-mani"/></svg> <span>Time Sources</span></a></li>
|
|
655
|
+
<li><a href="webserver.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-server"/></svg> <span>Web Server</span></a></li>
|
|
656
|
+
<li><a href="advanced-systems.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-tivra"/></svg> <span>Advanced Systems</span></a></li>
|
|
657
|
+
<li class="sidebar-section"><span><svg class="doc-icon" aria-hidden="true"><use href="#icon-book"/></svg> Tutorials</span></li>
|
|
658
|
+
<li><a href="gumba-tutorial.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-gumba"/></svg> <span>GUMBA Tutorial</span></a></li>
|
|
659
|
+
<li class="sidebar-section"><span><svg class="doc-icon" aria-hidden="true"><use href="#icon-quickref"/></svg> Reference</span></li>
|
|
660
|
+
<li><a href="quick-reference.html"><svg class="doc-icon" aria-hidden="true"><use href="#icon-quickref"/></svg> <span>Quick Ref</span></a></li>
|
|
661
|
+
</ul>
|
|
662
|
+
</nav>
|
|
663
|
+
|
|
664
|
+
<button class="sidebar-toggle" id="sidebarToggle" title="Toggle sidebar">
|
|
665
|
+
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor">
|
|
666
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11 19l-7-7 7-7m8 14l-7-7 7-7" />
|
|
667
|
+
</svg>
|
|
668
|
+
</button>
|
|
669
|
+
|
|
670
|
+
<div class="sidebar-overlay" id="sidebarOverlay"></div>
|
|
671
|
+
|
|
672
|
+
<main class="docs-main" id="mainContent">
|
|
673
|
+
<div class="docs-content">
|
|
674
|
+
|
|
675
|
+
<!-- Page Header -->
|
|
676
|
+
<header class="mb-12">
|
|
677
|
+
<div class="flex items-center gap-4 mb-4">
|
|
678
|
+
<span class="text-6xl"><svg class="doc-icon hero-icon" width="24" height="24" aria-hidden="true"><use href="#icon-tribhuj"/></svg></span>
|
|
679
|
+
<div>
|
|
680
|
+
<h1 class="text-4xl font-bold theme-accent">TRIBHUJ</h1>
|
|
681
|
+
<p class="text-xl text-mountain-300 theme-accent">Ternary Radix Implementation — Balanced Harmonic Universal Junction</p>
|
|
682
|
+
</div>
|
|
683
|
+
</div>
|
|
684
|
+
<div class="philosophy-quote p-4 rounded-lg">
|
|
685
|
+
<p class="text-lg">"Three states: deny, abstain, affirm — the fundamental language of nature."</p>
|
|
686
|
+
<p class="text-sm text-mountain-400 mt-2"><span class="sanskrit-term">tribhuj</span> (त्रिभुज) — Sanskrit for "triangle" (three-sided)</p>
|
|
687
|
+
</div>
|
|
688
|
+
</header>
|
|
689
|
+
|
|
690
|
+
<!-- Overview -->
|
|
691
|
+
<section class="mb-12">
|
|
692
|
+
<h2 class="text-2xl font-bold mb-4 flex items-center gap-2">
|
|
693
|
+
<svg class="doc-icon inline-icon" aria-hidden="true"><use href="#icon-book"/></svg> Overview
|
|
694
|
+
</h2>
|
|
695
|
+
<div class="bg-mountain-800 rounded-xl p-6 border border-mountain-700">
|
|
696
|
+
<p class="mb-4">
|
|
697
|
+
<strong>TRIBHUJ</strong> provides the mathematical foundation for balanced ternary operations
|
|
698
|
+
throughout YAKMESH. Unlike binary (0, 1), balanced ternary uses three values: <strong>-1, 0, +1</strong>.
|
|
699
|
+
</p>
|
|
700
|
+
<p class="mb-4">
|
|
701
|
+
This enables natural representation of states like "reject/neutral/accept",
|
|
702
|
+
"disagree/abstain/agree", and "invalid/pending/valid" — concepts that require awkward
|
|
703
|
+
encoding in binary.
|
|
704
|
+
</p>
|
|
705
|
+
<div class="grid md:grid-cols-3 gap-4 mt-6">
|
|
706
|
+
<div class="bg-mountain-700/50 rounded-lg p-4 text-center">
|
|
707
|
+
<div class="trit-display trit-neg text-4xl">T</div>
|
|
708
|
+
<div class="text-sm text-mountain-400">-1 (Negative/Deny)</div>
|
|
709
|
+
</div>
|
|
710
|
+
<div class="bg-mountain-700/50 rounded-lg p-4 text-center">
|
|
711
|
+
<div class="trit-display trit-zero text-4xl">0</div>
|
|
712
|
+
<div class="text-sm text-mountain-400">0 (Neutral/Abstain)</div>
|
|
713
|
+
</div>
|
|
714
|
+
<div class="bg-mountain-700/50 rounded-lg p-4 text-center">
|
|
715
|
+
<div class="trit-display trit-pos text-4xl">1</div>
|
|
716
|
+
<div class="text-sm text-mountain-400">+1 (Positive/Affirm)</div>
|
|
717
|
+
</div>
|
|
718
|
+
</div>
|
|
719
|
+
</div>
|
|
720
|
+
</section>
|
|
721
|
+
|
|
722
|
+
<!-- Why Balanced Ternary? -->
|
|
723
|
+
<section class="mb-12">
|
|
724
|
+
<h2 class="text-2xl font-bold mb-4 flex items-center gap-2">
|
|
725
|
+
<svg class="doc-icon inline-icon" aria-hidden="true"><use href="#icon-dharma"/></svg> Why Balanced Ternary?
|
|
726
|
+
</h2>
|
|
727
|
+
<div class="grid md:grid-cols-2 gap-4">
|
|
728
|
+
<div class="module-card rounded-xl p-6">
|
|
729
|
+
<h3 class="text-lg font-semibold mb-3">Advantages</h3>
|
|
730
|
+
<ul class="space-y-2 text-mountain-200">
|
|
731
|
+
<li>• <strong>No sign bit needed:</strong> Negative numbers are natural</li>
|
|
732
|
+
<li>• <strong>Symmetric around zero:</strong> Same range positive/negative</li>
|
|
733
|
+
<li>• <strong>Rounding is trivial:</strong> Just truncate</li>
|
|
734
|
+
<li>• <strong>Efficient multiplication:</strong> By ±1 is just sign flip</li>
|
|
735
|
+
<li>• <strong>Natural for consensus:</strong> -1/0/+1 maps to disagree/abstain/agree</li>
|
|
736
|
+
</ul>
|
|
737
|
+
</div>
|
|
738
|
+
<div class="trit-card rounded-xl p-6">
|
|
739
|
+
<h3 class="text-lg font-semibold mb-3">Historical Context</h3>
|
|
740
|
+
<p class="text-sm text-mountain-300 mb-3">
|
|
741
|
+
Balanced ternary was used in the Soviet <strong>Setun</strong> computer (1958) —
|
|
742
|
+
the only ternary computer to enter mass production. It was more efficient than
|
|
743
|
+
contemporary binary machines.
|
|
744
|
+
</p>
|
|
745
|
+
<p class="text-sm text-mountain-300">
|
|
746
|
+
YAKMESH revives this elegant number system for post-quantum cryptography,
|
|
747
|
+
where ternary operations provide algebraic properties essential for lattice-based security.
|
|
748
|
+
</p>
|
|
749
|
+
</div>
|
|
750
|
+
</div>
|
|
751
|
+
</section>
|
|
752
|
+
|
|
753
|
+
<!-- Core Types -->
|
|
754
|
+
<section class="mb-12">
|
|
755
|
+
<h2 class="text-2xl font-bold mb-4 flex items-center gap-2">
|
|
756
|
+
<svg class="doc-icon inline-icon" aria-hidden="true"><use href="#icon-tribhuj"/></svg> Core Types
|
|
757
|
+
</h2>
|
|
758
|
+
|
|
759
|
+
<div class="module-card rounded-xl p-6 mb-4">
|
|
760
|
+
<h3 class="text-lg font-semibold mb-3">Trit Class</h3>
|
|
761
|
+
<p class="text-sm text-mountain-300 mb-4">A single balanced ternary digit.</p>
|
|
762
|
+
<pre class="bg-mountain-900 rounded-lg p-4 overflow-x-auto"><code class="language-javascript">import { Trit } from 'yakmesh/oracle/tribhuj';
|
|
763
|
+
|
|
764
|
+
// Create trits
|
|
765
|
+
const negative = Trit.from(-1); // or Trit.NEG
|
|
766
|
+
const zero = Trit.from(0); // or Trit.ZERO
|
|
767
|
+
const positive = Trit.from(1); // or Trit.POS
|
|
768
|
+
|
|
769
|
+
// Arithmetic
|
|
770
|
+
negative.add(positive); // → Trit(0)
|
|
771
|
+
positive.multiply(negative); // → Trit(-1)
|
|
772
|
+
negative.negate(); // → Trit(+1)
|
|
773
|
+
|
|
774
|
+
// Logic
|
|
775
|
+
positive.and(negative); // → Trit(-1) (min)
|
|
776
|
+
positive.or(negative); // → Trit(+1) (max)
|
|
777
|
+
|
|
778
|
+
// Comparison
|
|
779
|
+
negative.equals(Trit.NEG); // → true
|
|
780
|
+
positive.compareTo(zero); // → 1 (greater)</code></pre>
|
|
781
|
+
</div>
|
|
782
|
+
|
|
783
|
+
<div class="module-card rounded-xl p-6">
|
|
784
|
+
<h3 class="text-lg font-semibold mb-3">TritArray Class</h3>
|
|
785
|
+
<p class="text-sm text-mountain-300 mb-4">Fixed-length array of trits for multi-trit operations.</p>
|
|
786
|
+
<pre class="bg-mountain-900 rounded-lg p-4 overflow-x-auto"><code class="language-javascript">import { TritArray } from 'yakmesh/oracle/tribhuj';
|
|
787
|
+
|
|
788
|
+
// Create from values
|
|
789
|
+
const arr = TritArray.from([1, 0, -1, 1, -1]);
|
|
790
|
+
|
|
791
|
+
// Operations
|
|
792
|
+
arr.negate(); // Flip all signs
|
|
793
|
+
arr.add(otherArr); // Element-wise addition
|
|
794
|
+
arr.multiply(otherArr); // Element-wise multiplication
|
|
795
|
+
|
|
796
|
+
// Polynomial operations (for YPC-27)
|
|
797
|
+
arr.polyMultiply(otherArr, 27); // Ring multiplication
|
|
798
|
+
|
|
799
|
+
// Conversion
|
|
800
|
+
arr.toInt8Array(); // → Int8Array([-1, 0, 1, ...])
|
|
801
|
+
arr.toBase64(); // → "YWJj..."
|
|
802
|
+
TritArray.fromBase64("YWJj...", 27);
|
|
803
|
+
|
|
804
|
+
// Consensus
|
|
805
|
+
TritArray.consensus([arr1, arr2, arr3]); // Majority vote per trit</code></pre>
|
|
806
|
+
</div>
|
|
807
|
+
</section>
|
|
808
|
+
|
|
809
|
+
<!-- Ternary Logic Operations -->
|
|
810
|
+
<section class="mb-12">
|
|
811
|
+
<h2 class="text-2xl font-bold mb-4 flex items-center gap-2">
|
|
812
|
+
<svg class="doc-icon inline-icon" aria-hidden="true"><use href="#icon-tribhuj"/></svg> Ternary Logic Operations
|
|
813
|
+
</h2>
|
|
814
|
+
|
|
815
|
+
<div class="grid md:grid-cols-2 gap-4 mb-6">
|
|
816
|
+
<div class="logic-card rounded-xl p-6">
|
|
817
|
+
<h3 class="text-lg font-semibold mb-3">AND (Minimum)</h3>
|
|
818
|
+
<p class="text-sm text-mountain-300 mb-4">Returns the lesser value. Think: "strongest objection wins"</p>
|
|
819
|
+
<table class="ops-table text-sm">
|
|
820
|
+
<thead>
|
|
821
|
+
<tr><th>AND</th><th class="trit-neg">-1</th><th class="trit-zero">0</th><th class="trit-pos">+1</th></tr>
|
|
822
|
+
</thead>
|
|
823
|
+
<tbody>
|
|
824
|
+
<tr><th class="trit-neg">-1</th><td class="trit-neg">-1</td><td class="trit-neg">-1</td><td class="trit-neg">-1</td></tr>
|
|
825
|
+
<tr><th class="trit-zero">0</th><td class="trit-neg">-1</td><td class="trit-zero">0</td><td class="trit-zero">0</td></tr>
|
|
826
|
+
<tr><th class="trit-pos">+1</th><td class="trit-neg">-1</td><td class="trit-zero">0</td><td class="trit-pos">+1</td></tr>
|
|
827
|
+
</tbody>
|
|
828
|
+
</table>
|
|
829
|
+
</div>
|
|
830
|
+
|
|
831
|
+
<div class="logic-card rounded-xl p-6">
|
|
832
|
+
<h3 class="text-lg font-semibold mb-3">OR (Maximum)</h3>
|
|
833
|
+
<p class="text-sm text-mountain-300 mb-4">Returns the greater value. Think: "strongest endorsement wins"</p>
|
|
834
|
+
<table class="ops-table text-sm">
|
|
835
|
+
<thead>
|
|
836
|
+
<tr><th>OR</th><th class="trit-neg">-1</th><th class="trit-zero">0</th><th class="trit-pos">+1</th></tr>
|
|
837
|
+
</thead>
|
|
838
|
+
<tbody>
|
|
839
|
+
<tr><th class="trit-neg">-1</th><td class="trit-neg">-1</td><td class="trit-zero">0</td><td class="trit-pos">+1</td></tr>
|
|
840
|
+
<tr><th class="trit-zero">0</th><td class="trit-zero">0</td><td class="trit-zero">0</td><td class="trit-pos">+1</td></tr>
|
|
841
|
+
<tr><th class="trit-pos">+1</th><td class="trit-pos">+1</td><td class="trit-pos">+1</td><td class="trit-pos">+1</td></tr>
|
|
842
|
+
</tbody>
|
|
843
|
+
</table>
|
|
844
|
+
</div>
|
|
845
|
+
</div>
|
|
846
|
+
|
|
847
|
+
<div class="module-card rounded-xl p-6">
|
|
848
|
+
<h3 class="text-lg font-semibold mb-3">Ternary Averaging (NOT for Validation)</h3>
|
|
849
|
+
<p class="text-sm text-mountain-300 mb-4">
|
|
850
|
+
Computes weighted average of ternary values. <strong class="text-red-400"><svg class="doc-icon inline-icon" aria-hidden="true"><use href="#icon-warning"/></svg> Not used for cryptographic validation.</strong>
|
|
851
|
+
</p>
|
|
852
|
+
<div class="bg-red-900/30 border border-red-700 rounded-lg p-4 mb-4">
|
|
853
|
+
<p class="text-sm text-red-300">
|
|
854
|
+
<strong>Important:</strong> YAKMESH validation is deterministic, not democratic.
|
|
855
|
+
If nodes compute different results for the same inputs, it signals a bug or attack —
|
|
856
|
+
the correct response is <code>RECOMPUTE_AND_VERIFY</code>, not voting.
|
|
857
|
+
See <a href="sakshi.html" class="text-red-400 underline">SAKSHI</a> for how actual consensus works.
|
|
858
|
+
</p>
|
|
859
|
+
</div>
|
|
860
|
+
<pre class="bg-mountain-900 rounded-lg p-4 overflow-x-auto"><code class="language-javascript">import { weightedAverage } from 'yakmesh/oracle/tribhuj';
|
|
861
|
+
|
|
862
|
+
// Averaging multiple sensor readings (example: temperature trends)
|
|
863
|
+
const readings = [
|
|
864
|
+
{ vote: Trit.POS, weight: 1.0 }, // Sensor A: "rising"
|
|
865
|
+
{ vote: Trit.ZERO, weight: 0.5 }, // Sensor B: "stable" (lower confidence)
|
|
866
|
+
{ vote: Trit.POS, weight: 1.0 }, // Sensor C: "rising"
|
|
867
|
+
];
|
|
868
|
+
const trend = weightedAverage(readings); // Weighted toward POS
|
|
869
|
+
|
|
870
|
+
// For cryptographic operations, use SAKSHI instead:
|
|
871
|
+
import { checkMathematicalAgreement } from 'yakmesh/security/sakshi';
|
|
872
|
+
// Returns AGREED | PENDING | DISAGREED (never votes)</code></pre>
|
|
873
|
+
</div>
|
|
874
|
+
</section>
|
|
875
|
+
|
|
876
|
+
<!-- Arithmetic -->
|
|
877
|
+
<section class="mb-12">
|
|
878
|
+
<h2 class="text-2xl font-bold mb-4 flex items-center gap-2">
|
|
879
|
+
<svg class="doc-icon inline-icon" aria-hidden="true"><use href="#icon-tribhuj"/></svg> Ternary Arithmetic
|
|
880
|
+
</h2>
|
|
881
|
+
<div class="bg-mountain-800 rounded-xl p-6 border border-mountain-700">
|
|
882
|
+
<p class="mb-4">Balanced ternary arithmetic follows simple rules:</p>
|
|
883
|
+
|
|
884
|
+
<div class="grid md:grid-cols-2 gap-6 mt-6">
|
|
885
|
+
<div>
|
|
886
|
+
<h3 class="font-semibold mb-2 theme-accent">Addition</h3>
|
|
887
|
+
<table class="ops-table text-sm">
|
|
888
|
+
<thead>
|
|
889
|
+
<tr><th>+</th><th class="trit-neg">-1</th><th class="trit-zero">0</th><th class="trit-pos">+1</th></tr>
|
|
890
|
+
</thead>
|
|
891
|
+
<tbody>
|
|
892
|
+
<tr><th class="trit-neg">-1</th><td>-2*</td><td class="trit-neg">-1</td><td class="trit-zero">0</td></tr>
|
|
893
|
+
<tr><th class="trit-zero">0</th><td class="trit-neg">-1</td><td class="trit-zero">0</td><td class="trit-pos">+1</td></tr>
|
|
894
|
+
<tr><th class="trit-pos">+1</th><td class="trit-zero">0</td><td class="trit-pos">+1</td><td>+2*</td></tr>
|
|
895
|
+
</tbody>
|
|
896
|
+
</table>
|
|
897
|
+
<p class="text-xs text-mountain-400 mt-2">* Overflow: -2 → (+1, carry -1), +2 → (-1, carry +1)</p>
|
|
898
|
+
</div>
|
|
899
|
+
|
|
900
|
+
<div>
|
|
901
|
+
<h4 class="font-semibold mb-2 theme-accent">Multiplication</h4>
|
|
902
|
+
<table class="ops-table text-sm">
|
|
903
|
+
<thead>
|
|
904
|
+
<tr><th>×</th><th class="trit-neg">-1</th><th class="trit-zero">0</th><th class="trit-pos">+1</th></tr>
|
|
905
|
+
</thead>
|
|
906
|
+
<tbody>
|
|
907
|
+
<tr><th class="trit-neg">-1</th><td class="trit-pos">+1</td><td class="trit-zero">0</td><td class="trit-neg">-1</td></tr>
|
|
908
|
+
<tr><th class="trit-zero">0</th><td class="trit-zero">0</td><td class="trit-zero">0</td><td class="trit-zero">0</td></tr>
|
|
909
|
+
<tr><th class="trit-pos">+1</th><td class="trit-neg">-1</td><td class="trit-zero">0</td><td class="trit-pos">+1</td></tr>
|
|
910
|
+
</tbody>
|
|
911
|
+
</table>
|
|
912
|
+
<p class="text-xs text-mountain-400 mt-2">No overflow in single-trit multiplication</p>
|
|
913
|
+
</div>
|
|
914
|
+
</div>
|
|
915
|
+
</div>
|
|
916
|
+
</section>
|
|
917
|
+
|
|
918
|
+
<!-- Polynomial Ring -->
|
|
919
|
+
<section class="mb-12">
|
|
920
|
+
<h2 class="text-2xl font-bold mb-4 flex items-center gap-2">
|
|
921
|
+
<svg class="doc-icon inline-icon" aria-hidden="true"><use href="#icon-sync"/></svg> Polynomial Ring Operations
|
|
922
|
+
</h2>
|
|
923
|
+
<div class="trit-card rounded-xl p-6">
|
|
924
|
+
<p class="mb-4">
|
|
925
|
+
YPC-27 checksums operate in the polynomial ring <code class="bg-mountain-800 px-2 py-1 rounded">Z[x]/(x²⁷-1) mod 3</code>.
|
|
926
|
+
TRIBHUJ provides the primitive operations:
|
|
927
|
+
</p>
|
|
928
|
+
<pre class="bg-mountain-900 rounded-lg p-4 overflow-x-auto"><code class="language-javascript">import { TritArray } from 'yakmesh/oracle/tribhuj';
|
|
929
|
+
|
|
930
|
+
// Create polynomials (coefficients as trits)
|
|
931
|
+
const poly1 = TritArray.from([1, 0, -1, 0, 1, ...]); // 27 trits
|
|
932
|
+
const poly2 = TritArray.from([0, 1, 1, -1, 0, ...]); // 27 trits
|
|
933
|
+
|
|
934
|
+
// Ring multiplication: (a * b) mod (x^27 - 1) mod 3
|
|
935
|
+
const product = poly1.polyMultiply(poly2, 27);
|
|
936
|
+
|
|
937
|
+
// This wraps coefficients: x^27 = 1, x^28 = x, etc.
|
|
938
|
+
// Result is always a 27-trit polynomial</code></pre>
|
|
939
|
+
<p class="text-sm text-mountain-400 mt-4">
|
|
940
|
+
This ring structure is what makes YPC-27 checksums algebraically mixing —
|
|
941
|
+
changing one input bit affects all 27 output coefficients.
|
|
942
|
+
</p>
|
|
943
|
+
</div>
|
|
944
|
+
</section>
|
|
945
|
+
|
|
946
|
+
<!-- Usage in YAKMESH -->
|
|
947
|
+
<section class="mb-12">
|
|
948
|
+
<h2 class="text-2xl font-bold mb-4 flex items-center gap-2">
|
|
949
|
+
<svg class="doc-icon inline-icon" aria-hidden="true"><use href="#icon-link"/></svg> YAKMESH Integrations
|
|
950
|
+
</h2>
|
|
951
|
+
<div class="grid md:grid-cols-2 gap-4">
|
|
952
|
+
<div class="module-card rounded-xl p-6">
|
|
953
|
+
<h3 class="text-lg font-semibold mb-2"><svg class="doc-icon inline-icon" width="24" height="24" aria-hidden="true"><use href="#icon-lock"/></svg> YPC-27 Checksums</h3>
|
|
954
|
+
<p class="text-sm text-mountain-300">
|
|
955
|
+
27-trit polynomial checksums use TRIBHUJ for all ternary operations.
|
|
956
|
+
</p>
|
|
957
|
+
</div>
|
|
958
|
+
<div class="module-card rounded-xl p-6">
|
|
959
|
+
<h3 class="text-lg font-semibold mb-2"><svg class="doc-icon inline-icon" width="24" height="24" aria-hidden="true"><use href="#icon-scroll"/></svg> TATTVA Validation</h3>
|
|
960
|
+
<p class="text-sm text-mountain-300">
|
|
961
|
+
VALID/INVALID/PENDING mapped to +1/−1/0 trits.
|
|
962
|
+
</p>
|
|
963
|
+
</div>
|
|
964
|
+
<div class="module-card rounded-xl p-6">
|
|
965
|
+
<h3 class="text-lg font-semibold mb-2"><svg class="doc-icon inline-icon" width="24" height="24" aria-hidden="true"><use href="#icon-lama"/></svg> LAMA Consensus</h3>
|
|
966
|
+
<p class="text-sm text-mountain-300">
|
|
967
|
+
Multi-node validation uses ternary consensus for agreement.
|
|
968
|
+
</p>
|
|
969
|
+
</div>
|
|
970
|
+
<div class="module-card rounded-xl p-6">
|
|
971
|
+
<h3 class="text-lg font-semibold mb-2"><svg class="doc-icon inline-icon" width="24" height="24" aria-hidden="true"><use href="#icon-sakshi"/></svg> SAKSHI Attestation</h3>
|
|
972
|
+
<p class="text-sm text-mountain-300">
|
|
973
|
+
Witness fusion uses balanced ternary for agreement detection.
|
|
974
|
+
</p>
|
|
975
|
+
</div>
|
|
976
|
+
</div>
|
|
977
|
+
</section>
|
|
978
|
+
|
|
979
|
+
<!-- API Reference -->
|
|
980
|
+
<section class="mb-12">
|
|
981
|
+
<h2 class="text-2xl font-bold mb-4 flex items-center gap-2">
|
|
982
|
+
<svg class="doc-icon inline-icon" aria-hidden="true"><use href="#icon-signal"/></svg> API Reference
|
|
983
|
+
</h2>
|
|
984
|
+
<div class="bg-mountain-800 rounded-xl p-6 border border-mountain-700">
|
|
985
|
+
<h3 class="text-lg font-semibold mb-4">oracle/tribhuj.js Exports</h3>
|
|
986
|
+
<table class="ops-table text-left">
|
|
987
|
+
<thead>
|
|
988
|
+
<tr>
|
|
989
|
+
<th class="text-left">Export</th>
|
|
990
|
+
<th class="text-left">Description</th>
|
|
991
|
+
</tr>
|
|
992
|
+
</thead>
|
|
993
|
+
<tbody>
|
|
994
|
+
<tr>
|
|
995
|
+
<td><code>Trit</code></td>
|
|
996
|
+
<td class="text-left">Single balanced ternary digit class</td>
|
|
997
|
+
</tr>
|
|
998
|
+
<tr>
|
|
999
|
+
<td><code>Trit.NEG, .ZERO, .POS</code></td>
|
|
1000
|
+
<td class="text-left">Constant trit values</td>
|
|
1001
|
+
</tr>
|
|
1002
|
+
<tr>
|
|
1003
|
+
<td><code>TritArray</code></td>
|
|
1004
|
+
<td class="text-left">Fixed-length trit array class</td>
|
|
1005
|
+
</tr>
|
|
1006
|
+
<tr>
|
|
1007
|
+
<td><code>ternaryConsensus(trits)</code></td>
|
|
1008
|
+
<td class="text-left">Majority vote for array of trits</td>
|
|
1009
|
+
</tr>
|
|
1010
|
+
<tr>
|
|
1011
|
+
<td><code>tritAdd(a, b)</code></td>
|
|
1012
|
+
<td class="text-left">Add two trits with carry</td>
|
|
1013
|
+
</tr>
|
|
1014
|
+
<tr>
|
|
1015
|
+
<td><code>tritMultiply(a, b)</code></td>
|
|
1016
|
+
<td class="text-left">Multiply two trits</td>
|
|
1017
|
+
</tr>
|
|
1018
|
+
<tr>
|
|
1019
|
+
<td><code>tritNegate(t)</code></td>
|
|
1020
|
+
<td class="text-left">Flip sign of trit</td>
|
|
1021
|
+
</tr>
|
|
1022
|
+
<tr>
|
|
1023
|
+
<td><code>tritAnd(a, b)</code></td>
|
|
1024
|
+
<td class="text-left">Ternary AND (min)</td>
|
|
1025
|
+
</tr>
|
|
1026
|
+
<tr>
|
|
1027
|
+
<td><code>tritOr(a, b)</code></td>
|
|
1028
|
+
<td class="text-left">Ternary OR (max)</td>
|
|
1029
|
+
</tr>
|
|
1030
|
+
</tbody>
|
|
1031
|
+
</table>
|
|
1032
|
+
|
|
1033
|
+
<!-- Source Code Link -->
|
|
1034
|
+
<div class="mt-6 pt-4 border-t border-mountain-600">
|
|
1035
|
+
<p class="text-sm text-mountain-400">
|
|
1036
|
+
<strong>Implementation:</strong>
|
|
1037
|
+
<a href="https://github.com/yakmesh/yakmesh/blob/main/oracle/tribhuj.js"
|
|
1038
|
+
class="theme-accent theme-accent-hover" target="_blank" rel="noopener">
|
|
1039
|
+
oracle/tribhuj.js
|
|
1040
|
+
</a>
|
|
1041
|
+
<span class="mx-2">·</span>
|
|
1042
|
+
<span class="text-mountain-500">684 lines · MIT License</span>
|
|
1043
|
+
</p>
|
|
1044
|
+
</div>
|
|
1045
|
+
</div>
|
|
1046
|
+
</section>
|
|
1047
|
+
|
|
1048
|
+
<!-- Research & Theory -->
|
|
1049
|
+
<section class="mb-12">
|
|
1050
|
+
<h2 class="text-2xl font-bold mb-4 flex items-center gap-2">
|
|
1051
|
+
<svg class="doc-icon inline-icon" aria-hidden="true"><use href="#icon-sakshi"/></svg> Research & Theory
|
|
1052
|
+
</h2>
|
|
1053
|
+
<div class="bg-mountain-800 rounded-xl p-6 border border-mountain-700">
|
|
1054
|
+
<h3 class="text-lg font-semibold mb-3">Synergy Sequence Theory (SST)</h3>
|
|
1055
|
+
<p class="text-mountain-300 mb-4">
|
|
1056
|
+
TRIBHUJ's balanced ternary aligns with <strong>Synergy Sequence Theory</strong> (Wesley Long),
|
|
1057
|
+
which identifies three "family number groups" in natural mathematics:
|
|
1058
|
+
</p>
|
|
1059
|
+
<div class="grid md:grid-cols-3 gap-4 mb-4">
|
|
1060
|
+
<div class="bg-mountain-700/50 rounded-lg p-3 text-center">
|
|
1061
|
+
<div class="font-mono text-xl mb-1">1, 4, 7</div>
|
|
1062
|
+
<div class="text-xs text-mountain-400">Physical Group A</div>
|
|
1063
|
+
</div>
|
|
1064
|
+
<div class="bg-mountain-700/50 rounded-lg p-3 text-center">
|
|
1065
|
+
<div class="font-mono text-xl mb-1">2, 5, 8</div>
|
|
1066
|
+
<div class="text-xs text-mountain-400">Physical Group B</div>
|
|
1067
|
+
</div>
|
|
1068
|
+
<div class="bg-mountain-700/50 rounded-lg p-3 text-center border border-theme-primary">
|
|
1069
|
+
<div class="font-mono text-xl mb-1 theme-accent">3, 6, 9</div>
|
|
1070
|
+
<div class="text-xs text-mountain-400">Governing Group</div>
|
|
1071
|
+
</div>
|
|
1072
|
+
</div>
|
|
1073
|
+
<p class="text-mountain-300 mb-3">
|
|
1074
|
+
SST proposes that the 3-6-9 group acts as a "governing force" in nature, with 3 and 6 oscillating
|
|
1075
|
+
while 9 remains constant (singularity). This mirrors TRIBHUJ's three states: <strong>-1</strong> (negative),
|
|
1076
|
+
<strong>0</strong> (neutral/constant), and <strong>+1</strong> (positive).
|
|
1077
|
+
</p>
|
|
1078
|
+
<p class="text-mountain-400 text-sm">
|
|
1079
|
+
The theory's "Synergy Triangle" (30-60-90°) connects to TRIBHUJ's name — Sanskrit for "triangle".
|
|
1080
|
+
YPC-27's use of 3³ = 27 trits reflects the same ternary harmony.
|
|
1081
|
+
</p>
|
|
1082
|
+
</div>
|
|
1083
|
+
</section>
|
|
1084
|
+
|
|
1085
|
+
<!-- Ternary-144 Quantum Entropy -->
|
|
1086
|
+
<section class="mb-12">
|
|
1087
|
+
<h2 class="text-2xl font-bold mb-4 flex items-center gap-2">
|
|
1088
|
+
<svg class="doc-icon inline-icon" aria-hidden="true"><use href="#icon-satellite"/></svg> Ternary-144 Quantum Entropy
|
|
1089
|
+
</h2>
|
|
1090
|
+
<p class="text-mountain-300 mb-4">
|
|
1091
|
+
<a href="prahari.html" class="theme-accent">PRAHARI</a> extends TRIBHUJ's ternary
|
|
1092
|
+
foundation to a 144-position addressing scheme modeled on the theoretical "Synergy Satellite
|
|
1093
|
+
Tesseract" (SST) constellation of 144 quantum random number generators in orbit.
|
|
1094
|
+
</p>
|
|
1095
|
+
<h3 class="text-lg font-semibold mb-3">Family Groups</h3>
|
|
1096
|
+
<div class="grid sm:grid-cols-3 gap-4 mb-6">
|
|
1097
|
+
<div class="bg-mountain-800 rounded-xl p-4 border border-mountain-700 text-center">
|
|
1098
|
+
<h4 class="text-lg font-bold text-blue-400 mb-1">Family A</h4>
|
|
1099
|
+
<p class="text-sm text-mountain-400">Digital roots 1, 2, 4, 5, 7, 8</p>
|
|
1100
|
+
<p class="text-xs text-mountain-500 mt-1">48 positions</p>
|
|
1101
|
+
</div>
|
|
1102
|
+
<div class="bg-mountain-800 rounded-xl p-4 border border-mountain-700 text-center">
|
|
1103
|
+
<h4 class="text-lg font-bold text-purple-400 mb-1">Family B</h4>
|
|
1104
|
+
<p class="text-sm text-mountain-400">Digital roots 3, 6</p>
|
|
1105
|
+
<p class="text-xs text-mountain-500 mt-1">48 positions</p>
|
|
1106
|
+
</div>
|
|
1107
|
+
<div class="bg-mountain-800 rounded-xl p-4 border border-mountain-700 text-center">
|
|
1108
|
+
<h4 class="text-lg font-bold theme-accent mb-1">Family C</h4>
|
|
1109
|
+
<p class="text-sm text-mountain-400">Digital root 9 (singularity)</p>
|
|
1110
|
+
<p class="text-xs text-mountain-500 mt-1">48 positions</p>
|
|
1111
|
+
</div>
|
|
1112
|
+
</div>
|
|
1113
|
+
<p class="text-mountain-400 text-sm mb-4">
|
|
1114
|
+
Each position is addressed by a 6-trit value (3⁶ = 729 possible, 144 mapped). Seed selection
|
|
1115
|
+
uses a 24-position Fibonacci digital root cycle to choose the SST family, then round-robin within
|
|
1116
|
+
the family. See the <a href="prahari.html" class="theme-accent">PRAHARI</a> documentation
|
|
1117
|
+
for the full seed algorithm and Entropy Sentinel scoring.
|
|
1118
|
+
</p>
|
|
1119
|
+
</section>
|
|
1120
|
+
|
|
1121
|
+
<!-- Version History -->
|
|
1122
|
+
<section class="mb-12">
|
|
1123
|
+
<h2 class="text-2xl font-bold mb-4 flex items-center gap-2">
|
|
1124
|
+
<svg class="doc-icon inline-icon" width="24" height="24" aria-hidden="true"><use href="#icon-hourglass"/></svg> Version History
|
|
1125
|
+
</h2>
|
|
1126
|
+
<div class="bg-mountain-800 rounded-xl p-6 border border-mountain-700">
|
|
1127
|
+
<table class="ops-table text-left">
|
|
1128
|
+
<thead>
|
|
1129
|
+
<tr>
|
|
1130
|
+
<th class="text-left">Version</th>
|
|
1131
|
+
<th class="text-left">Changes</th>
|
|
1132
|
+
</tr>
|
|
1133
|
+
</thead>
|
|
1134
|
+
<tbody>
|
|
1135
|
+
<tr>
|
|
1136
|
+
<td><span class="theme-badge px-2 py-1 rounded">v3.0.0</span></td>
|
|
1137
|
+
<td class="text-left">Ternary-144 addressing via PRAHARI. SST family groups (A/B/C × 48).
|
|
1138
|
+
Fibonacci digital root cycle for seed selection. Entropy Sentinel quality scoring.</td>
|
|
1139
|
+
</tr>
|
|
1140
|
+
<tr>
|
|
1141
|
+
<td><span class="theme-badge px-2 py-1 rounded">v2.8.0</span></td>
|
|
1142
|
+
<td class="text-left">Initial TRIBHUJ module with Trit, TritArray, ternary logic operations</td>
|
|
1143
|
+
</tr>
|
|
1144
|
+
</tbody>
|
|
1145
|
+
</table>
|
|
1146
|
+
</div>
|
|
1147
|
+
</section>
|
|
1148
|
+
|
|
1149
|
+
<!-- Journey Navigation -->
|
|
1150
|
+
<div class="border-t border-mountain-700 mt-12 pt-8">
|
|
1151
|
+
<h2 class="text-xl font-bold mb-6">Continue the Journey</h2>
|
|
1152
|
+
<div class="flex flex-col sm:flex-row gap-4">
|
|
1153
|
+
<a href="tattva.html" class="flex-1 block bg-mountain-800 border border-mountain-700 rounded-xl p-4 hover:border-theme-accent transition group">
|
|
1154
|
+
<div class="text-xs text-mountain-400 mb-1">← Previous</div>
|
|
1155
|
+
<div class="flex items-center gap-2">
|
|
1156
|
+
<svg class="doc-icon journey-icon" aria-hidden="true"><use href="#icon-tattva"/></svg>
|
|
1157
|
+
<span class="font-semibold group-hover:text-theme-accent">TATTVA</span>
|
|
1158
|
+
</div>
|
|
1159
|
+
<p class="text-mountain-400 text-sm mt-1">Core principles</p>
|
|
1160
|
+
</a>
|
|
1161
|
+
<a href="ypc27.html" class="flex-1 block bg-mountain-800 border border-theme-primary rounded-xl p-4 hover:border-theme-accent transition group">
|
|
1162
|
+
<div class="text-xs text-mountain-400 mb-1">Next →</div>
|
|
1163
|
+
<div class="flex items-center gap-2">
|
|
1164
|
+
<svg class="doc-icon journey-icon" aria-hidden="true"><use href="#icon-ypc27"/></svg>
|
|
1165
|
+
<span class="font-semibold group-hover:text-theme-accent">YPC-27</span>
|
|
1166
|
+
</div>
|
|
1167
|
+
<p class="text-mountain-400 text-sm mt-1">Cryptographic suite</p>
|
|
1168
|
+
</a>
|
|
1169
|
+
</div>
|
|
1170
|
+
</div>
|
|
1171
|
+
</main>
|
|
1172
|
+
|
|
1173
|
+
<footer class="docs-footer">
|
|
1174
|
+
<p>© 2026 YAKMESH™</p>
|
|
1175
|
+
</footer>
|
|
1176
|
+
|
|
1177
|
+
<script src="prism.min.js" defer></script>
|
|
1178
|
+
<script src="prism-javascript.min.js" defer></script>
|
|
1179
|
+
<script src="docs.js" defer></script>
|
|
1180
|
+
</body>
|
|
1181
|
+
</html>
|
|
1182
|
+
|
|
1183
|
+
|