Documentation

ConNF.Model.Predicative

The predicative part of Hailperin's finite axiomatisation of NF #

theorem ConNF.Symmetric.inter [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} (hβ : β < α) {s₁ : Set (ConNF.TSet β)} {s₂ : Set (ConNF.TSet β)} (h₁ : ConNF.Symmetric s₁) (h₂ : ConNF.Symmetric s₂) :
ConNF.Symmetric (s₁ s₂)
theorem ConNF.ModelData.TSet.inter_supported [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} (hβ : β < α) (t₁ : ConNF.TSet α) (t₂ : ConNF.TSet α) :
ConNF.Symmetric {s : ConNF.TSet β | s ∈[] t₁ s ∈[] t₂}
def ConNF.ModelData.TSet.inter [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} (hβ : β < α) (t₁ : ConNF.TSet α) (t₂ : ConNF.TSet α) :
Equations
Instances For
    theorem ConNF.Symmetric.compl [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} (hβ : β < α) {s : Set (ConNF.TSet β)} (h : ConNF.Symmetric s) :
    theorem ConNF.ModelData.TSet.compl_supported [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} (hβ : β < α) (t : ConNF.TSet α) :
    ConNF.Symmetric {s : ConNF.TSet β | ¬s ∈[] t}
    def ConNF.ModelData.TSet.compl [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} (hβ : β < α) (t : ConNF.TSet α) :
    Equations
    Instances For
      theorem ConNF.ModelData.TSet.singleton_supported [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} (hβ : β < α) (t : ConNF.TSet β) :
      def ConNF.ModelData.TSet.singleton [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} (hβ : β < α) (t : ConNF.TSet β) :
      Equations
      Instances For
        theorem ConNF.ModelData.TSet.up_supported [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} (hβ : β < α) (t₁ : ConNF.TSet β) (t₂ : ConNF.TSet β) :
        ConNF.Symmetric {t₁, t₂}
        def ConNF.ModelData.TSet.up [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} (hβ : β < α) (t₁ : ConNF.TSet β) (t₂ : ConNF.TSet β) :

        The unordered pair.

        Equations
        Instances For
          def ConNF.ModelData.TSet.op [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} {γ : ConNF.Λ} (hβ : β < α) (hγ : γ < β) (t₁ : ConNF.TSet γ) (t₂ : ConNF.TSet γ) :

          The Kuratowski ordered pair.

          Equations
          Instances For
            @[simp]
            theorem ConNF.ModelData.TSet.mem_singleton_iff [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} (hβ : β < α) (t : ConNF.TSet β) (s : ConNF.TSet β) :
            @[simp]
            theorem ConNF.smul_singleton [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} (hβ : β < α) (t : ConNF.TSet β) (ρ : ConNF.Allowable α) :
            theorem ConNF.singleton_injective' [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} (hβ : β < α) (t₁ : ConNF.TSet β) (t₂ : ConNF.TSet β) (h : ConNF.ModelData.TSet.singleton t₁ = ConNF.ModelData.TSet.singleton t₂) :
            t₁ = t₂
            @[simp]
            theorem ConNF.ModelData.TSet.mem_up_iff [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} (hβ : β < α) (t₁ : ConNF.TSet β) (t₂ : ConNF.TSet β) (s : ConNF.TSet β) :
            s ∈[] ConNF.ModelData.TSet.up t₁ t₂ s = t₁ s = t₂
            @[simp]
            theorem ConNF.smul_up [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} (hβ : β < α) (t₁ : ConNF.TSet β) (t₂ : ConNF.TSet β) (ρ : ConNF.Allowable α) :
            ρ ConNF.ModelData.TSet.up t₁ t₂ = ConNF.ModelData.TSet.up ((ConNF.cons ) ρ t₁) ((ConNF.cons ) ρ t₂)
            theorem ConNF.up_self [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} (hβ : β < α) (t : ConNF.TSet β) :
            theorem ConNF.up_injective [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} (hβ : β < α) (t₁ : ConNF.TSet β) (t₂ : ConNF.TSet β) (t₁' : ConNF.TSet β) (t₂' : ConNF.TSet β) (h : ConNF.ModelData.TSet.up t₁ t₂ = ConNF.ModelData.TSet.up t₁' t₂') :
            t₁ = t₁' t₂ = t₂' t₁ = t₂' t₂ = t₁'
            theorem ConNF.up_eq_singleton_iff [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} (hβ : β < α) (t : ConNF.TSet β) (t₁ : ConNF.TSet β) (t₂ : ConNF.TSet β) :
            @[simp]
            theorem ConNF.ModelData.TSet.mem_op_iff [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} {γ : ConNF.Λ} (hβ : β < α) (hγ : γ < β) (t₁ : ConNF.TSet γ) (t₂ : ConNF.TSet γ) (s : ConNF.TSet β) :
            @[simp]
            theorem ConNF.smul_op [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} {γ : ConNF.Λ} (hβ : β < α) (hγ : γ < β) (t₁ : ConNF.TSet γ) (t₂ : ConNF.TSet γ) (ρ : ConNF.Allowable α) :
            ρ ConNF.ModelData.TSet.op t₁ t₂ = ConNF.ModelData.TSet.op ((ConNF.cons ) ((ConNF.cons ) ρ) t₁) ((ConNF.cons ) ((ConNF.cons ) ρ) t₂)
            theorem ConNF.op_injective [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} {γ : ConNF.Λ} (hβ : β < α) (hγ : γ < β) (t₁ : ConNF.TSet γ) (t₂ : ConNF.TSet γ) (t₁' : ConNF.TSet γ) (t₂' : ConNF.TSet γ) (h : ConNF.ModelData.TSet.op t₁ t₂ = ConNF.ModelData.TSet.op t₁' t₂') :
            t₁ = t₁' t₂ = t₂'
            theorem ConNF.Symmetric.singletonImage [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} {γ : ConNF.Λ} {δ : ConNF.Λ} {ε : ConNF.Λ} (hβ : β < α) (hγ : γ < β) (hδ : δ < γ) (hε : ε < δ) {s : Set (ConNF.TSet γ)} (h : ConNF.Symmetric s) :
            theorem ConNF.ModelData.TSet.singletonImage_supported [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} {γ : ConNF.Λ} {δ : ConNF.Λ} {ε : ConNF.Λ} (hβ : β < α) (hγ : γ < β) (hδ : δ < γ) (hε : ε < δ) (t : ConNF.TSet β) :
            def ConNF.ModelData.TSet.singletonImage [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} {γ : ConNF.Λ} {δ : ConNF.Λ} {ε : ConNF.Λ} (hβ : β < α) (hγ : γ < β) (hδ : δ < γ) (hε : ε < δ) (t : ConNF.TSet β) :
            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              theorem ConNF.Symmetric.insertion2 [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} {γ : ConNF.Λ} {δ : ConNF.Λ} {ε : ConNF.Λ} {ζ : ConNF.Λ} (hβ : β < α) (hγ : γ < β) (hδ : δ < γ) (hε : ε < δ) (hζ : ζ < ε) {s : Set (ConNF.TSet δ)} (h : ConNF.Symmetric s) :
              theorem ConNF.ModelData.TSet.insertion2_supported [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} {γ : ConNF.Λ} {δ : ConNF.Λ} {ε : ConNF.Λ} {ζ : ConNF.Λ} (hβ : β < α) (hγ : γ < β) (hδ : δ < γ) (hε : ε < δ) (hζ : ζ < ε) (t : ConNF.TSet γ) :
              def ConNF.ModelData.TSet.insertion2 [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} {γ : ConNF.Λ} {δ : ConNF.Λ} {ε : ConNF.Λ} {ζ : ConNF.Λ} (hβ : β < α) (hγ : γ < β) (hδ : δ < γ) (hε : ε < δ) (hζ : ζ < ε) (t : ConNF.TSet γ) :
              Equations
              • One or more equations did not get rendered due to their size.
              Instances For
                theorem ConNF.Symmetric.insertion3 [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} {γ : ConNF.Λ} {δ : ConNF.Λ} {ε : ConNF.Λ} {ζ : ConNF.Λ} (hβ : β < α) (hγ : γ < β) (hδ : δ < γ) (hε : ε < δ) (hζ : ζ < ε) {s : Set (ConNF.TSet δ)} (h : ConNF.Symmetric s) :
                theorem ConNF.ModelData.TSet.insertion3_supported [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} {γ : ConNF.Λ} {δ : ConNF.Λ} {ε : ConNF.Λ} {ζ : ConNF.Λ} (hβ : β < α) (hγ : γ < β) (hδ : δ < γ) (hε : ε < δ) (hζ : ζ < ε) (t : ConNF.TSet γ) :
                def ConNF.ModelData.TSet.insertion3 [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} {γ : ConNF.Λ} {δ : ConNF.Λ} {ε : ConNF.Λ} {ζ : ConNF.Λ} (hβ : β < α) (hγ : γ < β) (hδ : δ < γ) (hε : ε < δ) (hζ : ζ < ε) (t : ConNF.TSet γ) :
                Equations
                • One or more equations did not get rendered due to their size.
                Instances For
                  theorem ConNF.Symmetric.cross [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} {γ : ConNF.Λ} {δ : ConNF.Λ} (hβ : β < α) (hγ : γ < β) (hδ : δ < γ) {s : Set (ConNF.TSet δ)} (h : ConNF.Symmetric s) :
                  ConNF.Symmetric {p : ConNF.TSet β | ∃ (a : ConNF.TSet δ), bs, p = ConNF.ModelData.TSet.op a b}
                  theorem ConNF.ModelData.TSet.cross_supported [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} {γ : ConNF.Λ} {δ : ConNF.Λ} (hβ : β < α) (hγ : γ < β) (hδ : δ < γ) (t : ConNF.TSet γ) :
                  ConNF.Symmetric {p : ConNF.TSet β | ∃ (a : ConNF.TSet δ) (b : ConNF.TSet δ), b ∈[] t p = ConNF.ModelData.TSet.op a b}
                  def ConNF.ModelData.TSet.cross [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} {γ : ConNF.Λ} {δ : ConNF.Λ} (hβ : β < α) (hγ : γ < β) (hδ : δ < γ) (t : ConNF.TSet γ) :
                  Equations
                  Instances For
                    theorem ConNF.Symmetric.typeLower' [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} {γ : ConNF.Λ} {δ : ConNF.Λ} {ε : ConNF.Λ} (hβ : β < α) (hγ : γ < β) (hδ : δ < γ) (hε : ε < δ) {s : Set (ConNF.TSet β)} (h : ConNF.Symmetric s) :
                    theorem ConNF.ModelData.TSet.typeLower'_supported [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} {γ : ConNF.Λ} {δ : ConNF.Λ} {ε : ConNF.Λ} (hβ : β < α) (hγ : γ < β) (hδ : δ < γ) (hε : ε < δ) (t : ConNF.TSet α) :
                    def ConNF.ModelData.TSet.typeLower' [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} {γ : ConNF.Λ} {δ : ConNF.Λ} {ε : ConNF.Λ} (hβ : β < α) (hγ : γ < β) (hδ : δ < γ) (hε : ε < δ) (t : ConNF.TSet α) :

                    This isn't quite the right form of the type lowering axiom, but once we have the axiom of union for singletons, we will be able to deduce the correct form of the result.

                    Equations
                    • One or more equations did not get rendered due to their size.
                    Instances For
                      theorem ConNF.Symmetric.converse [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} {γ : ConNF.Λ} {δ : ConNF.Λ} (hβ : β < α) (hγ : γ < β) (hδ : δ < γ) {s : Set (ConNF.TSet β)} (h : ConNF.Symmetric s) :
                      ConNF.Symmetric {p : ConNF.TSet β | ∃ (a : ConNF.TSet δ) (b : ConNF.TSet δ), ConNF.ModelData.TSet.op a b s p = ConNF.ModelData.TSet.op b a}
                      theorem ConNF.ModelData.TSet.converse_supported [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} {γ : ConNF.Λ} {δ : ConNF.Λ} (hβ : β < α) (hγ : γ < β) (hδ : δ < γ) (t : ConNF.TSet α) :
                      ConNF.Symmetric {p : ConNF.TSet β | ∃ (a : ConNF.TSet δ) (b : ConNF.TSet δ), ConNF.ModelData.TSet.op a b ∈[] t p = ConNF.ModelData.TSet.op b a}
                      def ConNF.ModelData.TSet.converse [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} {γ : ConNF.Λ} {δ : ConNF.Λ} (hβ : β < α) (hγ : γ < β) (hδ : δ < γ) (t : ConNF.TSet α) :
                      Equations
                      • One or more equations did not get rendered due to their size.
                      Instances For
                        theorem ConNF.Symmetric.cardinalOne [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} {γ : ConNF.Λ} (hβ : β < α) (hγ : γ < β) :
                        ConNF.Symmetric {p : ConNF.TSet β | ∃ (a : ConNF.TSet γ), p = ConNF.ModelData.TSet.singleton a}
                        def ConNF.ModelData.TSet.cardinalOne [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} {γ : ConNF.Λ} (hβ : β < α) (hγ : γ < β) :
                        Equations
                        Instances For
                          theorem ConNF.Symmetric.subset [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} {γ : ConNF.Λ} {δ : ConNF.Λ} {ε : ConNF.Λ} (hβ : β < α) (hγ : γ < β) (hδ : δ < γ) (hε : ε < δ) :
                          ConNF.Symmetric {p : ConNF.TSet β | ∃ (a : ConNF.TSet δ) (b : ConNF.TSet δ), (∀ (c : ConNF.TSet ε), c ∈[] ac ∈[] b) p = ConNF.ModelData.TSet.op a b}
                          def ConNF.ModelData.TSet.subset [ConNF.Params] {α : ConNF.Λ} {β : ConNF.Λ} {γ : ConNF.Λ} {δ : ConNF.Λ} {ε : ConNF.Λ} (hβ : β < α) (hγ : γ < β) (hδ : δ < γ) (hε : ε < δ) :
                          Equations
                          • One or more equations did not get rendered due to their size.
                          Instances For