| Intuitionistic Logic Explorer Theorem List (p. 72 of 158)  | < Previous Next > | |
| Bad symbols? Try the
 GIF version.  | 
||
| 
 Mirrors > Metamath Home Page > ILE Home Page > Theorem List Contents > Recent Proofs This page: Page List  | 
||
| Type | Label | Description | 
|---|---|---|
| Statement | ||
| Theorem | ordiso2 7101 | Generalize ordiso 7102 to proper classes. (Contributed by Mario Carneiro, 24-Jun-2015.) | 
| ⊢ ((𝐹 Isom E , E (𝐴, 𝐵) ∧ Ord 𝐴 ∧ Ord 𝐵) → 𝐴 = 𝐵) | ||
| Theorem | ordiso 7102* | Order-isomorphic ordinal numbers are equal. (Contributed by Jeff Hankins, 16-Oct-2009.) (Proof shortened by Mario Carneiro, 24-Jun-2015.) | 
| ⊢ ((𝐴 ∈ On ∧ 𝐵 ∈ On) → (𝐴 = 𝐵 ↔ ∃𝑓 𝑓 Isom E , E (𝐴, 𝐵))) | ||
| Syntax | cdju 7103 | Extend class notation to include disjoint union of two classes. | 
| class (𝐴 ⊔ 𝐵) | ||
| Definition | df-dju 7104 | Disjoint union of two classes. This is a way of creating a class which contains elements corresponding to each element of 𝐴 or 𝐵, tagging each one with whether it came from 𝐴 or 𝐵. (Contributed by Jim Kingdon, 20-Jun-2022.) | 
| ⊢ (𝐴 ⊔ 𝐵) = (({∅} × 𝐴) ∪ ({1o} × 𝐵)) | ||
| Theorem | djueq12 7105 | Equality theorem for disjoint union. (Contributed by Jim Kingdon, 23-Jun-2022.) | 
| ⊢ ((𝐴 = 𝐵 ∧ 𝐶 = 𝐷) → (𝐴 ⊔ 𝐶) = (𝐵 ⊔ 𝐷)) | ||
| Theorem | djueq1 7106 | Equality theorem for disjoint union. (Contributed by Jim Kingdon, 23-Jun-2022.) | 
| ⊢ (𝐴 = 𝐵 → (𝐴 ⊔ 𝐶) = (𝐵 ⊔ 𝐶)) | ||
| Theorem | djueq2 7107 | Equality theorem for disjoint union. (Contributed by Jim Kingdon, 23-Jun-2022.) | 
| ⊢ (𝐴 = 𝐵 → (𝐶 ⊔ 𝐴) = (𝐶 ⊔ 𝐵)) | ||
| Theorem | nfdju 7108 | Bound-variable hypothesis builder for disjoint union. (Contributed by Jim Kingdon, 23-Jun-2022.) | 
| ⊢ Ⅎ𝑥𝐴 & ⊢ Ⅎ𝑥𝐵 ⇒ ⊢ Ⅎ𝑥(𝐴 ⊔ 𝐵) | ||
| Theorem | djuex 7109 | The disjoint union of sets is a set. See also the more precise djuss 7136. (Contributed by AV, 28-Jun-2022.) | 
| ⊢ ((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) → (𝐴 ⊔ 𝐵) ∈ V) | ||
| Theorem | djuexb 7110 | The disjoint union of two classes is a set iff both classes are sets. (Contributed by Jim Kingdon, 6-Sep-2023.) | 
| ⊢ ((𝐴 ∈ V ∧ 𝐵 ∈ V) ↔ (𝐴 ⊔ 𝐵) ∈ V) | ||
In this section, we define the left and right injections of a disjoint union and prove their main properties. These injections are restrictions of the "template" functions inl and inr, which appear in most applications in the form (inl ↾ 𝐴) and (inr ↾ 𝐵).  | ||
| Syntax | cinl 7111 | Extend class notation to include left injection of a disjoint union. | 
| class inl | ||
| Syntax | cinr 7112 | Extend class notation to include right injection of a disjoint union. | 
| class inr | ||
| Definition | df-inl 7113 | Left injection of a disjoint union. (Contributed by Mario Carneiro, 21-Jun-2022.) | 
| ⊢ inl = (𝑥 ∈ V ↦ 〈∅, 𝑥〉) | ||
| Definition | df-inr 7114 | Right injection of a disjoint union. (Contributed by Mario Carneiro, 21-Jun-2022.) | 
| ⊢ inr = (𝑥 ∈ V ↦ 〈1o, 𝑥〉) | ||
| Theorem | djulclr 7115 | Left closure of disjoint union. (Contributed by Jim Kingdon, 21-Jun-2022.) (Revised by BJ, 6-Jul-2022.) | 
| ⊢ (𝐶 ∈ 𝐴 → ((inl ↾ 𝐴)‘𝐶) ∈ (𝐴 ⊔ 𝐵)) | ||
| Theorem | djurclr 7116 | Right closure of disjoint union. (Contributed by Jim Kingdon, 21-Jun-2022.) (Revised by BJ, 6-Jul-2022.) | 
| ⊢ (𝐶 ∈ 𝐵 → ((inr ↾ 𝐵)‘𝐶) ∈ (𝐴 ⊔ 𝐵)) | ||
| Theorem | djulcl 7117 | Left closure of disjoint union. (Contributed by Jim Kingdon, 21-Jun-2022.) | 
| ⊢ (𝐶 ∈ 𝐴 → (inl‘𝐶) ∈ (𝐴 ⊔ 𝐵)) | ||
| Theorem | djurcl 7118 | Right closure of disjoint union. (Contributed by Jim Kingdon, 21-Jun-2022.) | 
| ⊢ (𝐶 ∈ 𝐵 → (inr‘𝐶) ∈ (𝐴 ⊔ 𝐵)) | ||
| Theorem | djuf1olem 7119* | Lemma for djulf1o 7124 and djurf1o 7125. (Contributed by BJ and Jim Kingdon, 4-Jul-2022.) | 
| ⊢ 𝑋 ∈ V & ⊢ 𝐹 = (𝑥 ∈ 𝐴 ↦ 〈𝑋, 𝑥〉) ⇒ ⊢ 𝐹:𝐴–1-1-onto→({𝑋} × 𝐴) | ||
| Theorem | djuf1olemr 7120* | Lemma for djulf1or 7122 and djurf1or 7123. For a version of this lemma with 𝐹 defined on 𝐴 and no restriction in the conclusion, see djuf1olem 7119. (Contributed by BJ and Jim Kingdon, 4-Jul-2022.) | 
| ⊢ 𝑋 ∈ V & ⊢ 𝐹 = (𝑥 ∈ V ↦ 〈𝑋, 𝑥〉) ⇒ ⊢ (𝐹 ↾ 𝐴):𝐴–1-1-onto→({𝑋} × 𝐴) | ||
| Theorem | djulclb 7121 | Left biconditional closure of disjoint union. (Contributed by Jim Kingdon, 2-Jul-2022.) | 
| ⊢ (𝐶 ∈ 𝑉 → (𝐶 ∈ 𝐴 ↔ (inl‘𝐶) ∈ (𝐴 ⊔ 𝐵))) | ||
| Theorem | djulf1or 7122 | The left injection function on all sets is one to one and onto. (Contributed by BJ and Jim Kingdon, 22-Jun-2022.) | 
| ⊢ (inl ↾ 𝐴):𝐴–1-1-onto→({∅} × 𝐴) | ||
| Theorem | djurf1or 7123 | The right injection function on all sets is one to one and onto. (Contributed by BJ and Jim Kingdon, 22-Jun-2022.) | 
| ⊢ (inr ↾ 𝐴):𝐴–1-1-onto→({1o} × 𝐴) | ||
| Theorem | djulf1o 7124 | The left injection function on all sets is one to one and onto. (Contributed by Jim Kingdon, 22-Jun-2022.) | 
| ⊢ inl:V–1-1-onto→({∅} × V) | ||
| Theorem | djurf1o 7125 | The right injection function on all sets is one to one and onto. (Contributed by Jim Kingdon, 22-Jun-2022.) | 
| ⊢ inr:V–1-1-onto→({1o} × V) | ||
| Theorem | inresflem 7126* | Lemma for inlresf1 7127 and inrresf1 7128. (Contributed by BJ, 4-Jul-2022.) | 
| ⊢ 𝐹:𝐴–1-1-onto→({𝑋} × 𝐴) & ⊢ (𝑥 ∈ 𝐴 → (𝐹‘𝑥) ∈ 𝐵) ⇒ ⊢ 𝐹:𝐴–1-1→𝐵 | ||
| Theorem | inlresf1 7127 | The left injection restricted to the left class of a disjoint union is an injective function from the left class into the disjoint union. (Contributed by AV, 28-Jun-2022.) | 
| ⊢ (inl ↾ 𝐴):𝐴–1-1→(𝐴 ⊔ 𝐵) | ||
| Theorem | inrresf1 7128 | The right injection restricted to the right class of a disjoint union is an injective function from the right class into the disjoint union. (Contributed by AV, 28-Jun-2022.) | 
| ⊢ (inr ↾ 𝐵):𝐵–1-1→(𝐴 ⊔ 𝐵) | ||
| Theorem | djuinr 7129 | The ranges of any left and right injections are disjoint. Remark: the extra generality offered by the two restrictions makes the theorem more readily usable (e.g., by djudom 7159 and djufun 7170) while the simpler statement ⊢ (ran inl ∩ ran inr) = ∅ is easily recovered from it by substituting V for both 𝐴 and 𝐵 as done in casefun 7151). (Contributed by BJ and Jim Kingdon, 21-Jun-2022.) | 
| ⊢ (ran (inl ↾ 𝐴) ∩ ran (inr ↾ 𝐵)) = ∅ | ||
| Theorem | djuin 7130 | The images of any classes under right and left injection produce disjoint sets. (Contributed by Jim Kingdon, 21-Jun-2022.) (Proof shortened by BJ, 9-Jul-2023.) | 
| ⊢ ((inl “ 𝐴) ∩ (inr “ 𝐵)) = ∅ | ||
| Theorem | inl11 7131 | Left injection is one-to-one. (Contributed by Jim Kingdon, 12-Jul-2023.) | 
| ⊢ ((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) → ((inl‘𝐴) = (inl‘𝐵) ↔ 𝐴 = 𝐵)) | ||
| Theorem | djuunr 7132 | The disjoint union of two classes is the union of the images of those two classes under right and left injection. (Contributed by Jim Kingdon, 22-Jun-2022.) (Proof shortened by BJ, 6-Jul-2022.) | 
| ⊢ (ran (inl ↾ 𝐴) ∪ ran (inr ↾ 𝐵)) = (𝐴 ⊔ 𝐵) | ||
| Theorem | djuun 7133 | The disjoint union of two classes is the union of the images of those two classes under right and left injection. (Contributed by Jim Kingdon, 22-Jun-2022.) (Proof shortened by BJ, 9-Jul-2023.) | 
| ⊢ ((inl “ 𝐴) ∪ (inr “ 𝐵)) = (𝐴 ⊔ 𝐵) | ||
| Theorem | eldju 7134* | Element of a disjoint union. (Contributed by BJ and Jim Kingdon, 23-Jun-2022.) | 
| ⊢ (𝐶 ∈ (𝐴 ⊔ 𝐵) ↔ (∃𝑥 ∈ 𝐴 𝐶 = ((inl ↾ 𝐴)‘𝑥) ∨ ∃𝑥 ∈ 𝐵 𝐶 = ((inr ↾ 𝐵)‘𝑥))) | ||
| Theorem | djur 7135* | A member of a disjoint union can be mapped from one of the classes which produced it. (Contributed by Jim Kingdon, 23-Jun-2022.) Upgrade implication to biconditional and shorten proof. (Revised by BJ, 14-Jul-2023.) | 
| ⊢ (𝐶 ∈ (𝐴 ⊔ 𝐵) ↔ (∃𝑥 ∈ 𝐴 𝐶 = (inl‘𝑥) ∨ ∃𝑥 ∈ 𝐵 𝐶 = (inr‘𝑥))) | ||
| Theorem | djuss 7136 | A disjoint union is a subset of a Cartesian product. (Contributed by AV, 25-Jun-2022.) | 
| ⊢ (𝐴 ⊔ 𝐵) ⊆ ({∅, 1o} × (𝐴 ∪ 𝐵)) | ||
| Theorem | eldju1st 7137 | The first component of an element of a disjoint union is either ∅ or 1o. (Contributed by AV, 26-Jun-2022.) | 
| ⊢ (𝑋 ∈ (𝐴 ⊔ 𝐵) → ((1st ‘𝑋) = ∅ ∨ (1st ‘𝑋) = 1o)) | ||
| Theorem | eldju2ndl 7138 | The second component of an element of a disjoint union is an element of the left class of the disjoint union if its first component is the empty set. (Contributed by AV, 26-Jun-2022.) | 
| ⊢ ((𝑋 ∈ (𝐴 ⊔ 𝐵) ∧ (1st ‘𝑋) = ∅) → (2nd ‘𝑋) ∈ 𝐴) | ||
| Theorem | eldju2ndr 7139 | The second component of an element of a disjoint union is an element of the right class of the disjoint union if its first component is not the empty set. (Contributed by AV, 26-Jun-2022.) | 
| ⊢ ((𝑋 ∈ (𝐴 ⊔ 𝐵) ∧ (1st ‘𝑋) ≠ ∅) → (2nd ‘𝑋) ∈ 𝐵) | ||
| Theorem | 1stinl 7140 | The first component of the value of a left injection is the empty set. (Contributed by AV, 27-Jun-2022.) | 
| ⊢ (𝑋 ∈ 𝑉 → (1st ‘(inl‘𝑋)) = ∅) | ||
| Theorem | 2ndinl 7141 | The second component of the value of a left injection is its argument. (Contributed by AV, 27-Jun-2022.) | 
| ⊢ (𝑋 ∈ 𝑉 → (2nd ‘(inl‘𝑋)) = 𝑋) | ||
| Theorem | 1stinr 7142 | The first component of the value of a right injection is 1o. (Contributed by AV, 27-Jun-2022.) | 
| ⊢ (𝑋 ∈ 𝑉 → (1st ‘(inr‘𝑋)) = 1o) | ||
| Theorem | 2ndinr 7143 | The second component of the value of a right injection is its argument. (Contributed by AV, 27-Jun-2022.) | 
| ⊢ (𝑋 ∈ 𝑉 → (2nd ‘(inr‘𝑋)) = 𝑋) | ||
| Theorem | djune 7144 | Left and right injection never produce equal values. (Contributed by Jim Kingdon, 2-Jul-2022.) | 
| ⊢ ((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) → (inl‘𝐴) ≠ (inr‘𝐵)) | ||
| Theorem | updjudhf 7145* | The mapping of an element of the disjoint union to the value of the corresponding function is a function. (Contributed by AV, 26-Jun-2022.) | 
| ⊢ (𝜑 → 𝐹:𝐴⟶𝐶) & ⊢ (𝜑 → 𝐺:𝐵⟶𝐶) & ⊢ 𝐻 = (𝑥 ∈ (𝐴 ⊔ 𝐵) ↦ if((1st ‘𝑥) = ∅, (𝐹‘(2nd ‘𝑥)), (𝐺‘(2nd ‘𝑥)))) ⇒ ⊢ (𝜑 → 𝐻:(𝐴 ⊔ 𝐵)⟶𝐶) | ||
| Theorem | updjudhcoinlf 7146* | The composition of the mapping of an element of the disjoint union to the value of the corresponding function and the left injection equals the first function. (Contributed by AV, 27-Jun-2022.) | 
| ⊢ (𝜑 → 𝐹:𝐴⟶𝐶) & ⊢ (𝜑 → 𝐺:𝐵⟶𝐶) & ⊢ 𝐻 = (𝑥 ∈ (𝐴 ⊔ 𝐵) ↦ if((1st ‘𝑥) = ∅, (𝐹‘(2nd ‘𝑥)), (𝐺‘(2nd ‘𝑥)))) ⇒ ⊢ (𝜑 → (𝐻 ∘ (inl ↾ 𝐴)) = 𝐹) | ||
| Theorem | updjudhcoinrg 7147* | The composition of the mapping of an element of the disjoint union to the value of the corresponding function and the right injection equals the second function. (Contributed by AV, 27-Jun-2022.) | 
| ⊢ (𝜑 → 𝐹:𝐴⟶𝐶) & ⊢ (𝜑 → 𝐺:𝐵⟶𝐶) & ⊢ 𝐻 = (𝑥 ∈ (𝐴 ⊔ 𝐵) ↦ if((1st ‘𝑥) = ∅, (𝐹‘(2nd ‘𝑥)), (𝐺‘(2nd ‘𝑥)))) ⇒ ⊢ (𝜑 → (𝐻 ∘ (inr ↾ 𝐵)) = 𝐺) | ||
| Theorem | updjud 7148* | Universal property of the disjoint union. (Proposed by BJ, 25-Jun-2022.) (Contributed by AV, 28-Jun-2022.) | 
| ⊢ (𝜑 → 𝐹:𝐴⟶𝐶) & ⊢ (𝜑 → 𝐺:𝐵⟶𝐶) & ⊢ (𝜑 → 𝐴 ∈ 𝑉) & ⊢ (𝜑 → 𝐵 ∈ 𝑊) ⇒ ⊢ (𝜑 → ∃!ℎ(ℎ:(𝐴 ⊔ 𝐵)⟶𝐶 ∧ (ℎ ∘ (inl ↾ 𝐴)) = 𝐹 ∧ (ℎ ∘ (inr ↾ 𝐵)) = 𝐺)) | ||
| Syntax | cdjucase 7149 | Syntax for the "case" construction. | 
| class case(𝑅, 𝑆) | ||
| Definition | df-case 7150 | The "case" construction: if 𝐹:𝐴⟶𝑋 and 𝐺:𝐵⟶𝑋 are functions, then case(𝐹, 𝐺):(𝐴 ⊔ 𝐵)⟶𝑋 is the natural function obtained by a definition by cases, hence the name. It is the unique function whose existence is asserted by the universal property of disjoint unions updjud 7148. The definition is adapted to make sense also for binary relations (where the universal property also holds). (Contributed by MC and BJ, 10-Jul-2022.) | 
| ⊢ case(𝑅, 𝑆) = ((𝑅 ∘ ◡inl) ∪ (𝑆 ∘ ◡inr)) | ||
| Theorem | casefun 7151 | The "case" construction of two functions is a function. (Contributed by BJ, 10-Jul-2022.) | 
| ⊢ (𝜑 → Fun 𝐹) & ⊢ (𝜑 → Fun 𝐺) ⇒ ⊢ (𝜑 → Fun case(𝐹, 𝐺)) | ||
| Theorem | casedm 7152 | The domain of the "case" construction is the disjoint union of the domains. TODO (although less important): ⊢ ran case(𝐹, 𝐺) = (ran 𝐹 ∪ ran 𝐺). (Contributed by BJ, 10-Jul-2022.) | 
| ⊢ dom case(𝐹, 𝐺) = (dom 𝐹 ⊔ dom 𝐺) | ||
| Theorem | caserel 7153 | The "case" construction of two relations is a relation, with bounds on its domain and codomain. Typically, the "case" construction is used when both relations have a common codomain. (Contributed by BJ, 10-Jul-2022.) | 
| ⊢ case(𝑅, 𝑆) ⊆ ((dom 𝑅 ⊔ dom 𝑆) × (ran 𝑅 ∪ ran 𝑆)) | ||
| Theorem | casef 7154 | The "case" construction of two functions is a function on the disjoint union of their domains. (Contributed by BJ, 10-Jul-2022.) | 
| ⊢ (𝜑 → 𝐹:𝐴⟶𝑋) & ⊢ (𝜑 → 𝐺:𝐵⟶𝑋) ⇒ ⊢ (𝜑 → case(𝐹, 𝐺):(𝐴 ⊔ 𝐵)⟶𝑋) | ||
| Theorem | caseinj 7155 | The "case" construction of two injective relations with disjoint ranges is an injective relation. (Contributed by BJ, 10-Jul-2022.) | 
| ⊢ (𝜑 → Fun ◡𝑅) & ⊢ (𝜑 → Fun ◡𝑆) & ⊢ (𝜑 → (ran 𝑅 ∩ ran 𝑆) = ∅) ⇒ ⊢ (𝜑 → Fun ◡case(𝑅, 𝑆)) | ||
| Theorem | casef1 7156 | The "case" construction of two injective functions with disjoint ranges is an injective function. (Contributed by BJ, 10-Jul-2022.) | 
| ⊢ (𝜑 → 𝐹:𝐴–1-1→𝑋) & ⊢ (𝜑 → 𝐺:𝐵–1-1→𝑋) & ⊢ (𝜑 → (ran 𝐹 ∩ ran 𝐺) = ∅) ⇒ ⊢ (𝜑 → case(𝐹, 𝐺):(𝐴 ⊔ 𝐵)–1-1→𝑋) | ||
| Theorem | caseinl 7157 | Applying the "case" construction to a left injection. (Contributed by Jim Kingdon, 15-Mar-2023.) | 
| ⊢ (𝜑 → 𝐹 Fn 𝐵) & ⊢ (𝜑 → Fun 𝐺) & ⊢ (𝜑 → 𝐴 ∈ 𝐵) ⇒ ⊢ (𝜑 → (case(𝐹, 𝐺)‘(inl‘𝐴)) = (𝐹‘𝐴)) | ||
| Theorem | caseinr 7158 | Applying the "case" construction to a right injection. (Contributed by Jim Kingdon, 12-Jul-2023.) | 
| ⊢ (𝜑 → Fun 𝐹) & ⊢ (𝜑 → 𝐺 Fn 𝐵) & ⊢ (𝜑 → 𝐴 ∈ 𝐵) ⇒ ⊢ (𝜑 → (case(𝐹, 𝐺)‘(inr‘𝐴)) = (𝐺‘𝐴)) | ||
| Theorem | djudom 7159 | Dominance law for disjoint union. (Contributed by Jim Kingdon, 25-Jul-2022.) | 
| ⊢ ((𝐴 ≼ 𝐵 ∧ 𝐶 ≼ 𝐷) → (𝐴 ⊔ 𝐶) ≼ (𝐵 ⊔ 𝐷)) | ||
| Theorem | omp1eomlem 7160* | Lemma for omp1eom 7161. (Contributed by Jim Kingdon, 11-Jul-2023.) | 
| ⊢ 𝐹 = (𝑥 ∈ ω ↦ if(𝑥 = ∅, (inr‘𝑥), (inl‘∪ 𝑥))) & ⊢ 𝑆 = (𝑥 ∈ ω ↦ suc 𝑥) & ⊢ 𝐺 = case(𝑆, ( I ↾ 1o)) ⇒ ⊢ 𝐹:ω–1-1-onto→(ω ⊔ 1o) | ||
| Theorem | omp1eom 7161 | Adding one to ω. (Contributed by Jim Kingdon, 10-Jul-2023.) | 
| ⊢ (ω ⊔ 1o) ≈ ω | ||
| Theorem | endjusym 7162 | Reversing right and left operands of a disjoint union produces an equinumerous result. (Contributed by Jim Kingdon, 10-Jul-2023.) | 
| ⊢ ((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) → (𝐴 ⊔ 𝐵) ≈ (𝐵 ⊔ 𝐴)) | ||
| Theorem | eninl 7163 | Equinumerosity of a set and its image under left injection. (Contributed by Jim Kingdon, 30-Jul-2023.) | 
| ⊢ (𝐴 ∈ 𝑉 → (inl “ 𝐴) ≈ 𝐴) | ||
| Theorem | eninr 7164 | Equinumerosity of a set and its image under right injection. (Contributed by Jim Kingdon, 30-Jul-2023.) | 
| ⊢ (𝐴 ∈ 𝑉 → (inr “ 𝐴) ≈ 𝐴) | ||
| Theorem | difinfsnlem 7165* | Lemma for difinfsn 7166. The case where we need to swap 𝐵 and (inr‘∅) in building the mapping 𝐺. (Contributed by Jim Kingdon, 9-Aug-2023.) | 
| ⊢ (𝜑 → ∀𝑥 ∈ 𝐴 ∀𝑦 ∈ 𝐴 DECID 𝑥 = 𝑦) & ⊢ (𝜑 → 𝐵 ∈ 𝐴) & ⊢ (𝜑 → 𝐹:(ω ⊔ 1o)–1-1→𝐴) & ⊢ (𝜑 → (𝐹‘(inr‘∅)) ≠ 𝐵) & ⊢ 𝐺 = (𝑛 ∈ ω ↦ if((𝐹‘(inl‘𝑛)) = 𝐵, (𝐹‘(inr‘∅)), (𝐹‘(inl‘𝑛)))) ⇒ ⊢ (𝜑 → 𝐺:ω–1-1→(𝐴 ∖ {𝐵})) | ||
| Theorem | difinfsn 7166* | An infinite set minus one element is infinite. We require that the set has decidable equality. (Contributed by Jim Kingdon, 8-Aug-2023.) | 
| ⊢ ((∀𝑥 ∈ 𝐴 ∀𝑦 ∈ 𝐴 DECID 𝑥 = 𝑦 ∧ ω ≼ 𝐴 ∧ 𝐵 ∈ 𝐴) → ω ≼ (𝐴 ∖ {𝐵})) | ||
| Theorem | difinfinf 7167* | An infinite set minus a finite subset is infinite. We require that the set has decidable equality. (Contributed by Jim Kingdon, 8-Aug-2023.) | 
| ⊢ (((∀𝑥 ∈ 𝐴 ∀𝑦 ∈ 𝐴 DECID 𝑥 = 𝑦 ∧ ω ≼ 𝐴) ∧ (𝐵 ⊆ 𝐴 ∧ 𝐵 ∈ Fin)) → ω ≼ (𝐴 ∖ 𝐵)) | ||
| Syntax | cdjud 7168 | Syntax for the domain-disjoint-union of two relations. | 
| class (𝑅 ⊔d 𝑆) | ||
| Definition | df-djud 7169 | 
The "domain-disjoint-union" of two relations: if 𝑅 ⊆ (𝐴 × 𝑋) and
     𝑆
