Documentation

LeanPool.ZFLean.Sum

LeanPool.ZFLean.Sum #

Imported Lean Pool material for LeanPool.ZFLean.Sum.

def ZFSet.Sum (A B : ZFSet.{u_1}) :
Type (u_1 + 1)

Imported ZFLean declaration.

Equations
Instances For

    Imported ZFLean declaration.

    Equations
    Instances For
      def ZFSet.Sum.inl {A B : ZFSet.{u_1}} (a : ↥A) :
      A ⊎ B

      Imported ZFLean declaration.

      Equations
      Instances For
        def ZFSet.Sum.inr {A B : ZFSet.{u_1}} (b : ↥B) :
        A ⊎ B

        Imported ZFLean declaration.

        Equations
        Instances For
          theorem ZFSet.Sum.inl.injEq {A B : ZFSet.{u_1}} {x y : ↥A} :
          inl x = inl y ↔ x = y
          theorem ZFSet.Sum.inr.injEq {A B : ZFSet.{u_1}} {x y : ↥B} :
          inr x = inr y ↔ x = y
          theorem ZFSet.Sum.cases {A B : ZFSet.{u_1}} (x : A ⊎ B) :
          (↑x).π₂ ∈ A ∨ (↑x).π₂ ∈ B
          noncomputable def ZFSet.Sum.casesOn {A B : ZFSet.{u}} {motive : A ⊎ B → Sort v} (x : A ⊎ B) (inl : (val : ↥A) → motive (inl val)) (inr : (val : ↥B) → motive (inr val)) :
          motive x

          Imported ZFLean declaration.

          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            @[simp]
            theorem ZFSet.Sum.casesOn_of_inl {A B : ZFSet.{u_2}} {motive : A ⊎ B → Sort u_1} (a : ↥A) (inl_case : (val : ↥A) → motive (inl val)) (inr_case : (val : ↥B) → motive (inr val)) :
            casesOn (inl a) inl_case inr_case = inl_case a
            @[simp]
            theorem ZFSet.Sum.casesOn_of_inr {A B : ZFSet.{u_2}} {motive : A ⊎ B → Sort u_1} (a : ↥B) (inl_case : (val : ↥A) → motive (inl val)) (inr_case : (val : ↥B) → motive (inr val)) :
            casesOn (inr a) inl_case inr_case = inr_case a
            noncomputable def ZFSet.Sum.instEquivSumSubtypeMem {A B : ZFSet.{u_1}} :
            A ⊎ B ≃ ↥A ⊕ ↥B

            The equivalence between the ZF disjoint sum and Lean's subtype sum.

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              def ZFSet.Option (S : ZFSet.{u_1}) :
              Type (u_1 + 1)

              Imported ZFLean declaration.

              Equations
              Instances For
                @[reducible, inline]

                Imported ZFLean declaration.

                Equations
                Instances For
                  @[reducible, inline]
                  abbrev ZFSet.Option.some {S : ZFSet.{u_1}} (x : ↥S) :

                  Imported ZFLean declaration.

                  Equations
                  Instances For
                    theorem ZFSet.Option.casesOn {S : ZFSet.{u_1}} (x : S.Option) :
                    x = none ∨ ∃ (y : ↥S), x = some y
                    @[reducible, inline]
                    noncomputable abbrev ZFSet.Option.the {S : ZFSet.{u_1}} (S_nemp : S ≠ ∅) (x : S.Option) :
                    ↥S

                    Imported ZFLean declaration.

                    Equations
                    Instances For
                      noncomputable def ZFSet.Option.into {T : ZFSet.{u_1}} :

                      Convert a set-theoretic option to a Lean option of members of the underlying set.

                      Equations
                      Instances For
                        theorem ZFSet.Option.some.injEq {T : ZFSet.{u_1}} {x y : ↥T} :
                        some x = some y ↔ x = y
                        theorem ZFSet.Option.some_val_injEq {T : ZFSet.{u_1}} {x y : ↥T} :
                        ↑(some x) = ↑(some y) ↔ x = y
                        theorem ZFSet.Option.ne_none_is_some {T : ZFSet.{u_1}} (x : T.Option) :
                        x ≠ none → ∃ (y : ↥T), x = some y

                        Imported ZFLean declaration.

                        Equations
                        Instances For

                          The equivalence between ZF options and Lean options over a subtype.

                          Equations
                          Instances For

                            Convert a Lean option of set members to the set-theoretic option encoding.

                            Equations
                            Instances For

                              Imported ZFLean declaration.

                              Equations
                              Instances For

                                The equivalence between Lean options over a subtype and ZF options.

                                Equations
                                Instances For
                                  @[reducible, inline]

                                  Imported ZFLean declaration.

                                  Equations
                                  Instances For
                                    noncomputable def ZFSet.Option.flift {A B : ZFSet.{u_1}} (f : ZFSet.{u_1}) (hf : A.IsFunc B f := by zfun) :

                                    Imported ZFLean declaration.

                                    Equations
                                    • One or more equations did not get rendered due to their size.
                                    Instances For
                                      theorem ZFSet.Option.flift_bijective {f A B : ZFSet.{u_1}} (hf : A.IsFunc B f) :
                                      (↑(flift f hf)).IsBijective ⋯ ↔ f.IsBijective hf