Skip to content

Commit 1cc78d7

Browse files
committed
folders
1 parent 2cee7e9 commit 1cc78d7

File tree

11 files changed

+121
-21
lines changed

11 files changed

+121
-21
lines changed

CITATION.cff

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ keywords:
1818
- structural-explainability
1919
- accountability
2020
- ontological-neutrality
21+
- neutral-substrate
2122
- formal-ontology
2223
- formal-verification
2324
- theorem-proving

Main.lean

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
import NeutralSubstrate
2+
13
-- REQ.EXEC.MAIN:
24
-- Main entry point for this package.
35
--
@@ -10,7 +12,7 @@
1012
-- This file must remain trivial and stable.
1113
-- Any failure here indicates a broken proof or import graph.
1214

13-
import StructuralExplainability
15+
1416

1517
def main : IO Unit :=
1618
IO.println "Structural Explainability: package verified."

NeutralSubstrate.lean

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import NeutralSubstrate.Conformance
2+
import NeutralSubstrate.Core
3+
import NeutralSubstrate.Spec
4+
5+
-- REQ.LIBRARY.ROOT:
6+
-- Public library root for this package.
7+
-- OBS:
8+
-- Imports must appear before this comment (Lean requirement).
9+
-- This file is intentionally thin: it only re-exports submodules.
10+
11+
namespace StructuralExplainability.NeutralSubstrate
12+
end StructuralExplainability.NeutralSubstrate

NeutralSubstrate/Conformance.lean

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
import NeutralSubstrate.Core
2+
import NeutralSubstrate.Spec
3+
4+
/-!
5+
Neutral Substrate (NS) conformance: identifier-to-theorem trace surface.
6+
-/
7+
8+
namespace StructuralExplainability.NeutralSubstrate.Conformance
9+
10+
open StructuralExplainability
11+
open StructuralExplainability.NeutralSubstrate.Spec
12+
13+
structure ConformanceEvidence where
14+
neutrality_no_causal_or_normative :
15+
∀ S : Ontology, Req_NS_NEUTRALITY_NO_CAUSAL_OR_NORMATIVE S ↔ Neutral S
16+
17+
extension_stability_is_neutrality :
18+
∀ S : Ontology, Req_NS_NEUTRALITY_EXTENSION_STABILITY S ↔ Neutral S
19+
20+
end StructuralExplainability.NeutralSubstrate.Conformance
File renamed without changes.

NeutralSubstrate/Spec.lean

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
import NeutralSubstrate.Core
2+
3+
/-!
4+
Neutral Substrate (NS) spec surface: identifiers and requirement shapes.
5+
-/
6+
7+
namespace StructuralExplainability.NeutralSubstrate.Spec
8+
9+
10+
def NS_NEUTRALITY_NO_CAUSAL_OR_NORMATIVE : String :=
11+
"NS.NEUTRALITY.NO_CAUSAL_OR_NORMATIVE"
12+
13+
def NS_NEUTRALITY_EXTENSION_STABILITY : String :=
14+
"NS.NEUTRALITY.EXTENSION_STABILITY"
15+
16+
/-- REQ: NS.NEUTRALITY.NO_CAUSAL_OR_NORMATIVE -/
17+
def Req_NS_NEUTRALITY_NO_CAUSAL_OR_NORMATIVE (S : StructuralExplainability.Ontology) : Prop :=
18+
StructuralExplainability.containsCausalOrNormative S = false
19+
20+
/-- REQ: NS.NEUTRALITY.EXTENSION_STABILITY -/
21+
def Req_NS_NEUTRALITY_EXTENSION_STABILITY (S : StructuralExplainability.Ontology) : Prop :=
22+
StructuralExplainability.ExtensionStable S
23+
24+
end StructuralExplainability.NeutralSubstrate.Spec

SE_MANIFEST.toml

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
schema = "se-manifest-1"
2+
3+
[repo]
4+
name = "NeutralSubstrate"
5+
org = "structural-explainability"
6+
kind = "formalization"
7+
status = "reference"
8+
since = "2025"
9+
summary = "Lean formalization of the ontological neutrality theorem for representational substrates."
10+
11+
[layer]
12+
space = "SE"
13+
role = "foundation"
14+
15+
[depends]
16+
required = [
17+
"structural-explainability/spec-se@v1"
18+
]
19+
optional = []
20+
21+
[provides]
22+
artifacts = [
23+
"ANNOTATIONS.md",
24+
"CITATION.cff",
25+
"README.md"
26+
]
27+
28+
[scope]
29+
includes = [
30+
"ontological neutrality theorem",
31+
"extension stability under disagreement",
32+
"formal definitions of neutrality",
33+
"axioms bounding domain applicability"
34+
]
35+
excludes = [
36+
"identity regime definitions",
37+
"entity kinds",
38+
"domain semantics",
39+
"explanations or interpretive claims",
40+
"causal or normative primitives",
41+
"governance or enforcement logic"
42+
]
43+
44+
[citation]
45+
cff = "CITATION.cff"
46+
preferred = "repo"
47+
bib_hint = "case2025-lean-ns"
48+
49+
[traceability]
50+
identifier_map = "none"

StructuralExplainability.lean

Lines changed: 0 additions & 13 deletions
This file was deleted.

docs/LEAN.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -126,9 +126,9 @@ Type backslash + shortcut, then space:
126126

127127
| Command | Purpose |
128128
|---------|---------|
129-
| `lake build` | Compile the project. |
130129
| `lake clean` | Remove build artifacts. |
131-
| `lake exe <name>` | Run an executable. |
130+
| `lake build` | Compile the project. |
131+
| `lake exe verify` | Run verification executable. |
132132

133133
---
134134

docs/MAPPING.md

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,10 @@ This document maps definitions and theorems from the paper to their Lean formali
55
**Paper**: "The Ontological Neutrality Theorem:
66
Why Neutral Ontological Substrates Must Be Pre-Causal and Pre-Normative" (Case, 2025)
77

8-
**Formalization**: `StructuralExplainability/NeutralSubstrate.lean`
8+
**Formalization**:
9+
10+
- `NeutralSubstrate/NeutralSubstrate/*.lean`
11+
912

1013
## Domain Scope
1114

@@ -59,8 +62,9 @@ Such positions do not contradict these results; they are outside the scope of th
5962
To verify the formalization (and optionally, run it):
6063

6164
```bash
65+
lake update
6266
lake build
63-
lake exe neutralsubstrate
67+
lake exe verify
6468
```
6569

6670
All theorems compile without `sorry`, confirming the proofs are complete.

0 commit comments

Comments
 (0)