nx_concept.nx source
↩ module page · 141 lines · 7885 B
1// nx_concept.nx -- typed cross-cultural concept dictionary.
2//
3// Numeric concept IDs paired with sealed ontology enum + fidelity tag
4// + citation pool index. Python `concept.py` carries the string forms
5// (origin_lang, primary_term, glosses[]); NishiLang substrate carries
6// the typed handles.
7//
8// Cardinal: "concept dictionary -- cross-cultural lossless absorption".
9// Without typed concept refs, French/CJK/proper-noun concepts collapse
10// into lossy English approximations.
11//
12// genealogy_id: ogden_richards_1923_meaning + sapir_whorf_1956
13// + nishi_cross_cultural_cardinal_2026_05
14// lineage_id: typed_concept_with_cross_cultural_fidelity
15
16// nx_safety_envelope:
17// intended_use: AUTO_APPLIED -- primitive-specific tuning queued
18// sil_target: SIL1
19// evidence: [bulk_applied_2026-05-16, see-file-comment-for-detail]
20// verdict: NOT_YET_EVALUATED
21
22import "nx_syscalls.nx"
23
24// ===== Sealed Ontology enum ============================================
25const NX_ONTOLOGY_UNKNOWN: i64 = 0
26const NX_ONTOLOGY_ANATOMICAL_SHAPE: i64 = 1
27const NX_ONTOLOGY_AESTHETIC_QUALITY: i64 = 2
28const NX_ONTOLOGY_STYLE_SIGNATURE: i64 = 3
29const NX_ONTOLOGY_IDENTITY_REF: i64 = 4
30const NX_ONTOLOGY_TECHNICAL_FLAG: i64 = 5
31const NX_ONTOLOGY_TECHNICAL_ARTIFACT: i64 = 6
32
33// ===== Sealed Fidelity enum ============================================
34const NX_FIDELITY_EXACT: i64 = 0
35const NX_FIDELITY_NEAR: i64 = 1
36const NX_FIDELITY_PARAPHRASE: i64 = 2
37const NX_FIDELITY_DESCRIPTIVE: i64 = 3
38
39// ===== Canonical concept IDs (mirror Python concept.py exactly) =======
40const NX_CONCEPT_RETROUSSE: i64 = 1
41const NX_CONCEPT_PENDULOUS: i64 = 2
42const NX_CONCEPT_PHOTOGRAPHIC_CLARITY: i64 = 3
43const NX_CONCEPT_IMAGE_LEVEL_CLARITY: i64 = 4
44const NX_CONCEPT_SKIN_REALISM: i64 = 5
45const NX_CONCEPT_MIKE_DOWSON_STYLE: i64 = 6
46const NX_CONCEPT_ELARA_CLASS: i64 = 7
47const NX_CONCEPT_FACE_FUSION: i64 = 8
48const NX_CONCEPT_LIMB_HALLUCINATION: i64 = 9
49const NX_CONCEPT_PLASTIC_SHEEN: i64 = 10
50const NX_CONCEPT_MAN_ARM_HAIR: i64 = 11
51const NX_CONCEPT_GLAMOUR_VS_PHOTOGRAPHIC: i64 = 12
52const NX_CONCEPT_GAZE_FOCUS: i64 = 13
53const NX_CONCEPT_BODY_PROPORTION: i64 = 14
54const NX_CONCEPT_MISE_EN_SCENE: i64 = 15
55const NX_CONCEPT_AREOLA_PAPILLAE: i64 = 16
56const NX_CONCEPT_INTERACTION_PRESENCE: i64 = 17
57const NX_CONCEPT_MISSING_INTERACTION: i64 = 18
58const NX_CONCEPT_OUTFIT_COVERAGE: i64 = 19
59const NX_CONCEPT_LINGERIE_AESTHETIC: i64 = 20
60const NX_CONCEPT_WET_SKIN: i64 = 21
61const NX_CONCEPT_OUTFIT_SOAKED: i64 = 22
62const NX_CONCEPT_GOOSEBUMPS: i64 = 23
63const NX_CONCEPT_SWEAT_DISTRIBUTED: i64 = 24
64const NX_CONCEPT_HAIR_FRIZZ: i64 = 25
65const NX_CONCEPT_FLUSHED_SKIN: i64 = 26
66const NX_CONCEPT_ENV_STATE_FIDELITY: i64 = 27
67const NX_CONCEPT_INTENT_PROGRESSION: i64 = 28
68const NX_CONCEPT_POSE_PLAUSIBILITY: i64 = 29
69const NX_CONCEPT_IMPOSSIBLE_POSE: i64 = 30
70const NX_CONCEPT_BREAST_PHYSICS: i64 = 31
71const NX_CONCEPT_OVERSIZED_BREASTS: i64 = 32
72const NX_CONCEPT_GRAVITY_VIOLATION: i64 = 33
73const NX_CONCEPT_IDENTITY_DRIFT: i64 = 34
74const NX_CONCEPT_MAKEUP_STYLE: i64 = 35
75const NX_CONCEPT_EMOTION_CONGRUENCE: i64 = 36
76const NX_CONCEPT_DEAD_FACE_CRYING: i64 = 37
77
78// ===== ConceptRef ======================================================
79struct ConceptRef {
80 concept_id: i64,
81 ontology: i64,
82 fidelity_q10: i64,
83 cite_id: i64,
84}
85
86// ===== Ontology lookup =================================================
87func nx_concept_ontology(concept_id: i64) -> i64 {
88 if concept_id == NX_CONCEPT_RETROUSSE { return NX_ONTOLOGY_ANATOMICAL_SHAPE }
89 if concept_id == NX_CONCEPT_PENDULOUS { return NX_ONTOLOGY_ANATOMICAL_SHAPE }
90 if concept_id == NX_CONCEPT_BODY_PROPORTION { return NX_ONTOLOGY_ANATOMICAL_SHAPE }
91 if concept_id == NX_CONCEPT_AREOLA_PAPILLAE { return NX_ONTOLOGY_ANATOMICAL_SHAPE }
92 if concept_id == NX_CONCEPT_BREAST_PHYSICS { return NX_ONTOLOGY_ANATOMICAL_SHAPE }
93 if concept_id == NX_CONCEPT_POSE_PLAUSIBILITY { return NX_ONTOLOGY_ANATOMICAL_SHAPE }
94 if concept_id == NX_CONCEPT_GOOSEBUMPS { return NX_ONTOLOGY_ANATOMICAL_SHAPE }
95 if concept_id == NX_CONCEPT_PHOTOGRAPHIC_CLARITY { return NX_ONTOLOGY_TECHNICAL_FLAG }
96 if concept_id == NX_CONCEPT_IMAGE_LEVEL_CLARITY { return NX_ONTOLOGY_TECHNICAL_FLAG }
97 if concept_id == NX_CONCEPT_GAZE_FOCUS { return NX_ONTOLOGY_TECHNICAL_FLAG }
98 if concept_id == NX_CONCEPT_MISE_EN_SCENE { return NX_ONTOLOGY_TECHNICAL_FLAG }
99 if concept_id == NX_CONCEPT_INTERACTION_PRESENCE { return NX_ONTOLOGY_TECHNICAL_FLAG }
100 if concept_id == NX_CONCEPT_OUTFIT_COVERAGE { return NX_ONTOLOGY_TECHNICAL_FLAG }
101 if concept_id == NX_CONCEPT_WET_SKIN { return NX_ONTOLOGY_TECHNICAL_FLAG }
102 if concept_id == NX_CONCEPT_OUTFIT_SOAKED { return NX_ONTOLOGY_TECHNICAL_FLAG }
103 if concept_id == NX_CONCEPT_SWEAT_DISTRIBUTED { return NX_ONTOLOGY_TECHNICAL_FLAG }
104 if concept_id == NX_CONCEPT_HAIR_FRIZZ { return NX_ONTOLOGY_TECHNICAL_FLAG }
105 if concept_id == NX_CONCEPT_FLUSHED_SKIN { return NX_ONTOLOGY_TECHNICAL_FLAG }
106 if concept_id == NX_CONCEPT_ENV_STATE_FIDELITY { return NX_ONTOLOGY_TECHNICAL_FLAG }
107 if concept_id == NX_CONCEPT_SKIN_REALISM { return NX_ONTOLOGY_AESTHETIC_QUALITY }
108 if concept_id == NX_CONCEPT_INTENT_PROGRESSION { return NX_ONTOLOGY_AESTHETIC_QUALITY }
109 if concept_id == NX_CONCEPT_EMOTION_CONGRUENCE { return NX_ONTOLOGY_AESTHETIC_QUALITY }
110 if concept_id == NX_CONCEPT_MIKE_DOWSON_STYLE { return NX_ONTOLOGY_STYLE_SIGNATURE }
111 if concept_id == NX_CONCEPT_GLAMOUR_VS_PHOTOGRAPHIC { return NX_ONTOLOGY_STYLE_SIGNATURE }
112 if concept_id == NX_CONCEPT_LINGERIE_AESTHETIC { return NX_ONTOLOGY_STYLE_SIGNATURE }
113 if concept_id == NX_CONCEPT_MAKEUP_STYLE { return NX_ONTOLOGY_STYLE_SIGNATURE }
114 if concept_id == NX_CONCEPT_ELARA_CLASS { return NX_ONTOLOGY_IDENTITY_REF }
115 if concept_id == NX_CONCEPT_IDENTITY_DRIFT { return NX_ONTOLOGY_IDENTITY_REF }
116 if concept_id == NX_CONCEPT_FACE_FUSION { return NX_ONTOLOGY_TECHNICAL_ARTIFACT }
117 if concept_id == NX_CONCEPT_LIMB_HALLUCINATION { return NX_ONTOLOGY_TECHNICAL_ARTIFACT }
118 if concept_id == NX_CONCEPT_PLASTIC_SHEEN { return NX_ONTOLOGY_TECHNICAL_ARTIFACT }
119 if concept_id == NX_CONCEPT_MAN_ARM_HAIR { return NX_ONTOLOGY_TECHNICAL_ARTIFACT }
120 if concept_id == NX_CONCEPT_MISSING_INTERACTION { return NX_ONTOLOGY_TECHNICAL_ARTIFACT }
121 if concept_id == NX_CONCEPT_IMPOSSIBLE_POSE { return NX_ONTOLOGY_TECHNICAL_ARTIFACT }
122 if concept_id == NX_CONCEPT_OVERSIZED_BREASTS { return NX_ONTOLOGY_TECHNICAL_ARTIFACT }
123 if concept_id == NX_CONCEPT_GRAVITY_VIOLATION { return NX_ONTOLOGY_TECHNICAL_ARTIFACT }
124 if concept_id == NX_CONCEPT_DEAD_FACE_CRYING { return NX_ONTOLOGY_TECHNICAL_ARTIFACT }
125 return NX_ONTOLOGY_UNKNOWN
126}
127
128func nx_concept_ref_init(ref: *ConceptRef,
129 concept_id: i64,
130 fidelity_q10: i64) -> i64 {
131 ref.concept_id = concept_id
132 ref.ontology = nx_concept_ontology(concept_id)
133 ref.fidelity_q10 = fidelity_q10
134 ref.cite_id = 0
135 return 0
136}
137
138func nx_concept_ref_is_valid(ref: *ConceptRef) -> i64 {
139 if ref.ontology == NX_ONTOLOGY_UNKNOWN { return 0 }
140 return 1
141}