Home | Intuitionistic Logic Explorer Theorem List (p. 59 of 74) | < 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 | tposf2 5801 | The domain and range of a transposition. (Contributed by NM, 10-Sep-2015.) |
⊢ (Rel A → (𝐹:A⟶B → tpos 𝐹:^{◡}A⟶B)) | ||
Theorem | tposf12 5802 | Condition for an injective transposition. (Contributed by NM, 10-Sep-2015.) |
⊢ (Rel A → (𝐹:A–1-1→B → tpos 𝐹:^{◡}A–1-1→B)) | ||
Theorem | tposf1o2 5803 | Condition of a bijective transposition. (Contributed by NM, 10-Sep-2015.) |
⊢ (Rel A → (𝐹:A–1-1-onto→B → tpos 𝐹:^{◡}A–1-1-onto→B)) | ||
Theorem | tposfo 5804 | The domain and range of a transposition. (Contributed by NM, 10-Sep-2015.) |
⊢ (𝐹:(A × B)–onto→𝐶 → tpos 𝐹:(B × A)–onto→𝐶) | ||
Theorem | tposf 5805 | The domain and range of a transposition. (Contributed by NM, 10-Sep-2015.) |
⊢ (𝐹:(A × B)⟶𝐶 → tpos 𝐹:(B × A)⟶𝐶) | ||
Theorem | tposfn 5806 | Functionality of a transposition. (Contributed by Mario Carneiro, 4-Oct-2015.) |
⊢ (𝐹 Fn (A × B) → tpos 𝐹 Fn (B × A)) | ||
Theorem | tpos0 5807 | Transposition of the empty set. (Contributed by NM, 10-Sep-2015.) |
⊢ tpos ∅ = ∅ | ||
Theorem | tposco 5808 | Transposition of a composition. (Contributed by Mario Carneiro, 4-Oct-2015.) |
⊢ tpos (𝐹 ∘ 𝐺) = (𝐹 ∘ tpos 𝐺) | ||
Theorem | tpossym 5809* | Two ways to say a function is symmetric. (Contributed by Mario Carneiro, 4-Oct-2015.) |
⊢ (𝐹 Fn (A × A) → (tpos 𝐹 = 𝐹 ↔ ∀x ∈ A ∀y ∈ A (x𝐹y) = (y𝐹x))) | ||
Theorem | tposeqi 5810 | Equality theorem for transposition. (Contributed by Mario Carneiro, 10-Sep-2015.) |
⊢ 𝐹 = 𝐺 ⇒ ⊢ tpos 𝐹 = tpos 𝐺 | ||
Theorem | tposex 5811 | A transposition is a set. (Contributed by Mario Carneiro, 10-Sep-2015.) |
⊢ 𝐹 ∈ V ⇒ ⊢ tpos 𝐹 ∈ V | ||
Theorem | nftpos 5812 | Hypothesis builder for transposition. (Contributed by Mario Carneiro, 10-Sep-2015.) |
⊢ Ⅎx𝐹 ⇒ ⊢ Ⅎxtpos 𝐹 | ||
Theorem | tposoprab 5813* | Transposition of a class of ordered triples. (Contributed by Mario Carneiro, 10-Sep-2015.) |
⊢ 𝐹 = {⟨⟨x, y⟩, z⟩ ∣ φ} ⇒ ⊢ tpos 𝐹 = {⟨⟨y, x⟩, z⟩ ∣ φ} | ||
Theorem | tposmpt2 5814* | Transposition of a two-argument mapping. (Contributed by Mario Carneiro, 10-Sep-2015.) |
⊢ 𝐹 = (x ∈ A, y ∈ B ↦ 𝐶) ⇒ ⊢ tpos 𝐹 = (y ∈ B, x ∈ A ↦ 𝐶) | ||
Theorem | pwuninel2 5815 | The power set of the union of a set does not belong to the set. This theorem provides a way of constructing a new set that doesn't belong to a given set. (Contributed by Stefan O'Rear, 22-Feb-2015.) |
⊢ (∪ A ∈ 𝑉 → ¬ 𝒫 ∪ A ∈ A) | ||
Theorem | 2pwuninelg 5816 | The power set of the power set of the union of a set does not belong to the set. This theorem provides a way of constructing a new set that doesn't belong to a given set. (Contributed by Jim Kingdon, 14-Jan-2020.) |
⊢ (A ∈ 𝑉 → ¬ 𝒫 𝒫 ∪ A ∈ A) | ||
Theorem | iunon 5817* | The indexed union of a set of ordinal numbers B(x) is an ordinal number. (Contributed by NM, 13-Oct-2003.) (Revised by Mario Carneiro, 5-Dec-2016.) |
⊢ ((A ∈ 𝑉 ∧ ∀x ∈ A B ∈ On) → ∪ x ∈ A B ∈ On) | ||
Syntax | wsmo 5818 | Introduce the strictly monotone ordinal function. A strictly monotone function is one that is constantly increasing across the ordinals. |
wff Smo A | ||
Definition | df-smo 5819* | Definition of a strictly monotone ordinal function. Definition 7.46 in [TakeutiZaring] p. 50. (Contributed by Andrew Salmon, 15-Nov-2011.) |
⊢ (Smo A ↔ (A:dom A⟶On ∧ Ord dom A ∧ ∀x ∈ dom A∀y ∈ dom A(x ∈ y → (A‘x) ∈ (A‘y)))) | ||
Theorem | dfsmo2 5820* | Alternate definition of a strictly monotone ordinal function. (Contributed by Mario Carneiro, 4-Mar-2013.) |
⊢ (Smo 𝐹 ↔ (𝐹:dom 𝐹⟶On ∧ Ord dom 𝐹 ∧ ∀x ∈ dom 𝐹∀y ∈ x (𝐹‘y) ∈ (𝐹‘x))) | ||
Theorem | issmo 5821* | Conditions for which A is a strictly monotone ordinal function. (Contributed by Andrew Salmon, 15-Nov-2011.) |
⊢ A:B⟶On & ⊢ Ord B & ⊢ ((x ∈ B ∧ y ∈ B) → (x ∈ y → (A‘x) ∈ (A‘y))) & ⊢ dom A = B ⇒ ⊢ Smo A | ||
Theorem | issmo2 5822* | Alternative definition of a strictly monotone ordinal function. (Contributed by Mario Carneiro, 12-Mar-2013.) |
⊢ (𝐹:A⟶B → ((B ⊆ On ∧ Ord A ∧ ∀x ∈ A ∀y ∈ x (𝐹‘y) ∈ (𝐹‘x)) → Smo 𝐹)) | ||
Theorem | smoeq 5823 | Equality theorem for strictly monotone functions. (Contributed by Andrew Salmon, 16-Nov-2011.) |
⊢ (A = B → (Smo A ↔ Smo B)) | ||
Theorem | smodm 5824 | The domain of a strictly monotone function is an ordinal. (Contributed by Andrew Salmon, 16-Nov-2011.) |
⊢ (Smo A → Ord dom A) | ||
Theorem | smores 5825 | A strictly monotone function restricted to an ordinal remains strictly monotone. (Contributed by Andrew Salmon, 16-Nov-2011.) (Proof shortened by Mario Carneiro, 5-Dec-2016.) |
⊢ ((Smo A ∧ B ∈ dom A) → Smo (A ↾ B)) | ||
Theorem | smores3 5826 | A strictly monotone function restricted to an ordinal remains strictly monotone. (Contributed by Andrew Salmon, 19-Nov-2011.) |
⊢ ((Smo (A ↾ B) ∧ 𝐶 ∈ (dom A ∩ B) ∧ Ord B) → Smo (A ↾ 𝐶)) | ||
Theorem | smores2 5827 | A strictly monotone ordinal function restricted to an ordinal is still monotone. (Contributed by Mario Carneiro, 15-Mar-2013.) |
⊢ ((Smo 𝐹 ∧ Ord A) → Smo (𝐹 ↾ A)) | ||
Theorem | smodm2 5828 | The domain of a strictly monotone ordinal function is an ordinal. (Contributed by Mario Carneiro, 12-Mar-2013.) |
⊢ ((𝐹 Fn A ∧ Smo 𝐹) → Ord A) | ||
Theorem | smofvon2dm 5829 | The function values of a strictly monotone ordinal function are ordinals. (Contributed by Mario Carneiro, 12-Mar-2013.) |
⊢ ((Smo 𝐹 ∧ B ∈ dom 𝐹) → (𝐹‘B) ∈ On) | ||
Theorem | iordsmo 5830 | The identity relation restricted to the ordinals is a strictly monotone function. (Contributed by Andrew Salmon, 16-Nov-2011.) |
⊢ Ord A ⇒ ⊢ Smo ( I ↾ A) | ||
Theorem | smo0 5831 | The null set is a strictly monotone ordinal function. (Contributed by Andrew Salmon, 20-Nov-2011.) |
⊢ Smo ∅ | ||
Theorem | smofvon 5832 | If B is a strictly monotone ordinal function, and A is in the domain of B, then the value of the function at A is an ordinal. (Contributed by Andrew Salmon, 20-Nov-2011.) |
⊢ ((Smo B ∧ A ∈ dom B) → (B‘A) ∈ On) | ||
Theorem | smoel 5833 | If x is less than y then a strictly monotone function's value will be strictly less at x than at y. (Contributed by Andrew Salmon, 22-Nov-2011.) |
⊢ ((Smo B ∧ A ∈ dom B ∧ 𝐶 ∈ A) → (B‘𝐶) ∈ (B‘A)) | ||
Theorem | smoiun 5834* | The value of a strictly monotone ordinal function contains its indexed union. (Contributed by Andrew Salmon, 22-Nov-2011.) |
⊢ ((Smo B ∧ A ∈ dom B) → ∪ x ∈ A (B‘x) ⊆ (B‘A)) | ||
Theorem | smoiso 5835 | If 𝐹 is an isomorphism from an ordinal A onto B, which is a subset of the ordinals, then 𝐹 is a strictly monotonic function. Exercise 3 in [TakeutiZaring] p. 50. (Contributed by Andrew Salmon, 24-Nov-2011.) |
⊢ ((𝐹 Isom E , E (A, B) ∧ Ord A ∧ B ⊆ On) → Smo 𝐹) | ||
Theorem | smoel2 5836 | A strictly monotone ordinal function preserves the epsilon relation. (Contributed by Mario Carneiro, 12-Mar-2013.) |
⊢ (((𝐹 Fn A ∧ Smo 𝐹) ∧ (B ∈ A ∧ 𝐶 ∈ B)) → (𝐹‘𝐶) ∈ (𝐹‘B)) | ||
Syntax | crecs 5837 | Notation for a function defined by strong transfinite recursion. |
class recs(𝐹) | ||
Definition | df-recs 5838* |
Define a function recs(𝐹) on On, the
class of ordinal
numbers, by transfinite recursion given a rule 𝐹 which sets the next
value given all values so far. If we were assuming the law of the
excluded middle, we would then build on top of that a form of recursion
which has separate cases for the empty set, successor ordinals, and
limit ordinals. This version allows the update rule to use all
previous values, which is why it is described as "strong".
(Contributed by Stefan O'Rear, 18-Jan-2015.) |
⊢ recs(𝐹) = ∪ {f ∣ ∃x ∈ On (f Fn x ∧ ∀y ∈ x (f‘y) = (𝐹‘(f ↾ y)))} | ||
Theorem | recseq 5839 | Equality theorem for recs. (Contributed by Stefan O'Rear, 18-Jan-2015.) |
⊢ (𝐹 = 𝐺 → recs(𝐹) = recs(𝐺)) | ||
Theorem | nfrecs 5840 | Bound-variable hypothesis builder for recs. (Contributed by Stefan O'Rear, 18-Jan-2015.) |
⊢ Ⅎx𝐹 ⇒ ⊢ Ⅎxrecs(𝐹) | ||
Theorem | tfrlem1 5841* | A technical lemma for transfinite recursion. Compare Lemma 1 of [TakeutiZaring] p. 47. (Contributed by NM, 23-Mar-1995.) (Revised by Mario Carneiro, 24-May-2019.) |
⊢ (φ → A ∈ On) & ⊢ (φ → (Fun 𝐹 ∧ A ⊆ dom 𝐹)) & ⊢ (φ → (Fun 𝐺 ∧ A ⊆ dom 𝐺)) & ⊢ (φ → ∀x ∈ A (𝐹‘x) = (B‘(𝐹 ↾ x))) & ⊢ (φ → ∀x ∈ A (𝐺‘x) = (B‘(𝐺 ↾ x))) ⇒ ⊢ (φ → ∀x ∈ A (𝐹‘x) = (𝐺‘x)) | ||
Theorem | tfrlem3ag 5842* | Lemma for transfinite recursion. This lemma just changes some bound variables in A for later use. (Contributed by NM, 9-Apr-1995.) |
⊢ A = {f ∣ ∃x ∈ On (f Fn x ∧ ∀y ∈ x (f‘y) = (𝐹‘(f ↾ y)))} ⇒ ⊢ (𝐺 ∈ V → (𝐺 ∈ A ↔ ∃z ∈ On (𝐺 Fn z ∧ ∀w ∈ z (𝐺‘w) = (𝐹‘(𝐺 ↾ w))))) | ||
Theorem | tfrlem3a 5843* | Lemma for transfinite recursion. Let A be the class of "acceptable" functions. The final thing we're interested in is the union of all these acceptable functions. This lemma just changes some bound variables in A for later use. (Contributed by NM, 9-Apr-1995.) |
⊢ A = {f ∣ ∃x ∈ On (f Fn x ∧ ∀y ∈ x (f‘y) = (𝐹‘(f ↾ y)))} & ⊢ 𝐺 ∈ V ⇒ ⊢ (𝐺 ∈ A ↔ ∃z ∈ On (𝐺 Fn z ∧ ∀w ∈ z (𝐺‘w) = (𝐹‘(𝐺 ↾ w)))) | ||
Theorem | tfrlem3 5844* | Lemma for transfinite recursion. Let A be the class of "acceptable" functions. The final thing we're interested in is the union of all these acceptable functions. This lemma just changes some bound variables in A for later use. (Contributed by NM, 9-Apr-1995.) |
⊢ A = {f ∣ ∃x ∈ On (f Fn x ∧ ∀y ∈ x (f‘y) = (𝐹‘(f ↾ y)))} ⇒ ⊢ A = {g ∣ ∃z ∈ On (g Fn z ∧ ∀w ∈ z (g‘w) = (𝐹‘(g ↾ w)))} | ||
Theorem | tfrlem3-2 5845* | Lemma for transfinite recursion which changes a bound variable (Contributed by Jim Kingdon, 17-Apr-2019.) |
⊢ (Fun 𝐹 ∧ (𝐹‘x) ∈ V) ⇒ ⊢ (Fun 𝐹 ∧ (𝐹‘g) ∈ V) | ||
Theorem | tfrlem3-2d 5846* | Lemma for transfinite recursion which changes a bound variable (Contributed by Jim Kingdon, 2-Jul-2019.) |
⊢ (φ → ∀x(Fun 𝐹 ∧ (𝐹‘x) ∈ V)) ⇒ ⊢ (φ → (Fun 𝐹 ∧ (𝐹‘g) ∈ V)) | ||
Theorem | tfrlem4 5847* | Lemma for transfinite recursion. A is the class of all "acceptable" functions, and 𝐹 is their union. First we show that an acceptable function is in fact a function. (Contributed by NM, 9-Apr-1995.) |
⊢ A = {f ∣ ∃x ∈ On (f Fn x ∧ ∀y ∈ x (f‘y) = (𝐹‘(f ↾ y)))} ⇒ ⊢ (g ∈ A → Fun g) | ||
Theorem | tfrlem5 5848* | Lemma for transfinite recursion. The values of two acceptable functions are the same within their domains. (Contributed by NM, 9-Apr-1995.) (Revised by Mario Carneiro, 24-May-2019.) |
⊢ A = {f ∣ ∃x ∈ On (f Fn x ∧ ∀y ∈ x (f‘y) = (𝐹‘(f ↾ y)))} ⇒ ⊢ ((g ∈ A ∧ ℎ ∈ A) → ((xgu ∧ xℎv) → u = v)) | ||
Theorem | recsfval 5849* | Lemma for transfinite recursion. The definition recs is the union of all acceptable functions. (Contributed by Mario Carneiro, 9-May-2015.) |
⊢ A = {f ∣ ∃x ∈ On (f Fn x ∧ ∀y ∈ x (f‘y) = (𝐹‘(f ↾ y)))} ⇒ ⊢ recs(𝐹) = ∪ A | ||
Theorem | tfrlem6 5850* | Lemma for transfinite recursion. The union of all acceptable functions is a relation. (Contributed by NM, 8-Aug-1994.) (Revised by Mario Carneiro, 9-May-2015.) |
⊢ A = {f ∣ ∃x ∈ On (f Fn x ∧ ∀y ∈ x (f‘y) = (𝐹‘(f ↾ y)))} ⇒ ⊢ Rel recs(𝐹) | ||
Theorem | tfrlem7 5851* | Lemma for transfinite recursion. The union of all acceptable functions is a function. (Contributed by NM, 9-Aug-1994.) (Revised by Mario Carneiro, 24-May-2019.) |
⊢ A = {f ∣ ∃x ∈ On (f Fn x ∧ ∀y ∈ x (f‘y) = (𝐹‘(f ↾ y)))} ⇒ ⊢ Fun recs(𝐹) | ||
Theorem | tfrlem8 5852* | Lemma for transfinite recursion. The domain of recs is ordinal. (Contributed by NM, 14-Aug-1994.) (Proof shortened by Alan Sare, 11-Mar-2008.) |
⊢ A = {f ∣ ∃x ∈ On (f Fn x ∧ ∀y ∈ x (f‘y) = (𝐹‘(f ↾ y)))} ⇒ ⊢ Ord dom recs(𝐹) | ||
Theorem | tfrlem9 5853* | Lemma for transfinite recursion. Here we compute the value of recs (the union of all acceptable functions). (Contributed by NM, 17-Aug-1994.) |
⊢ A = {f ∣ ∃x ∈ On (f Fn x ∧ ∀y ∈ x (f‘y) = (𝐹‘(f ↾ y)))} ⇒ ⊢ (B ∈ dom recs(𝐹) → (recs(𝐹)‘B) = (𝐹‘(recs(𝐹) ↾ B))) | ||
Theorem | tfr2a 5854 | A weak version of transfinite recursion. (Contributed by Mario Carneiro, 24-Jun-2015.) |
⊢ 𝐹 = recs(𝐺) ⇒ ⊢ (A ∈ dom 𝐹 → (𝐹‘A) = (𝐺‘(𝐹 ↾ A))) | ||
Theorem | tfrlemisucfn 5855* | We can extend an acceptable function by one element to produce a function. Lemma for tfrlemi1 5863. (Contributed by Jim Kingdon, 2-Jul-2019.) |
⊢ A = {f ∣ ∃x ∈ On (f Fn x ∧ ∀y ∈ x (f‘y) = (𝐹‘(f ↾ y)))} & ⊢ (φ → ∀x(Fun 𝐹 ∧ (𝐹‘x) ∈ V)) & ⊢ (φ → z ∈ On) & ⊢ (φ → g Fn z) & ⊢ (φ → g ∈ A) ⇒ ⊢ (φ → (g ∪ {⟨z, (𝐹‘g)⟩}) Fn suc z) | ||
Theorem | tfrlemisucaccv 5856* | We can extend an acceptable function by one element to produce an acceptable function. Lemma for tfrlemi1 5863. (Contributed by Jim Kingdon, 4-Mar-2019.) (Proof shortened by Mario Carneiro, 24-May-2019.) |
⊢ A = {f ∣ ∃x ∈ On (f Fn x ∧ ∀y ∈ x (f‘y) = (𝐹‘(f ↾ y)))} & ⊢ (φ → ∀x(Fun 𝐹 ∧ (𝐹‘x) ∈ V)) & ⊢ (φ → z ∈ On) & ⊢ (φ → g Fn z) & ⊢ (φ → g ∈ A) ⇒ ⊢ (φ → (g ∪ {⟨z, (𝐹‘g)⟩}) ∈ A) | ||
Theorem | tfrlemibacc 5857* | Each element of B is an acceptable function. Lemma for tfrlemi1 5863. (Contributed by Jim Kingdon, 14-Mar-2019.) (Proof shortened by Mario Carneiro, 24-May-2019.) |
⊢ A = {f ∣ ∃x ∈ On (f Fn x ∧ ∀y ∈ x (f‘y) = (𝐹‘(f ↾ y)))} & ⊢ (φ → ∀x(Fun 𝐹 ∧ (𝐹‘x) ∈ V)) & ⊢ B = {ℎ ∣ ∃z ∈ x ∃g(g Fn z ∧ g ∈ A ∧ ℎ = (g ∪ {⟨z, (𝐹‘g)⟩}))} & ⊢ (φ → x ∈ On) & ⊢ (φ → ∀z ∈ x ∃g(g Fn z ∧ ∀w ∈ z (g‘w) = (𝐹‘(g ↾ w)))) ⇒ ⊢ (φ → B ⊆ A) | ||
Theorem | tfrlemibxssdm 5858* | The union of B is defined on all ordinals. Lemma for tfrlemi1 5863. (Contributed by Jim Kingdon, 18-Mar-2019.) (Proof shortened by Mario Carneiro, 24-May-2019.) |
⊢ A = {f ∣ ∃x ∈ On (f Fn x ∧ ∀y ∈ x (f‘y) = (𝐹‘(f ↾ y)))} & ⊢ (φ → ∀x(Fun 𝐹 ∧ (𝐹‘x) ∈ V)) & ⊢ B = {ℎ ∣ ∃z ∈ x ∃g(g Fn z ∧ g ∈ A ∧ ℎ = (g ∪ {⟨z, (𝐹‘g)⟩}))} & ⊢ (φ → x ∈ On) & ⊢ (φ → ∀z ∈ x ∃g(g Fn z ∧ ∀w ∈ z (g‘w) = (𝐹‘(g ↾ w)))) ⇒ ⊢ (φ → x ⊆ dom ∪ B) | ||
Theorem | tfrlemibfn 5859* | The union of B is a function defined on x. Lemma for tfrlemi1 5863. (Contributed by Jim Kingdon, 18-Mar-2019.) (Proof shortened by Mario Carneiro, 24-May-2019.) |
⊢ A = {f ∣ ∃x ∈ On (f Fn x ∧ ∀y ∈ x (f‘y) = (𝐹‘(f ↾ y)))} & ⊢ (φ → ∀x(Fun 𝐹 ∧ (𝐹‘x) ∈ V)) & ⊢ B = {ℎ ∣ ∃z ∈ x ∃g(g Fn z ∧ g ∈ A ∧ ℎ = (g ∪ {⟨z, (𝐹‘g)⟩}))} & ⊢ (φ → x ∈ On) & ⊢ (φ → ∀z ∈ x ∃g(g Fn z ∧ ∀w ∈ z (g‘w) = (𝐹‘(g ↾ w)))) ⇒ ⊢ (φ → ∪ B Fn x) | ||
Theorem | tfrlemibex 5860* | The set B exists. Lemma for tfrlemi1 5863. (Contributed by Jim Kingdon, 17-Mar-2019.) (Proof shortened by Mario Carneiro, 24-May-2019.) |
⊢ A = {f ∣ ∃x ∈ On (f Fn x ∧ ∀y ∈ x (f‘y) = (𝐹‘(f ↾ y)))} & ⊢ (φ → ∀x(Fun 𝐹 ∧ (𝐹‘x) ∈ V)) & ⊢ B = {ℎ ∣ ∃z ∈ x ∃g(g Fn z ∧ g ∈ A ∧ ℎ = (g ∪ {⟨z, (𝐹‘g)⟩}))} & ⊢ (φ → x ∈ On) & ⊢ (φ → ∀z ∈ x ∃g(g Fn z ∧ ∀w ∈ z (g‘w) = (𝐹‘(g ↾ w)))) ⇒ ⊢ (φ → B ∈ V) | ||
Theorem | tfrlemiubacc 5861* | The union of B satisfies the recursion rule (lemma for tfrlemi1 5863). (Contributed by Jim Kingdon, 22-Apr-2019.) (Proof shortened by Mario Carneiro, 24-May-2019.) |
⊢ A = {f ∣ ∃x ∈ On (f Fn x ∧ ∀y ∈ x (f‘y) = (𝐹‘(f ↾ y)))} & ⊢ (φ → ∀x(Fun 𝐹 ∧ (𝐹‘x) ∈ V)) & ⊢ B = {ℎ ∣ ∃z ∈ x ∃g(g Fn z ∧ g ∈ A ∧ ℎ = (g ∪ {⟨z, (𝐹‘g)⟩}))} & ⊢ (φ → x ∈ On) & ⊢ (φ → ∀z ∈ x ∃g(g Fn z ∧ ∀w ∈ z (g‘w) = (𝐹‘(g ↾ w)))) ⇒ ⊢ (φ → ∀u ∈ x (∪ B‘u) = (𝐹‘(∪ B ↾ u))) | ||
Theorem | tfrlemiex 5862* | Lemma for tfrlemi1 5863. (Contributed by Jim Kingdon, 18-Mar-2019.) (Proof shortened by Mario Carneiro, 24-May-2019.) |
⊢ A = {f ∣ ∃x ∈ On (f Fn x ∧ ∀y ∈ x (f‘y) = (𝐹‘(f ↾ y)))} & ⊢ (φ → ∀x(Fun 𝐹 ∧ (𝐹‘x) ∈ V)) & ⊢ B = {ℎ ∣ ∃z ∈ x ∃g(g Fn z ∧ g ∈ A ∧ ℎ = (g ∪ {⟨z, (𝐹‘g)⟩}))} & ⊢ (φ → x ∈ On) & ⊢ (φ → ∀z ∈ x ∃g(g Fn z ∧ ∀w ∈ z (g‘w) = (𝐹‘(g ↾ w)))) ⇒ ⊢ (φ → ∃f(f Fn x ∧ ∀u ∈ x (f‘u) = (𝐹‘(f ↾ u)))) | ||
Theorem | tfrlemi1 5863* |
We can define an acceptable function on any ordinal.
As with many of the transfinite recursion theorems, we have a hypothesis that states that 𝐹 is a function and that it is defined for all ordinals. (Contributed by Jim Kingdon, 4-Mar-2019.) (Proof shortened by Mario Carneiro, 24-May-2019.) |
⊢ A = {f ∣ ∃x ∈ On (f Fn x ∧ ∀y ∈ x (f‘y) = (𝐹‘(f ↾ y)))} & ⊢ (φ → ∀x(Fun 𝐹 ∧ (𝐹‘x) ∈ V)) ⇒ ⊢ ((φ ∧ 𝐶 ∈ On) → ∃g(g Fn 𝐶 ∧ ∀u ∈ 𝐶 (g‘u) = (𝐹‘(g ↾ u)))) | ||
Theorem | tfrlemi14d 5864* | The domain of recs is all ordinals (lemma for transfinite recursion). (Contributed by Jim Kingdon, 9-Jul-2019.) |
⊢ A = {f ∣ ∃x ∈ On (f Fn x ∧ ∀y ∈ x (f‘y) = (𝐹‘(f ↾ y)))} & ⊢ (φ → ∀x(Fun 𝐹 ∧ (𝐹‘x) ∈ V)) ⇒ ⊢ (φ → dom recs(𝐹) = On) | ||
Theorem | tfrlemi14 5865* | The domain of recs is all ordinals (lemma for transfinite recursion). (Contributed by Jim Kingdon, 4-May-2019.) (Proof shortened by Mario Carneiro, 24-May-2019.) |
⊢ A = {f ∣ ∃x ∈ On (f Fn x ∧ ∀y ∈ x (f‘y) = (𝐹‘(f ↾ y)))} & ⊢ (Fun 𝐹 ∧ (𝐹‘x) ∈ V) ⇒ ⊢ dom recs(𝐹) = On | ||
Theorem | tfrexlem 5866* | The transfinite recursion function is set-like if the input is. (Contributed by Mario Carneiro, 3-Jul-2019.) |
⊢ A = {f ∣ ∃x ∈ On (f Fn x ∧ ∀y ∈ x (f‘y) = (𝐹‘(f ↾ y)))} & ⊢ (φ → ∀x(Fun 𝐹 ∧ (𝐹‘x) ∈ V)) ⇒ ⊢ ((φ ∧ 𝐶 ∈ 𝑉) → (recs(𝐹)‘𝐶) ∈ V) | ||
Theorem | tfri1d 5867* |
Principle of Transfinite Recursion, part 1 of 3. Theorem 7.41(1) of
[TakeutiZaring] p. 47, with an
additional condition.
The condition is that 𝐺 is defined "everywhere" and here is stated as (𝐺‘x) ∈ V. Alternatively ∀x ∈ On∀f(f Fn x → f ∈ dom 𝐺) would suffice. Given a function 𝐺 satisfying that condition, we define a class A of all "acceptable" functions. The final function we're interested in is the union 𝐹 = recs(𝐺) of them. 𝐹 is then said to be defined by transfinite recursion. The purpose of the 3 parts of this theorem is to demonstrate properties of 𝐹. In this first part we show that 𝐹 is a function whose domain is all ordinal numbers. (Contributed by Jim Kingdon, 4-May-2019.) (Revised by Mario Carneiro, 24-May-2019.) |
⊢ 𝐹 = recs(𝐺) & ⊢ (φ → ∀x(Fun 𝐺 ∧ (𝐺‘x) ∈ V)) ⇒ ⊢ (φ → 𝐹 Fn On) | ||
Theorem | tfri2d 5868* | Principle of Transfinite Recursion, part 2 of 3. Theorem 7.41(2) of [TakeutiZaring] p. 47, with an additional condition on the recursion rule 𝐺 ( as described at tfri1 5869). Here we show that the function 𝐹 has the property that for any function 𝐺 satisfying that condition, the "next" value of 𝐹 is 𝐺 recursively applied to all "previous" values of 𝐹. (Contributed by Jim Kingdon, 4-May-2019.) |
⊢ 𝐹 = recs(𝐺) & ⊢ (φ → ∀x(Fun 𝐺 ∧ (𝐺‘x) ∈ V)) ⇒ ⊢ ((φ ∧ A ∈ On) → (𝐹‘A) = (𝐺‘(𝐹 ↾ A))) | ||
Theorem | tfri1 5869* |
Principle of Transfinite Recursion, part 1 of 3. Theorem 7.41(1) of
[TakeutiZaring] p. 47, with an
additional condition.
The condition is that 𝐺 is defined "everywhere" and here is stated as (𝐺‘x) ∈ V. Alternatively ∀x ∈ On∀f(f Fn x → f ∈ dom 𝐺) would suffice. Given a function 𝐺 satisfying that condition, we define a class A of all "acceptable" functions. The final function we're interested in is the union 𝐹 = recs(𝐺) of them. 𝐹 is then said to be defined by transfinite recursion. The purpose of the 3 parts of this theorem is to demonstrate properties of 𝐹. In this first part we show that 𝐹 is a function whose domain is all ordinal numbers. (Contributed by Jim Kingdon, 4-May-2019.) (Revised by Mario Carneiro, 24-May-2019.) |
⊢ 𝐹 = recs(𝐺) & ⊢ (Fun 𝐺 ∧ (𝐺‘x) ∈ V) ⇒ ⊢ 𝐹 Fn On | ||
Theorem | tfri2 5870* | Principle of Transfinite Recursion, part 2 of 3. Theorem 7.41(2) of [TakeutiZaring] p. 47, with an additional condition on the recursion rule 𝐺 ( as described at tfri1 5869). Here we show that the function 𝐹 has the property that for any function 𝐺 satisfying that condition, the "next" value of 𝐹 is 𝐺 recursively applied to all "previous" values of 𝐹. (Contributed by Jim Kingdon, 4-May-2019.) |
⊢ 𝐹 = recs(𝐺) & ⊢ (Fun 𝐺 ∧ (𝐺‘x) ∈ V) ⇒ ⊢ (A ∈ On → (𝐹‘A) = (𝐺‘(𝐹 ↾ A))) | ||
Theorem | tfri3 5871* | Principle of Transfinite Recursion, part 3 of 3. Theorem 7.41(3) of [TakeutiZaring] p. 47, with an additional condition on the recursion rule 𝐺 ( as described at tfri1 5869). Finally, we show that 𝐹 is unique. We do this by showing that any class B with the same properties of 𝐹 that we showed in parts 1 and 2 is identical to 𝐹. (Contributed by Jim Kingdon, 4-May-2019.) |
⊢ 𝐹 = recs(𝐺) & ⊢ (Fun 𝐺 ∧ (𝐺‘x) ∈ V) ⇒ ⊢ ((B Fn On ∧ ∀x ∈ On (B‘x) = (𝐺‘(B ↾ x))) → B = 𝐹) | ||
Theorem | tfrex 5872* | The transfinite recursion function is set-like if the input is. (Contributed by Mario Carneiro, 3-Jul-2019.) |
⊢ 𝐹 = recs(𝐺) & ⊢ (φ → ∀x(Fun 𝐺 ∧ (𝐺‘x) ∈ V)) ⇒ ⊢ ((φ ∧ A ∈ 𝑉) → (𝐹‘A) ∈ V) | ||
Syntax | crdg 5873 | Extend class notation with the recursive definition generator, with characteristic function 𝐹 and initial value 𝐼. |
class rec(𝐹, 𝐼) | ||
Definition | df-irdg 5874* |
Define a recursive definition generator on On (the
class of ordinal
numbers) with characteristic function 𝐹 and initial value 𝐼.
This rather amazing operation allows us to define, with compact direct
definitions, functions that are usually defined in textbooks only with
indirect self-referencing recursive definitions. A recursive definition
requires advanced metalogic to justify - in particular, eliminating a
recursive definition is very difficult and often not even shown in
textbooks. On the other hand, the elimination of a direct definition is
a matter of simple mechanical substitution. The price paid is the
daunting complexity of our rec operation
(especially when df-recs 5838
that it is built on is also eliminated). But once we get past this
hurdle, definitions that would otherwise be recursive become relatively
simple. In classical logic it would be easier to divide this definition
into cases based on whether the domain of g is zero, a successor, or
a limit ordinal. Cases do not (in general) work that way in
intuitionistic logic, so instead we choose a definition which takes the
union of all the results of the characteristic function for ordinals in
the domain of g. This means that this definition has the
expected
properties for increasing and continuous ordinal functions, which
include ordinal addition and multiplication.
For finite recursion we also define df-frec 5894 and for suitable characteristic functions df-frec 5894 yields the same result as rec restricted to 𝜔, as seen at frecrdg 5904. Note: We introduce rec with the philosophical goal of being able to eliminate all definitions with direct mechanical substitution and to verify easily the soundness of definitions. Metamath itself has no built-in technical limitation that prevents multiple-part recursive definitions in the traditional textbook style. (Contributed by Jim Kingdon, 19-May-2019.) |
⊢ rec(𝐹, 𝐼) = recs((g ∈ V ↦ (𝐼 ∪ ∪ x ∈ dom g(𝐹‘(g‘x))))) | ||
Theorem | rdgeq1 5875 | Equality theorem for the recursive definition generator. (Contributed by NM, 9-Apr-1995.) (Revised by Mario Carneiro, 9-May-2015.) |
⊢ (𝐹 = 𝐺 → rec(𝐹, A) = rec(𝐺, A)) | ||
Theorem | rdgeq2 5876 | Equality theorem for the recursive definition generator. (Contributed by NM, 9-Apr-1995.) (Revised by Mario Carneiro, 9-May-2015.) |
⊢ (A = B → rec(𝐹, A) = rec(𝐹, B)) | ||
Theorem | rdgfun 5877 | The recursive definition generator is a function. (Contributed by Mario Carneiro, 16-Nov-2014.) |
⊢ Fun rec(𝐹, A) | ||
Theorem | rdgruledefgg 5878* | The recursion rule for the recursive definition generator is defined everywhere. (Contributed by Jim Kingdon, 4-Jul-2019.) |
⊢ ((𝐹 Fn V ∧ A ∈ 𝑉) → (Fun (g ∈ V ↦ (A ∪ ∪ x ∈ dom g(𝐹‘(g‘x)))) ∧ ((g ∈ V ↦ (A ∪ ∪ x ∈ dom g(𝐹‘(g‘x))))‘f) ∈ V)) | ||
Theorem | rdgruledefg 5879* | The recursion rule for the recursive definition generator is defined everywhere. (Contributed by Jim Kingdon, 4-Jul-2019.) |
⊢ 𝐹 Fn V ⇒ ⊢ (A ∈ 𝑉 → (Fun (g ∈ V ↦ (A ∪ ∪ x ∈ dom g(𝐹‘(g‘x)))) ∧ ((g ∈ V ↦ (A ∪ ∪ x ∈ dom g(𝐹‘(g‘x))))‘f) ∈ V)) | ||
Theorem | rdgexggg 5880 | The recursive definition generator produces a set on a set input. (Contributed by Jim Kingdon, 4-Jul-2019.) |
⊢ ((𝐹 Fn V ∧ A ∈ 𝑉 ∧ B ∈ 𝑊) → (rec(𝐹, A)‘B) ∈ V) | ||
Theorem | rdgexgg 5881 | The recursive definition generator produces a set on a set input. (Contributed by Jim Kingdon, 4-Jul-2019.) |
⊢ 𝐹 Fn V ⇒ ⊢ ((A ∈ 𝑉 ∧ B ∈ 𝑊) → (rec(𝐹, A)‘B) ∈ V) | ||
Theorem | rdgi0g 5882 | The initial value of the recursive definition generator. (Contributed by Jim Kingdon, 10-Jul-2019.) |
⊢ ((𝐹 Fn V ∧ A ∈ 𝑉) → (rec(𝐹, A)‘∅) = A) | ||
Theorem | rdgifnon 5883 | The recursive definition generator is a function on ordinal numbers. The 𝐹 Fn V condition states that the characteristic function is defined for all sets (being defined for all ordinals might be enough, but being defined for all sets will generally hold for the characteristic functions we need to use this with). (Contributed by Jim Kingdon, 13-Jul-2019.) |
⊢ ((𝐹 Fn V ∧ A ∈ 𝑉) → rec(𝐹, A) Fn On) | ||
Theorem | rdgivallem 5884* | Value of the recursive definition generator. Lemma for rdgival 5885 which simplifies the value further. (Contributed by Jim Kingdon, 13-Jul-2019.) (New usage is discouraged.) |
⊢ ((𝐹 Fn V ∧ A ∈ 𝑉 ∧ B ∈ On) → (rec(𝐹, A)‘B) = (A ∪ ∪ x ∈ B (𝐹‘((rec(𝐹, A) ↾ B)‘x)))) | ||
Theorem | rdgival 5885* | Value of the recursive definition generator. (Contributed by Jim Kingdon, 26-Jul-2019.) |
⊢ ((𝐹 Fn V ∧ A ∈ 𝑉 ∧ B ∈ On) → (rec(𝐹, A)‘B) = (A ∪ ∪ x ∈ B (𝐹‘(rec(𝐹, A)‘x)))) | ||
Theorem | rdgss 5886 | Subset and recursive definition generator. (Contributed by Jim Kingdon, 15-Jul-2019.) |
⊢ (φ → 𝐹 Fn V) & ⊢ (φ → 𝐼 ∈ 𝑉) & ⊢ (φ → A ∈ On) & ⊢ (φ → B ∈ On) & ⊢ (φ → A ⊆ B) ⇒ ⊢ (φ → (rec(𝐹, 𝐼)‘A) ⊆ (rec(𝐹, 𝐼)‘B)) | ||
Theorem | rdgisuc1 5887* |
One way of describing the value of the recursive definition generator at
a successor. There is no condition on the characteristic function 𝐹
other than 𝐹 Fn V. Given that, the resulting
expression
encompasses both the expected successor term
(𝐹‘(rec(𝐹, A)‘B)) but also terms that correspond to
the initial value A and to limit ordinals
∪ x ∈ B(𝐹‘(rec(𝐹, A)‘x)).
If we add conditions on the characteristic function, we can show tighter results such as rdgisucinc 5888. (Contributed by Jim Kingdon, 9-Jun-2019.) |
⊢ (φ → 𝐹 Fn V) & ⊢ (φ → A ∈ 𝑉) & ⊢ (φ → B ∈ On) ⇒ ⊢ (φ → (rec(𝐹, A)‘suc B) = (A ∪ (∪ x ∈ B (𝐹‘(rec(𝐹, A)‘x)) ∪ (𝐹‘(rec(𝐹, A)‘B))))) | ||
Theorem | rdgisucinc 5888* |
Value of the recursive definition generator at a successor.
This can be thought of as a generalization of oasuc 5955 and omsuc 5962. (Contributed by Jim Kingdon, 29-Aug-2019.) |
⊢ (φ → 𝐹 Fn V) & ⊢ (φ → A ∈ 𝑉) & ⊢ (φ → B ∈ On) & ⊢ (φ → ∀x x ⊆ (𝐹‘x)) ⇒ ⊢ (φ → (rec(𝐹, A)‘suc B) = (𝐹‘(rec(𝐹, A)‘B))) | ||
Theorem | rdgon 5889* | Evaluating the recursive definition generator produces an ordinal. There is a hypothesis that the characteristic function produces ordinals on ordinal arguments. (Contributed by Jim Kingdon, 26-Jul-2019.) |
⊢ (φ → 𝐹 Fn V) & ⊢ (φ → A ∈ On) & ⊢ (φ → ∀x ∈ On (𝐹‘x) ∈ On) ⇒ ⊢ ((φ ∧ B ∈ On) → (rec(𝐹, A)‘B) ∈ On) | ||
Theorem | rdgruledef 5890* | The recursion rule for the recursive definition generator is defined everywhere. Lemma for rdg0 5891. (Contributed by Jim Kingdon, 29-May-2019.) |
⊢ A ∈ V & ⊢ 𝐹 Fn V ⇒ ⊢ (Fun (g ∈ V ↦ (A ∪ ∪ x ∈ dom g(𝐹‘(g‘x)))) ∧ ((g ∈ V ↦ (A ∪ ∪ x ∈ dom g(𝐹‘(g‘x))))‘f) ∈ V) | ||
Theorem | rdg0 5891 | The initial value of the recursive definition generator. (Contributed by NM, 23-Apr-1995.) (Revised by Mario Carneiro, 14-Nov-2014.) |
⊢ A ∈ V & ⊢ 𝐹 Fn V ⇒ ⊢ (rec(𝐹, A)‘∅) = A | ||
Theorem | rdgexg 5892 | The recursive definition generator produces a set on a set input. (Contributed by Mario Carneiro, 3-Jul-2019.) |
⊢ A ∈ V & ⊢ 𝐹 Fn V ⇒ ⊢ (B ∈ 𝑉 → (rec(𝐹, A)‘B) ∈ V) | ||
Syntax | cfrec 5893 | Extend class notation with the fnite recursive definition generator, with characteristic function 𝐹 and initial value 𝐼. |
class frec(𝐹, 𝐼) | ||
Definition | df-frec 5894* |
Define a recursive definition generator on 𝜔
(the class of finite
ordinals) with characteristic function 𝐹 and initial value 𝐼.
This rather amazing operation allows us to define, with compact direct
definitions, functions that are usually defined in textbooks only with
indirect self-referencing recursive definitions. A recursive definition
requires advanced metalogic to justify - in particular, eliminating a
recursive definition is very difficult and often not even shown in
textbooks. On the other hand, the elimination of a direct definition is
a matter of simple mechanical substitution. The price paid is the
daunting complexity of our frec operation
(especially when df-recs 5838
that it is built on is also eliminated). But once we get past this
hurdle, definitions that would otherwise be recursive become relatively
simple; see frec0g 5898 and frecsuc 5903.
Unlike with transfinite recursion, finite recurson can readily divide definitions and proofs into zero and successor cases, because even without excluded middle we have theorems such as nn0suc 4250. The analogous situation with transfinite recursion - being able to say that an ordinal is zero, successor, or limit - is enabled by excluded middle and thus is not available to us. For the characteristic functions which satisfy the conditions given at frecrdg 5904, this definition and df-irdg 5874 restricted to 𝜔 produce the same result. Note: We introduce frec with the philosophical goal of being able to eliminate all definitions with direct mechanical substitution and to verify easily the soundness of definitions. Metamath itself has no built-in technical limitation that prevents multiple-part recursive definitions in the traditional textbook style. (Contributed by Mario Carneiro and Jim Kingdon, 10-Aug-2019.) |
⊢ frec(𝐹, 𝐼) = (recs((g ∈ V ↦ {x ∣ (∃𝑚 ∈ 𝜔 (dom g = suc 𝑚 ∧ x ∈ (𝐹‘(g‘𝑚))) ∨ (dom g = ∅ ∧ x ∈ 𝐼))})) ↾ 𝜔) | ||
Theorem | frecabex 5895* | The class abstraction from df-frec 5894 exists. This is a lemma for several other finite recursion proofs. (Contributed by Jim Kingdon, 16-Aug-2019.) |
⊢ (φ → 𝑆 ∈ 𝑉) & ⊢ (φ → 𝐹 Fn V) & ⊢ (φ → A ∈ 𝑊) ⇒ ⊢ (φ → {x ∣ (∃𝑚 ∈ 𝜔 (dom 𝑆 = suc 𝑚 ∧ x ∈ (𝐹‘(𝑆‘𝑚))) ∨ (dom 𝑆 = ∅ ∧ x ∈ A))} ∈ V) | ||
Theorem | frectfr 5896* |
Lemma to connect transfinite recursion theorems with finite recursion.
That is, given the conditions 𝐹 Fn V and A ∈ 𝑉 on
frec(𝐹, A), we want to be able to apply tfri1d 5867 or tfri2d 5868,
and this lemma lets us satisfy hypotheses of those theorems.
(Contributed by Jim Kingdon, 15-Aug-2019.) |
⊢ 𝐺 = (g ∈ V ↦ {x ∣ (∃𝑚 ∈ 𝜔 (dom g = suc 𝑚 ∧ x ∈ (𝐹‘(g‘𝑚))) ∨ (dom g = ∅ ∧ x ∈ A))}) ⇒ ⊢ ((𝐹 Fn V ∧ A ∈ 𝑉) → ∀y(Fun 𝐺 ∧ (𝐺‘y) ∈ V)) | ||
Theorem | frecfnom 5897 | The function generated by finite recursive definition generation is a function on omega. (Contributed by Jim Kingdon, 11-Aug-2019.) |
⊢ ((𝐹 Fn V ∧ A ∈ 𝑉) → frec(𝐹, A) Fn 𝜔) | ||
Theorem | frec0g 5898 | The initial value resulting from finite recursive definition generation. (Contributed by Jim Kingdon, 11-Aug-2019.) |
⊢ ((𝐹 Fn V ∧ A ∈ 𝑉) → (frec(𝐹, A)‘∅) = A) | ||
Theorem | frecsuclem1 5899* | Lemma for frecsuc 5903. (Contributed by Jim Kingdon, 13-Aug-2019.) |
⊢ 𝐺 = (g ∈ V ↦ {x ∣ (∃𝑚 ∈ 𝜔 (dom g = suc 𝑚 ∧ x ∈ (𝐹‘(g‘𝑚))) ∨ (dom g = ∅ ∧ x ∈ A))}) ⇒ ⊢ ((𝐹 Fn V ∧ A ∈ 𝑉 ∧ B ∈ 𝜔) → (frec(𝐹, A)‘suc B) = (𝐺‘(recs(𝐺) ↾ suc B))) | ||
Theorem | frecsuclemdm 5900* | Lemma for frecsuc 5903. (Contributed by Jim Kingdon, 15-Aug-2019.) |
⊢ 𝐺 = (g ∈ V ↦ {x ∣ (∃𝑚 ∈ 𝜔 (dom g = suc 𝑚 ∧ x ∈ (𝐹‘(g‘𝑚))) ∨ (dom g = ∅ ∧ x ∈ A))}) ⇒ ⊢ ((𝐹 Fn V ∧ A ∈ 𝑉 ∧ B ∈ 𝜔) → dom (recs(𝐺) ↾ suc B) = suc B) |
< Previous Next > |
Copyright terms: Public domain | < Previous Next > |