⊆ (𝐵 × 𝑋) are two binary
relations, then (𝑅 ⊔d 𝑆) is the
     binary relation from (𝐴 ⊔ 𝐵) to 𝑋 having the universal
     property of disjoint unions (see updjud 7148 in the case of functions).
 Remark: the restrictions to dom 𝑅 (resp. dom 𝑆) are not necessary since extra stuff would be thrown away in the post-composition with 𝑅 (resp. 𝑆), as in df-case 7150, but they are explicitly written for clarity. (Contributed by MC and BJ, 10-Jul-2022.)  | 
| ⊢ (𝑅 ⊔d 𝑆) = ((𝑅 ∘ ◡(inl ↾ dom 𝑅)) ∪ (𝑆 ∘ ◡(inr ↾ dom 𝑆))) | ||
| Theorem | djufun 7170 | The "domain-disjoint-union" of two functions is a function. (Contributed by BJ, 10-Jul-2022.) | 
| ⊢ (𝜑 → Fun 𝐹) & ⊢ (𝜑 → Fun 𝐺) ⇒ ⊢ (𝜑 → Fun (𝐹 ⊔d 𝐺)) | ||
| Theorem | djudm 7171 | The domain of the "domain-disjoint-union" is the disjoint union of the domains. Remark: its range is the (standard) union of the ranges. (Contributed by BJ, 10-Jul-2022.) | 
| ⊢ dom (𝐹 ⊔d 𝐺) = (dom 𝐹 ⊔ dom 𝐺) | ||
| Theorem | djuinj 7172 | The "domain-disjoint-union" of two injective relations with disjoint ranges is an injective relation. (Contributed by BJ, 10-Jul-2022.) | 
| ⊢ (𝜑 → Fun ◡𝑅) & ⊢ (𝜑 → Fun ◡𝑆) & ⊢ (𝜑 → (ran 𝑅 ∩ ran 𝑆) = ∅) ⇒ ⊢ (𝜑 → Fun ◡(𝑅 ⊔d 𝑆)) | ||
| Theorem | 0ct 7173 | The empty set is countable. Remark of [BauerSwan], p. 14:3 which also has the definition of countable used here. (Contributed by Jim Kingdon, 13-Mar-2023.) | 
| ⊢ ∃𝑓 𝑓:ω–onto→(∅ ⊔ 1o) | ||
| Theorem | ctmlemr 7174* | Lemma for ctm 7175. One of the directions of the biconditional. (Contributed by Jim Kingdon, 16-Mar-2023.) | 
| ⊢ (∃𝑥 𝑥 ∈ 𝐴 → (∃𝑓 𝑓:ω–onto→𝐴 → ∃𝑓 𝑓:ω–onto→(𝐴 ⊔ 1o))) | ||
| Theorem | ctm 7175* | Two equivalent definitions of countable for an inhabited set. Remark of [BauerSwan], p. 14:3. (Contributed by Jim Kingdon, 13-Mar-2023.) | 
| ⊢ (∃𝑥 𝑥 ∈ 𝐴 → (∃𝑓 𝑓:ω–onto→(𝐴 ⊔ 1o) ↔ ∃𝑓 𝑓:ω–onto→𝐴)) | ||
| Theorem | ctssdclemn0 7176* | Lemma for ctssdc 7179. The ¬ ∅ ∈ 𝑆 case. (Contributed by Jim Kingdon, 16-Aug-2023.) | 
| ⊢ (𝜑 → 𝑆 ⊆ ω) & ⊢ (𝜑 → ∀𝑛 ∈ ω DECID 𝑛 ∈ 𝑆) & ⊢ (𝜑 → 𝐹:𝑆–onto→𝐴) & ⊢ (𝜑 → ¬ ∅ ∈ 𝑆) ⇒ ⊢ (𝜑 → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o)) | ||
| Theorem | ctssdccl 7177* | A mapping from a decidable subset of the natural numbers onto a countable set. This is similar to one direction of ctssdc 7179 but expressed in terms of classes rather than ∃. (Contributed by Jim Kingdon, 30-Oct-2023.) | 
| ⊢ (𝜑 → 𝐹:ω–onto→(𝐴 ⊔ 1o)) & ⊢ 𝑆 = {𝑥 ∈ ω ∣ (𝐹‘𝑥) ∈ (inl “ 𝐴)} & ⊢ 𝐺 = (◡inl ∘ 𝐹) ⇒ ⊢ (𝜑 → (𝑆 ⊆ ω ∧ 𝐺:𝑆–onto→𝐴 ∧ ∀𝑛 ∈ ω DECID 𝑛 ∈ 𝑆)) | ||
| Theorem | ctssdclemr 7178* | Lemma for ctssdc 7179. Showing that our usual definition of countable implies the alternate one. (Contributed by Jim Kingdon, 16-Aug-2023.) | 
| ⊢ (∃𝑓 𝑓:ω–onto→(𝐴 ⊔ 1o) → ∃𝑠(𝑠 ⊆ ω ∧ ∃𝑓 𝑓:𝑠–onto→𝐴 ∧ ∀𝑛 ∈ ω DECID 𝑛 ∈ 𝑠)) | ||
| Theorem | ctssdc 7179* | A set is countable iff there is a surjection from a decidable subset of the natural numbers onto it. The decidability condition is needed as shown at ctssexmid 7216. (Contributed by Jim Kingdon, 15-Aug-2023.) | 
| ⊢ (∃𝑠(𝑠 ⊆ ω ∧ ∃𝑓 𝑓:𝑠–onto→𝐴 ∧ ∀𝑛 ∈ ω DECID 𝑛 ∈ 𝑠) ↔ ∃𝑓 𝑓:ω–onto→(𝐴 ⊔ 1o)) | ||
| Theorem | enumctlemm 7180* | Lemma for enumct 7181. The case where 𝑁 is greater than zero. (Contributed by Jim Kingdon, 13-Mar-2023.) | 
| ⊢ (𝜑 → 𝐹:𝑁–onto→𝐴) & ⊢ (𝜑 → 𝑁 ∈ ω) & ⊢ (𝜑 → ∅ ∈ 𝑁) & ⊢ 𝐺 = (𝑘 ∈ ω ↦ if(𝑘 ∈ 𝑁, (𝐹‘𝑘), (𝐹‘∅))) ⇒ ⊢ (𝜑 → 𝐺:ω–onto→𝐴) | ||
| Theorem | enumct 7181* | A finitely enumerable set is countable. Lemma 8.1.14 of [AczelRathjen], p. 73 (except that our definition of countable does not require the set to be inhabited). "Finitely enumerable" is defined as ∃𝑛 ∈ ω∃𝑓𝑓:𝑛–onto→𝐴 per Definition 8.1.4 of [AczelRathjen], p. 71 and "countable" is defined as ∃𝑔𝑔:ω–onto→(𝐴 ⊔ 1o) per [BauerSwan], p. 14:3. (Contributed by Jim Kingdon, 13-Mar-2023.) | 
| ⊢ (∃𝑛 ∈ ω ∃𝑓 𝑓:𝑛–onto→𝐴 → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o)) | ||
| Theorem | finct 7182* | A finite set is countable. (Contributed by Jim Kingdon, 17-Mar-2023.) | 
| ⊢ (𝐴 ∈ Fin → ∃𝑔 𝑔:ω–onto→(𝐴 ⊔ 1o)) | ||
| Theorem | omct 7183 | ω is countable. (Contributed by Jim Kingdon, 23-Dec-2023.) | 
| ⊢ ∃𝑓 𝑓:ω–onto→(ω ⊔ 1o) | ||
| Theorem | ctfoex 7184* | A countable class is a set. (Contributed by Jim Kingdon, 25-Dec-2023.) | 
| ⊢ (∃𝑓 𝑓:ω–onto→(𝐴 ⊔ 1o) → 𝐴 ∈ V) | ||
This section introduces the one-point compactification of the set of natural numbers, introduced by Escardo as the set of nonincreasing sequences on ω with values in 2o. The topological results justifying its name will be proved later.  | ||
| Syntax | xnninf 7185 | Set of nonincreasing sequences in 2o ↑𝑚 ω. | 
| class ℕ∞ | ||
| Definition | df-nninf 7186* | Define the set of nonincreasing sequences in 2o ↑𝑚 ω. Definition in Section 3.1 of [Pierik], p. 15. If we assumed excluded middle, this would be essentially the same as ℕ0* as defined at df-xnn0 9313 but in its absence the relationship between the two is more complicated. This definition would function much the same whether we used ω or ℕ0, but the former allows us to take advantage of 2o = {∅, 1o} (df2o3 6488) so we adopt it. (Contributed by Jim Kingdon, 14-Jul-2022.) | 
| ⊢ ℕ∞ = {𝑓 ∈ (2o ↑𝑚 ω) ∣ ∀𝑖 ∈ ω (𝑓‘suc 𝑖) ⊆ (𝑓‘𝑖)} | ||
| Theorem | nninfex 7187 | ℕ∞ is a set. (Contributed by Jim Kingdon, 10-Aug-2022.) | 
| ⊢ ℕ∞ ∈ V | ||
| Theorem | nninff 7188 | An element of ℕ∞ is a sequence of zeroes and ones. (Contributed by Jim Kingdon, 4-Aug-2022.) | 
| ⊢ (𝐴 ∈ ℕ∞ → 𝐴:ω⟶2o) | ||
| Theorem | nninfninc 7189 | All values beyond a zero in an ℕ∞ sequence are zero. This is another way of stating that elements of ℕ∞ are nonincreasing. (Contributed by Jim Kingdon, 12-Jul-2025.) | 
| ⊢ (𝜑 → 𝐴 ∈ ℕ∞) & ⊢ (𝜑 → 𝑋 ∈ ω) & ⊢ (𝜑 → 𝑌 ∈ ω) & ⊢ (𝜑 → 𝑋 ⊆ 𝑌) & ⊢ (𝜑 → (𝐴‘𝑋) = ∅) ⇒ ⊢ (𝜑 → (𝐴‘𝑌) = ∅) | ||
| Theorem | infnninf 7190 | The point at infinity in ℕ∞ is the constant sequence equal to 1o. Note that with our encoding of functions, that constant function can also be expressed as (ω × {1o}), as fconstmpt 4710 shows. (Contributed by Jim Kingdon, 14-Jul-2022.) Use maps-to notation. (Revised by BJ, 10-Aug-2024.) | 
| ⊢ (𝑖 ∈ ω ↦ 1o) ∈ ℕ∞ | ||
| Theorem | infnninfOLD 7191 | Obsolete version of infnninf 7190 as of 10-Aug-2024. (Contributed by Jim Kingdon, 14-Jul-2022.) (Proof modification is discouraged.) (New usage is discouraged.) | 
| ⊢ (ω × {1o}) ∈ ℕ∞ | ||
| Theorem | nnnninf 7192* | Elements of ℕ∞ corresponding to natural numbers. The natural number 𝑁 corresponds to a sequence of 𝑁 ones followed by zeroes. This can be strengthened to include infinity, see nnnninf2 7193. (Contributed by Jim Kingdon, 14-Jul-2022.) | 
| ⊢ (𝑁 ∈ ω → (𝑖 ∈ ω ↦ if(𝑖 ∈ 𝑁, 1o, ∅)) ∈ ℕ∞) | ||
| Theorem | nnnninf2 7193* | Canonical embedding of suc ω into ℕ∞. (Contributed by BJ, 10-Aug-2024.) | 
| ⊢ (𝑁 ∈ suc ω → (𝑖 ∈ ω ↦ if(𝑖 ∈ 𝑁, 1o, ∅)) ∈ ℕ∞) | ||
| Theorem | nnnninfeq 7194* | Mapping of a natural number to an element of ℕ∞. (Contributed by Jim Kingdon, 4-Aug-2022.) | 
| ⊢ (𝜑 → 𝑃 ∈ ℕ∞) & ⊢ (𝜑 → 𝑁 ∈ ω) & ⊢ (𝜑 → ∀𝑥 ∈ 𝑁 (𝑃‘𝑥) = 1o) & ⊢ (𝜑 → (𝑃‘𝑁) = ∅) ⇒ ⊢ (𝜑 → 𝑃 = (𝑖 ∈ ω ↦ if(𝑖 ∈ 𝑁, 1o, ∅))) | ||
| Theorem | nnnninfeq2 7195* | Mapping of a natural number to an element of ℕ∞. Similar to nnnninfeq 7194 but if we have information about a single 1o digit, that gives information about all previous digits. (Contributed by Jim Kingdon, 4-Aug-2022.) | 
| ⊢ (𝜑 → 𝑃 ∈ ℕ∞) & ⊢ (𝜑 → 𝑁 ∈ ω) & ⊢ (𝜑 → (𝑃‘∪ 𝑁) = 1o) & ⊢ (𝜑 → (𝑃‘𝑁) = ∅) ⇒ ⊢ (𝜑 → 𝑃 = (𝑖 ∈ ω ↦ if(𝑖 ∈ 𝑁, 1o, ∅))) | ||
| Theorem | nninfisollem0 7196* | Lemma for nninfisol 7199. The case where 𝑁 is zero. (Contributed by Jim Kingdon, 13-Sep-2024.) | 
| ⊢ (𝜑 → 𝑋 ∈ ℕ∞) & ⊢ (𝜑 → (𝑋‘𝑁) = ∅) & ⊢ (𝜑 → 𝑁 ∈ ω) & ⊢ (𝜑 → 𝑁 = ∅) ⇒ ⊢ (𝜑 → DECID (𝑖 ∈ ω ↦ if(𝑖 ∈ 𝑁, 1o, ∅)) = 𝑋) | ||
| Theorem | nninfisollemne 7197* | Lemma for nninfisol 7199. A case where 𝑁 is a successor and 𝑁 and 𝑋 are not equal. (Contributed by Jim Kingdon, 13-Sep-2024.) | 
| ⊢ (𝜑 → 𝑋 ∈ ℕ∞) & ⊢ (𝜑 → (𝑋‘𝑁) = ∅) & ⊢ (𝜑 → 𝑁 ∈ ω) & ⊢ (𝜑 → 𝑁 ≠ ∅) & ⊢ (𝜑 → (𝑋‘∪ 𝑁) = ∅) ⇒ ⊢ (𝜑 → DECID (𝑖 ∈ ω ↦ if(𝑖 ∈ 𝑁, 1o, ∅)) = 𝑋) | ||
| Theorem | nninfisollemeq 7198* | Lemma for nninfisol 7199. The case where 𝑁 is a successor and 𝑁 and 𝑋 are equal. (Contributed by Jim Kingdon, 13-Sep-2024.) | 
| ⊢ (𝜑 → 𝑋 ∈ ℕ∞) & ⊢ (𝜑 → (𝑋‘𝑁) = ∅) & ⊢ (𝜑 → 𝑁 ∈ ω) & ⊢ (𝜑 → 𝑁 ≠ ∅) & ⊢ (𝜑 → (𝑋‘∪ 𝑁) = 1o) ⇒ ⊢ (𝜑 → DECID (𝑖 ∈ ω ↦ if(𝑖 ∈ 𝑁, 1o, ∅)) = 𝑋) | ||
| Theorem | nninfisol 7199* | Finite elements of ℕ∞ are isolated. That is, given a natural number and any element of ℕ∞, it is decidable whether the natural number (when converted to an element of ℕ∞) is equal to the given element of ℕ∞. Stated in an online post by Martin Escardo. One way to understand this theorem is that you do not need to look at an unbounded number of elements of the sequence 𝑋 to decide whether it is equal to 𝑁 (in fact, you only need to look at two elements and 𝑁 tells you where to look). (Contributed by BJ and Jim Kingdon, 12-Sep-2024.) | 
| ⊢ ((𝑁 ∈ ω ∧ 𝑋 ∈ ℕ∞) → DECID (𝑖 ∈ ω ↦ if(𝑖 ∈ 𝑁, 1o, ∅)) = 𝑋) | ||
| Syntax | comni 7200 | Extend class definition to include the class of omniscient sets. | 
| class Omni | ||
| < Previous Next > | 
| Copyright terms: Public domain | < Previous Next > |