Encyclopedia Delta Delta Kernel Syntax Neg
Delta Kernel Syntax Neg
In the δ-kernel, negation is not a primitive symbol but a defined operation: a formula is negated by saying it implies falsehood.
Negation as defined
In logic, negation is the operation that flips a statement to its opposite: if φ says "it is raining," then ¬φ says "it is not raining." In the δ-kernel, the formal language at the base of the Recognition Science framework, negation is not a primitive symbol of the grammar. Instead, the declaration neg defines it: ¬φ is an abbreviation for φ → ⊥, meaning "φ implies falsehood." This is the standard intuitionistic definition, and it appears in the syntax module as a single line: def neg (φ : DFormula) : DFormula := impl φ fls.
The definition matters because it keeps the object language deliberately small. The δ-kernel's formulas are plain data over a distinction signature, with equality as the only atomic predicate and no universe hierarchy, no Π-types, and no propositions-as-types. Negation defined as implication-toward-falsehood fits that austerity: it introduces no new grammar, only a shorthand for an existing construction. The same style governs the rest of the syntax: terms are de Bruijn-indexed variables, zero, successor, addition, and multiplication; formulas add equality, falsehood, conjunction, disjunction, implication, and quantifiers. Nothing else is present.
Because negation is defined rather than primitive, it inherits intuitionistic behavior. The framework does not claim that ¬¬φ forces φ, the classical double-negation elimination. That principle is not part of the δ-kernel's logic. What the definition does establish is a uniform, machine-checked encoding: every formula's negation is a concrete piece of data, and derivations over that data are themselves plain data checked by a total function. The payoff is a foundation where the object logic never touches the host's proposition type, and where every syntactic operation is structural recursion with no choice and no classical axioms.
In Recognition Science, this is the syntax layer of the forced base: the free distinction structure ℕδ with its recursion-licensed operations. The definition of negation is one small piece of that base, and it does no forcing by itself. What it contributes is a precise, minimal vocabulary on which later layers can build. A reader who wants to see what the framework can prove about negation, instead of merely how it defines it, must look to the derivation checker and the proof rules that operate on these formulas.
MODEL neg · IndisputableMonolith/DeltaKernel/Syntax.lean
/-- Negation, defined intuitionistically. -/
def neg (φ : DFormula) : DFormula := impl φ fls
MODEL DFormula · IndisputableMonolith/DeltaKernel/Syntax.lean
/-- Formulas of intuitionistic first-order arithmetic over the distinction
signature. Equality is the sole atomic predicate (identity of ledger
content). Negation is defined: `¬φ := φ → ⊥`. -/
inductive DFormula : Type where
| eq : DTerm → DTerm → DFormula
| fls : DFormula
| conj : DFormula → DFormula → DFormula
| disj : DFormula → DFormula → DFormula
| impl : DFormula → DFormula → DFormula
| all : DFormula → DFormula
| ex : DFormula → DFormula
MODEL neg · IndisputableMonolith/DeltaKernel/Syntax.lean
/-- Negation, defined intuitionistically. -/
def neg (φ : DFormula) : DFormula := impl φ fls
What this page does not claim
This page does not claim that the δ-kernel proves double-negation elimination or any classical principle. This page does not claim that the definition of negation itself forces any physical or mathematical structure. This page does not claim that the δ-kernel's syntax includes a primitive negation symbol in its grammar.
Verify this page
Every tagged claim above names its theorem. To check one yourself rather than trust this page, elaborate the source module with Lean 4 and audit its axiom basis:
$ lake env lean IndisputableMonolith/DeltaKernel/Syntax.lean
expected axiom basis: [propext, Classical.choice, Quot.sound] (the Lean kernel's standard three; no RS-specific axioms)
A page whose claims cannot be reproduced this way does not ship. In production, every anchor links to the exact declaration in the public source release, and this block carries the build receipt for the page itself.
Derived articles
This page is generated by a question-recursion engine: the questions its answers raise become the next pages. The current agenda, with open targets marked red:
- How does the derivation checker in Check.lean use the defined negation in its proof rules?
- What does the Markov posit rule, restricted to quantifier-free matrices, add to the δ-kernel's logic?
- How does the δ-kernel's syntax connect to the forcing spectrum that builds on it?
MACHINE LAYER · GROUNDED CLAIM TABLE · CLICK TO EXPAND
MODEL neg · IndisputableMonolith/DeltaKernel/Syntax.lean
/-- Negation, defined intuitionistically. -/ def neg (φ : DFormula) : DFormula := impl φ flsIn the δ-kernel, negation is not a primitive symbol but a defined operation: ¬φ is an abbreviation for φ → ⊥. neg · IndisputableMonolith/DeltaKernel/Syntax.leanMODEL DFormula · IndisputableMonolith/DeltaKernel/Syntax.lean
/-- Formulas of intuitionistic first-order arithmetic over the distinction signature. Equality is the sole atomic predicate (identity of ledger content). Negation is defined: `¬φ := φ → ⊥`. -/ inductive DFormula : Type where | eq : DTerm → DTerm → DFormula | fls : DFormula | conj : DFormula → DFormula → DFormula | disj : DFormula → DFormula → DFormula | impl : DFormula → DFormula → DFormula | all : DFormula → DFormula | ex : DFormula → DFormulaThe δ-kernel's formulas are plain data over a distinction signature, with equality as the only atomic predicate and no universe hierarchy, no Π-types, and no propositions-as-types. DFormula · IndisputableMonolith/DeltaKernel/Syntax.leanMODEL neg · IndisputableMonolith/DeltaKernel/Syntax.lean
/-- Negation, defined intuitionistically. -/ def neg (φ : DFormula) : DFormula := impl φ flsThe definition of negation inherits intuitionistic behavior, and the framework does not claim that ¬¬φ forces φ. neg · IndisputableMonolith/DeltaKernel/Syntax.lean