| Metamath Proof Explorer Most Recent Proofs |
||
| Mirrors > Home > MPE Home > Th. List > Recent | ILE Most Recent Other > MM 100 | |
The original proofs of theorems with recently shortened proofs can often be found by appending "OLD" to the theorem name, for example 19.43OLD for 19.43. The "OLD" versions are usually deleted after a year.
Other links Contact us. Mailing list: Metamath Google Group Updated 7-Dec-2021 . Contributing: How can I contribute to Metamath? Syndication: RSS feed (courtesy of Dan Getz) Related wikis: Ghilbert Google Group.
Recent news items (15-Nov-2025) Thierry Arnoux added a new proof to the 100 theorem list, The Impossibility of Trisecting the Angle and Doubling the Cube, trisecnconstr and 2sqr3nconstr.
(7-Aug-2021) Version 0.198 of the metamath program fixes a bug in "write source ... /rewrap" that prevented end-of-sentence punctuation from appearing in column 79, causing some rewrapped lines to be shorter than necessary. Because this affects about 2000 lines in set.mm, you should use version 0.198 or later for rewrapping before submitting to GitHub.
(7-May-2021) Mario Carneiro has written a Metamath verifier in Lean.
(5-May-2021) Marnix Klooster has written a Metamath verifier in Zig.
(24-Mar-2021) Metamath was mentioned in a couple of articles about OpenAI: Researchers find that large language models struggle with math and What Is GPT-F?.
(26-Dec-2020) Version 0.194 of the metamath program adds the keyword "htmlexturl" to the $t comment to specify external versions of theorem pages. This keyward has been added to set.mm, and you must update your local copy of set.mm for "verify markup" to pass with the new program version.
(19-Dec-2020) Aleksandr A. Adamov has translated the Wikipedia Metamath page into Russian.
(19-Nov-2020) Eric Schmidt's checkmm.cpp was used as a test case for C'est, "a non-standard version of the C++20 standard library, with enhanced support for compile-time evaluation." See C++20 Compile-time Metamath Proof Verification using C'est.
(10-Nov-2020) Filip Cernatescu has updated the XPuzzle (Android app) to version 1.2. XPuzzle is a puzzle with math formulas derived from the Metamath system. At the bottom of the web page is a link to the Google Play Store, where the app can be found.
(7-Nov-2020) Richard Penner created a cross-reference guide between Frege's logic notation and the notation used by set.mm.
(4-Sep-2020) Version 0.192 of the metamath program adds the qualifier '/extract' to 'write source'. See 'help write source' and also this Google Group post.
(23-Aug-2020) Version 0.188 of the metamath program adds keywords Conclusion, Fact, Introduction, Paragraph, Scolia, Scolion, Subsection, and Table to bibliographic references. See 'help write bibliography' for the complete current list.
| Color key: |
| Date | Label | Description |
|---|---|---|
| Theorem | ||
| 17-Aug-2026 | difelsiga 34556 | A sigma-algebra is closed under class differences. The proof goes through difunielsiga 34554 and unelsiga 34555 rather than countable intersection, and so does not use ax-ac 10461. (Contributed by Thierry Arnoux, 13-Sep-2016.) (Proof shortened by Vincent Gonzalez, 17-Aug-2026.) |
| ⊢ ((𝑆 ∈ ∪ ran sigAlgebra ∧ 𝐴 ∈ 𝑆 ∧ 𝐵 ∈ 𝑆) → (𝐴 ∖ 𝐵) ∈ 𝑆) | ||
| 17-Aug-2026 | difunielsiga 34554 | A sigma-algebra is closed under complement relative to its base set. This is immediate from the definition, see issiga 34533, but the library states it nowhere in this form. (Contributed by Vincent Gonzalez, 17-Aug-2026.) |
| ⊢ ((𝑆 ∈ ∪ ran sigAlgebra ∧ 𝐴 ∈ 𝑆) → (∪ 𝑆 ∖ 𝐴) ∈ 𝑆) | ||
| 16-Aug-2026 | relresfld 6283 | Restriction of a relation to its field. (Contributed by FL, 15-Apr-2012.) (Proof shortened by Eric Schmidt, 16-Aug-2026.) |
| ⊢ (Rel 𝑅 → (𝑅 ↾ ∪ ∪ 𝑅) = 𝑅) | ||
| 15-Aug-2026 | f1resfz0f1d 13840 | If a function with a sequence of nonnegative integers (starting at 0) as its domain is one-to-one when 0 is removed, and if the range of that restriction does not contain the function's value at the removed integer, then the function is itself one-to-one. (Contributed by BTernaryTau, 4-Oct-2023.) (Revised by Mingli Yuan, 15-Aug-2026.) |
| ⊢ (𝜑 → 𝐾 ∈ ℕ0) & ⊢ (𝜑 → 𝐹:(0...𝐾)⟶𝑉) & ⊢ (𝜑 → Fun ◡(𝐹 ↾ (1...𝐾))) & ⊢ (𝜑 → ((𝐹 “ {0}) ∩ (𝐹 “ (1...𝐾))) = ∅) ⇒ ⊢ (𝜑 → 𝐹:(0...𝐾)–1-1→𝑉) | ||
| 15-Aug-2026 | f1resrcmplf1dlem 7279 | Lemma for f1resrcmplf1d 7280. (Contributed by BTernaryTau, 27-Sep-2023.) (Revised by Mingli Yuan, 15-Aug-2026.) |
| ⊢ (𝜑 → 𝐶 ⊆ 𝐴) & ⊢ (𝜑 → 𝐷 ⊆ 𝐴) & ⊢ (𝜑 → 𝐹:𝐴⟶𝐵) & ⊢ (𝜑 → ((𝐹 “ 𝐶) ∩ (𝐹 “ 𝐷)) = ∅) & ⊢ (𝜑 → 𝑋 ∈ 𝐶) & ⊢ (𝜑 → 𝑌 ∈ 𝐷) & ⊢ (𝜑 → (𝐹‘𝑋) = (𝐹‘𝑌)) ⇒ ⊢ (𝜑 → 𝑋 = 𝑌) | ||
| 12-Aug-2026 | ress0g 18849 | 0g is unaffected by restriction. This is a bit more generic than submnd0 18851. (Contributed by Thierry Arnoux, 23-Oct-2017.) (Proof shortened by AV, 12-Aug-2026.) |
| ⊢ 𝑆 = (𝑅 ↾s 𝐴) & ⊢ 𝐵 = (Base‘𝑅) & ⊢ 0 = (0g‘𝑅) ⇒ ⊢ ((𝑅 ∈ Mnd ∧ 0 ∈ 𝐴 ∧ 𝐴 ⊆ 𝐵) → 0 = (0g‘𝑆)) | ||
| 12-Aug-2026 | idressid 18762 | The restriction of a structure with an identity element to a subset containing the identity element has the same identity element. (Contributed by Jeff Madsen, 8-Jun-2010.) (Revised by Mario Carneiro, 23-Dec-2013.) (Revised by AV, 12-Aug-2026.) |
| ⊢ 𝐵 = (Base‘𝐺) & ⊢ + = (+g‘𝐺) & ⊢ 0 = (0g‘𝐺) & ⊢ (𝜑 → ∃𝑒 ∈ 𝐵 ∀𝑥 ∈ 𝐵 ((𝑒 + 𝑥) = 𝑥 ∧ (𝑥 + 𝑒) = 𝑥)) & ⊢ 𝑆 = (𝐺 ↾s 𝐴) & ⊢ (𝜑 → 𝐴 ⊆ 𝐵) & ⊢ (𝜑 → 0 ∈ 𝐴) ⇒ ⊢ (𝜑 → (0g‘𝑆) = 0 ) | ||
| 11-Aug-2026 | wrdf1d 50663 | A one-to-one word maps its domain into its alphabet. (Contributed by Mingli Yuan, 11-Aug-2026.) |
| ⊢ (𝜑 → 𝑊 ∈ Word 𝐷) & ⊢ (𝜑 → Fun ◡𝑊) ⇒ ⊢ (𝜑 → 𝑊:dom 𝑊–1-1→𝐷) | ||
| 11-Aug-2026 | idressidex 18761 | The restriction of a structure with an identity element to a subset containing the identity element has an identity element. (Contributed by Jeff Madsen, 8-Jun-2010.) (Revised by Mario Carneiro, 23-Dec-2013.) (Revised by AV, 11-Aug-2026.) |
| ⊢ 𝐵 = (Base‘𝐺) & ⊢ + = (+g‘𝐺) & ⊢ 0 = (0g‘𝐺) & ⊢ (𝜑 → ∃𝑒 ∈ 𝐵 ∀𝑥 ∈ 𝐵 ((𝑒 + 𝑥) = 𝑥 ∧ (𝑥 + 𝑒) = 𝑥)) & ⊢ 𝑆 = (𝐺 ↾s 𝐴) & ⊢ (𝜑 → 𝐴 ⊆ 𝐵) & ⊢ (𝜑 → 0 ∈ 𝐴) ⇒ ⊢ (𝜑 → ∃𝑒 ∈ 𝐴 ∀𝑥 ∈ 𝐴 ((𝑒 + 𝑥) = 𝑥 ∧ (𝑥 + 𝑒) = 𝑥)) | ||
| 11-Aug-2026 | idressidex0 18760 | The restriction of a structure with an identity element to a subset containing the identity element has an identity element. (Contributed by Jeff Madsen, 8-Jun-2010.) (Revised by Mario Carneiro, 23-Dec-2013.) (Revised by AV, 11-Aug-2026.) |
| ⊢ 𝐵 = (Base‘𝐺) & ⊢ + = (+g‘𝐺) & ⊢ 0 = (0g‘𝐺) & ⊢ (𝜑 → ∃𝑒 ∈ 𝐵 ∀𝑥 ∈ 𝐵 ((𝑒 + 𝑥) = 𝑥 ∧ (𝑥 + 𝑒) = 𝑥)) & ⊢ 𝑆 = (𝐺 ↾s 𝐴) & ⊢ (𝜑 → 𝐴 ⊆ 𝐵) & ⊢ (𝜑 → 0 ∈ 𝐴) & ⊢ 𝐶 = (Base‘𝑆) ⇒ ⊢ (𝜑 → ∃𝑒 ∈ 𝐶 ∀𝑥 ∈ 𝐶 ((𝑒 + 𝑥) = 𝑥 ∧ (𝑥 + 𝑒) = 𝑥)) | ||
| 11-Aug-2026 | 0gisid 18751 | In a structure with an identity element, the group identity element is an identity element of the structure. (Contributed by Jeff Madsen, 8-Jun-2010.) (Revised by Mario Carneiro, 23-Dec-2013.) (Revised by AV, 11-Aug-2026.) |
| ⊢ 𝐵 = (Base‘𝐺) & ⊢ 0 = (0g‘𝐺) & ⊢ + = (+g‘𝐺) & ⊢ (𝜑 → ∃𝑒 ∈ 𝐵 ∀𝑥 ∈ 𝐵 ((𝑒 + 𝑥) = 𝑥 ∧ (𝑥 + 𝑒) = 𝑥)) ⇒ ⊢ (𝜑 → ( 0 ∈ 𝐵 ∧ ∀𝑥 ∈ 𝐵 (( 0 + 𝑥) = 𝑥 ∧ (𝑥 + 0 ) = 𝑥))) | ||
| 10-Aug-2026 | had0 1634 | If the first input is false, then the adder sum is equivalent to the exclusive disjunction of the other two inputs, and conversely. (Contributed by Mario Carneiro, 4-Sep-2016.) (Proof shortened by Wolf Lammen, 12-Jul-2020.) Strengthen to a biconditional. (Revised by BJ, 10-Aug-2026.) |
| ⊢ (¬ 𝜑 ↔ (hadd(𝜑, 𝜓, 𝜒) ↔ (𝜓 ⊻ 𝜒))) | ||
| 10-Aug-2026 | had1 1633 | If the first input is true, then the adder sum is equivalent to the biconditionality of the other two inputs, and conversely. (Contributed by Mario Carneiro, 4-Sep-2016.) (Proof shortened by Wolf Lammen, 11-Jul-2020.) Strengthen to a biconditional. (Revised by BJ, 10-Aug-2026.) |
| ⊢ (𝜑 ↔ (hadd(𝜑, 𝜓, 𝜒) ↔ (𝜓 ↔ 𝜒))) | ||
| 10-Aug-2026 | birot 389 | Rotation of the arguments of the nested implication (. ↔ (. ↔ .)) (a general phenomenon for a commutative associative binary operation, see e.g., inrot 4188) . (Contributed by BJ, 10-Aug-2026.) |
| ⊢ ((𝜑 ↔ (𝜓 ↔ 𝜒)) ↔ (𝜓 ↔ (𝜒 ↔ 𝜑))) | ||
| 8-Aug-2026 | dfring2 20403 | The predicate "is a unital ring" based on a ring being abelian. Definition of "ring with unit" in [Lang] p. 83. (Contributed by Jeff Hankins, 21-Nov-2006.) (Revised by AV, 8-Aug-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ · = (.r‘𝑅) & ⊢ 𝐺 = (mulGrp‘𝑅) & ⊢ + = (+g‘𝑅) ⇒ ⊢ (𝑅 ∈ Ring ↔ (𝑅 ∈ Abel ∧ 𝐺 ∈ Mnd ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ∀𝑧 ∈ 𝐵 ((𝑥 · (𝑦 + 𝑧)) = ((𝑥 · 𝑦) + (𝑥 · 𝑧)) ∧ ((𝑥 + 𝑦) · 𝑧) = ((𝑥 · 𝑧) + (𝑦 · 𝑧))))) | ||
| 8-Aug-2026 | relcnvtrg 6273 | Subclass law for converse of a composition. A particular case is ((𝑅 ∘ 𝑅) ⊆ 𝑅 ↔ (◡𝑅 ∘ ◡𝑅) ⊆ ◡𝑅), which says that a relation is transitive iff its converse is transitive. (Contributed by FL, 19-Sep-2011.) Generalize to a statement about three classes rather than one. (Revised by Peter Mazsa, 17-Oct-2023.) Remove antecedent. (Revised by Eric Schmidt, 8-Aug-2026.) |
| ⊢ ((𝑅 ∘ 𝑆) ⊆ 𝑇 ↔ (◡𝑆 ∘ ◡𝑅) ⊆ ◡𝑇) | ||
| 5-Aug-2026 | f1owe 7362 | Well-ordering of isomorphic relations. (Contributed by NM, 4-Mar-1997.) Strengthen to biconditional. (Revised by Eric Schmidt, 5-Aug-2026.) |
| ⊢ 𝑅 = {〈𝑥, 𝑦〉 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝑦)} ⇒ ⊢ (𝐹:𝐴–1-1-onto→𝐵 → (𝑅 We 𝐴 ↔ 𝑆 We 𝐵)) | ||
| 4-Aug-2026 | f1we 7364 | Pull back a well ordering by a one-to-one function. (Contributed by Eric Schmidt, 4-Aug-2026.) |
| ⊢ 𝑅 = {〈𝑥, 𝑦〉 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝑦)} ⇒ ⊢ (𝐹:𝐴–1-1→𝐵 → (𝑆 We 𝐵 → 𝑅 We 𝐴)) | ||
| 3-Aug-2026 | nadddird 36739 | Natural multiplication distributes over natural addition. Deduction form. (Contributed by Scott Fenton, 3-Aug-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ On) & ⊢ (𝜑 → 𝐵 ∈ On) & ⊢ (𝜑 → 𝐶 ∈ On) ⇒ ⊢ (𝜑 → ((𝐴 +no 𝐵) ·no 𝐶) = ((𝐴 ·no 𝐶) +no (𝐵 ·no 𝐶))) | ||
| 3-Aug-2026 | nadddid 36738 | Natural multiplication distributes over natural addition. Deduction form. (Contributed by Scott Fenton, 3-Aug-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ On) & ⊢ (𝜑 → 𝐵 ∈ On) & ⊢ (𝜑 → 𝐶 ∈ On) ⇒ ⊢ (𝜑 → (𝐴 ·no (𝐵 +no 𝐶)) = ((𝐴 ·no 𝐵) +no (𝐴 ·no 𝐶))) | ||
| 3-Aug-2026 | nadddilem4 36736 | Lemma for nadddi 36737. Prove the forward implication. (Contributed by Scott Fenton, 3-Aug-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ On) & ⊢ (𝜑 → 𝐵 ∈ On) & ⊢ (𝜑 → 𝐶 ∈ On) & ⊢ (𝜑 → ∀𝑑 ∈ 𝐴 (𝑑 ·no (𝐵 +no 𝐶)) = ((𝑑 ·no 𝐵) +no (𝑑 ·no 𝐶))) & ⊢ (𝜑 → ∀𝑒 ∈ 𝐵 (𝐴 ·no (𝑒 +no 𝐶)) = ((𝐴 ·no 𝑒) +no (𝐴 ·no 𝐶))) & ⊢ (𝜑 → ∀𝑓 ∈ 𝐶 (𝐴 ·no (𝐵 +no 𝑓)) = ((𝐴 ·no 𝐵) +no (𝐴 ·no 𝑓))) & ⊢ (𝜑 → ∀𝑑 ∈ 𝐴 ∀𝑒 ∈ 𝐵 (𝑑 ·no (𝑒 +no 𝐶)) = ((𝑑 ·no 𝑒) +no (𝑑 ·no 𝐶))) & ⊢ (𝜑 → ∀𝑑 ∈ 𝐴 ∀𝑓 ∈ 𝐶 (𝑑 ·no (𝐵 +no 𝑓)) = ((𝑑 ·no 𝐵) +no (𝑑 ·no 𝑓))) ⇒ ⊢ (𝜑 → (𝐴 ·no (𝐵 +no 𝐶)) ⊆ ((𝐴 ·no 𝐵) +no (𝐴 ·no 𝐶))) | ||
| 3-Aug-2026 | nadddilem3 36735 | Lemma for nadddi 36737. Prove a subcase of the forward implication. (Contributed by Scott Fenton, 3-Aug-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ On) & ⊢ (𝜑 → 𝐵 ∈ On) & ⊢ (𝜑 → 𝐶 ∈ On) & ⊢ (𝜑 → 𝑋 ∈ 𝐴) & ⊢ (𝜑 → 𝑌 ∈ (𝐵 +no 𝐶)) & ⊢ (𝜑 → 𝑍 ∈ 𝐵) & ⊢ (𝜑 → 𝑌 ⊆ (𝑍 +no 𝐶)) & ⊢ (𝜑 → ∀𝑑 ∈ 𝐴 (𝑑 ·no (𝐵 +no 𝐶)) = ((𝑑 ·no 𝐵) +no (𝑑 ·no 𝐶))) & ⊢ (𝜑 → ∀𝑒 ∈ 𝐵 (𝐴 ·no (𝑒 +no 𝐶)) = ((𝐴 ·no 𝑒) +no (𝐴 ·no 𝐶))) & ⊢ (𝜑 → ∀𝑑 ∈ 𝐴 ∀𝑒 ∈ 𝐵 (𝑑 ·no (𝑒 +no 𝐶)) = ((𝑑 ·no 𝑒) +no (𝑑 ·no 𝐶))) ⇒ ⊢ (𝜑 → ((𝑋 ·no (𝐵 +no 𝐶)) +no (𝐴 ·no 𝑌)) ∈ (((𝐴 ·no 𝐵) +no (𝐴 ·no 𝐶)) +no (𝑋 ·no 𝑌))) | ||
| 1-Aug-2026 | crossp3i 50690 | The vector triple product expansion (BAC-CAB rule): the cross product of 𝑋 with (𝑌⊠𝑍) equals 𝑌 scaled by the dot product of 𝑋 and 𝑍, minus 𝑍 scaled by the dot product of 𝑋 and 𝑌. The dot products are written out as explicit three-term sums of component products, matching the pointwise style of df-crossp 50674 rather than introducing a separate dot product operator. (Contributed by Jiamin Zhao, 1-Aug-2026.) |
| ⊢ 𝑋 ∈ (ℝ ↑m (1...3)) & ⊢ 𝑌 ∈ (ℝ ↑m (1...3)) & ⊢ 𝑍 ∈ (ℝ ↑m (1...3)) ⇒ ⊢ (𝑋⊠(𝑌⊠𝑍)) = (𝑘 ∈ (1...3) ↦ ((((((𝑋‘1) · (𝑍‘1)) + ((𝑋‘2) · (𝑍‘2))) + ((𝑋‘3) · (𝑍‘3))) · (𝑌‘𝑘)) − (((((𝑋‘1) · (𝑌‘1)) + ((𝑋‘2) · (𝑌‘2))) + ((𝑋‘3) · (𝑌‘3))) · (𝑍‘𝑘)))) | ||
| 1-Aug-2026 | crosspalti 50689 | Antisymmetry of the cross product: swapping the two vectors negates the result. (Contributed by Jiamin Zhao, 1-Aug-2026.) |
| ⊢ 𝐴 ∈ (ℝ ↑m (1...3)) & ⊢ 𝐵 ∈ (ℝ ↑m (1...3)) ⇒ ⊢ (𝐴⊠𝐵) = (𝑘 ∈ (1...3) ↦ -((𝐵⊠𝐴)‘𝑘)) | ||
| 1-Aug-2026 | crosspdoti 50688 | Value of the scalar triple product, expanded into the standard six-term Sarrus polynomial. (Contributed by Jiamin Zhao, 1-Aug-2026.) |
| ⊢ 𝐴 ∈ (ℝ ↑m (1...3)) & ⊢ 𝐵 ∈ (ℝ ↑m (1...3)) & ⊢ 𝐶 ∈ (ℝ ↑m (1...3)) ⇒ ⊢ (𝐵(tripp‘𝐴)𝐶) = (((((𝐴‘1) · (𝐵‘2)) · (𝐶‘3)) − (((𝐴‘1) · (𝐵‘3)) · (𝐶‘2))) + (((((𝐴‘2) · (𝐵‘3)) · (𝐶‘1)) − (((𝐴‘2) · (𝐵‘1)) · (𝐶‘3))) + ((((𝐴‘3) · (𝐵‘1)) · (𝐶‘2)) − (((𝐴‘3) · (𝐵‘2)) · (𝐶‘1))))) | ||
| 1-Aug-2026 | crosspdotsumi 50687 | Expand the group sum over (1...3) into an explicit three-term sum. (A helper for crosspdoti 50688.) (Contributed by Jiamin Zhao, 1-Aug-2026.) |
| ⊢ 𝐴 ∈ (ℝ ↑m (1...3)) & ⊢ 𝐵 ∈ (ℝ ↑m (1...3)) & ⊢ 𝐶 ∈ (ℝ ↑m (1...3)) ⇒ ⊢ (ℝfld Σg (𝑘 ∈ (1...3) ↦ ((𝐴‘𝑘) · ((𝐵⊠𝐶)‘𝑘)))) = (((𝐴‘1) · ((𝐵⊠𝐶)‘1)) + (((𝐴‘2) · ((𝐵⊠𝐶)‘2)) + ((𝐴‘3) · ((𝐵⊠𝐶)‘3)))) | ||
| 1-Aug-2026 | crosspdot0i 50686 | Unfold the curried scalar triple product application into an explicit group sum. (A helper for crosspdoti 50688.) (Contributed by Jiamin Zhao, 1-Aug-2026.) |
| ⊢ 𝐴 ∈ (ℝ ↑m (1...3)) & ⊢ 𝐵 ∈ (ℝ ↑m (1...3)) & ⊢ 𝐶 ∈ (ℝ ↑m (1...3)) ⇒ ⊢ (𝐵(tripp‘𝐴)𝐶) = (ℝfld Σg (𝑘 ∈ (1...3) ↦ ((𝐴‘𝑘) · ((𝐵⊠𝐶)‘𝑘)))) | ||
| 1-Aug-2026 | crosspclifi 50681 | Closure of the three-way Sarrus case split used in the cross product's mapping rule. (A helper for crosspcli 50682.) (Contributed by Jiamin Zhao, 1-Aug-2026.) |
| ⊢ 𝐴 ∈ (ℝ ↑m (1...3)) & ⊢ 𝐵 ∈ (ℝ ↑m (1...3)) ⇒ ⊢ if(𝑘 = 1, (((𝐴‘2) · (𝐵‘3)) − ((𝐴‘3) · (𝐵‘2))), if(𝑘 = 2, (((𝐴‘3) · (𝐵‘1)) − ((𝐴‘1) · (𝐵‘3))), (((𝐴‘1) · (𝐵‘2)) − ((𝐴‘2) · (𝐵‘1))))) ∈ ℝ | ||
| 1-Aug-2026 | 3elfz13 50668 | Membership of 3 in the integer interval ( 1 ... 3 ). (Contributed by Jiamin Zhao, 1-Aug-2026.) |
| ⊢ 3 ∈ (1...3) | ||
| 1-Aug-2026 | 2elfz13 50667 | Membership of 2 in the integer interval ( 1 ... 3 ). (Suggested by tirix.) (Contributed by Jiamin Zhao, 1-Aug-2026.) |
| ⊢ 2 ∈ (1...3) | ||
| 1-Aug-2026 | 1elfz13 50666 | Membership of 1 in the integer interval ( 1 ... 3 ). (Suggested by avekens.) (Contributed by Jiamin Zhao, 1-Aug-2026.) |
| ⊢ 1 ∈ (1...3) | ||
| 1-Aug-2026 | 2ne3 50665 | 2 is not equal to 3. (Contributed by Jiamin Zhao, 1-Aug-2026.) |
| ⊢ 2 ≠ 3 | ||
| 1-Aug-2026 | 1ne3 50664 | 1 is not equal to 3. (Contributed by Jiamin Zhao, 1-Aug-2026.) |
| ⊢ 1 ≠ 3 | ||
| 31-Jul-2026 | crosspv3i 50685 | Value of the third component of the cross product. (Contributed by Jiamin Zhao, 31-Jul-2026.) |
| ⊢ 𝐴 ∈ (ℝ ↑m (1...3)) & ⊢ 𝐵 ∈ (ℝ ↑m (1...3)) ⇒ ⊢ ((𝐴⊠𝐵)‘3) = (((𝐴‘1) · (𝐵‘2)) − ((𝐴‘2) · (𝐵‘1))) | ||
| 31-Jul-2026 | crosspv2i 50684 | Value of the second component of the cross product. (Contributed by Jiamin Zhao, 31-Jul-2026.) |
| ⊢ 𝐴 ∈ (ℝ ↑m (1...3)) & ⊢ 𝐵 ∈ (ℝ ↑m (1...3)) ⇒ ⊢ ((𝐴⊠𝐵)‘2) = (((𝐴‘3) · (𝐵‘1)) − ((𝐴‘1) · (𝐵‘3))) | ||
| 31-Jul-2026 | crosspv1i 50683 | Value of the first component of the cross product. (Contributed by Jiamin Zhao, 31-Jul-2026.) |
| ⊢ 𝐴 ∈ (ℝ ↑m (1...3)) & ⊢ 𝐵 ∈ (ℝ ↑m (1...3)) ⇒ ⊢ ((𝐴⊠𝐵)‘1) = (((𝐴‘2) · (𝐵‘3)) − ((𝐴‘3) · (𝐵‘2))) | ||
| 31-Jul-2026 | crosspcli 50682 | Closure of the cross product: the cross product of two 3-dimensional real coordinate vectors is again such a vector. (Contributed by Jiamin Zhao, 31-Jul-2026.) |
| ⊢ 𝐴 ∈ (ℝ ↑m (1...3)) & ⊢ 𝐵 ∈ (ℝ ↑m (1...3)) ⇒ ⊢ (𝐴⊠𝐵) ∈ (ℝ ↑m (1...3)) | ||
| 31-Jul-2026 | crosspcle3i 50680 | Closure of the third component of the cross product's Sarrus expansion. (A helper for crosspclifi 50681 and crosspv3i 50685.) (Contributed by Jiamin Zhao, 31-Jul-2026.) |
| ⊢ 𝐴 ∈ (ℝ ↑m (1...3)) & ⊢ 𝐵 ∈ (ℝ ↑m (1...3)) ⇒ ⊢ (((𝐴‘1) · (𝐵‘2)) − ((𝐴‘2) · (𝐵‘1))) ∈ ℝ | ||
| 31-Jul-2026 | crosspcle2i 50679 | Closure of the second component of the cross product's Sarrus expansion. (A helper for crosspclifi 50681 and crosspv2i 50684.) (Contributed by Jiamin Zhao, 31-Jul-2026.) |
| ⊢ 𝐴 ∈ (ℝ ↑m (1...3)) & ⊢ 𝐵 ∈ (ℝ ↑m (1...3)) ⇒ ⊢ (((𝐴‘3) · (𝐵‘1)) − ((𝐴‘1) · (𝐵‘3))) ∈ ℝ | ||
| 31-Jul-2026 | crosspcle1i 50678 | Closure of the first component of the cross product's Sarrus expansion. (A helper for crosspclifi 50681 and crosspv1i 50683.) (Contributed by Jiamin Zhao, 31-Jul-2026.) |
| ⊢ 𝐴 ∈ (ℝ ↑m (1...3)) & ⊢ 𝐵 ∈ (ℝ ↑m (1...3)) ⇒ ⊢ (((𝐴‘2) · (𝐵‘3)) − ((𝐴‘3) · (𝐵‘2))) ∈ ℝ | ||
| 31-Jul-2026 | crosspval 50677 | Value of the cross product of two 3-dimensional real coordinate vectors as a function on (1...3). (Contributed by Jiamin Zhao, 31-Jul-2026.) |
| ⊢ ((𝐴 ∈ (ℝ ↑m (1...3)) ∧ 𝐵 ∈ (ℝ ↑m (1...3))) → (𝐴⊠𝐵) = (𝑘 ∈ (1...3) ↦ if(𝑘 = 1, (((𝐴‘2) · (𝐵‘3)) − ((𝐴‘3) · (𝐵‘2))), if(𝑘 = 2, (((𝐴‘3) · (𝐵‘1)) − ((𝐴‘1) · (𝐵‘3))), (((𝐴‘1) · (𝐵‘2)) − ((𝐴‘2) · (𝐵‘1))))))) | ||
| 31-Jul-2026 | df-tripp 50676 | Define the scalar triple product of three 3-dimensional real coordinate vectors as the dot product of the first vector with the cross product of the other two. Vectors are represented as functions on (1...3). Apply as (𝑦(tripp‘𝑥)𝑧). (Contributed by Jiamin Zhao, 31-Jul-2026.) |
| ⊢ tripp = (𝑥 ∈ (ℝ ↑m (1...3)) ↦ (𝑦 ∈ (ℝ ↑m (1...3)), 𝑧 ∈ (ℝ ↑m (1...3)) ↦ (ℝfld Σg (𝑘 ∈ (1...3) ↦ ((𝑥‘𝑘) · ((𝑦⊠𝑧)‘𝑘)))))) | ||
| 31-Jul-2026 | ctripp 50675 | Extend class notation to include the scalar triple product of 3-dimensional real coordinate vectors. (Contributed by Jiamin Zhao, 31-Jul-2026.) |
| class tripp | ||
| 31-Jul-2026 | df-crossp 50674 | Define the cross product of two 3-dimensional real coordinate vectors. Vectors are represented as functions on (1...3). (Contributed by Jiamin Zhao, 31-Jul-2026.) |
| ⊢ ⊠ = (𝑢 ∈ (ℝ ↑m (1...3)), 𝑣 ∈ (ℝ ↑m (1...3)) ↦ (𝑘 ∈ (1...3) ↦ if(𝑘 = 1, (((𝑢‘2) · (𝑣‘3)) − ((𝑢‘3) · (𝑣‘2))), if(𝑘 = 2, (((𝑢‘3) · (𝑣‘1)) − ((𝑢‘1) · (𝑣‘3))), (((𝑢‘1) · (𝑣‘2)) − ((𝑢‘2) · (𝑣‘1))))))) | ||
| 31-Jul-2026 | ccrossp 50673 | Extend class notation to include the cross product operation. (Contributed by Jiamin Zhao, 31-Jul-2026.) |
| class ⊠ | ||
| 31-Jul-2026 | rr3fv3cli 50672 | Third component of a 3-dimensional real coordinate vector is real. (Contributed by Jiamin Zhao, 31-Jul-2026.) |
| ⊢ 𝐴 ∈ (ℝ ↑m (1...3)) ⇒ ⊢ (𝐴‘3) ∈ ℝ | ||
| 31-Jul-2026 | rr3fv2cli 50671 | Second component of a 3-dimensional real coordinate vector is real. (Contributed by Jiamin Zhao, 31-Jul-2026.) |
| ⊢ 𝐴 ∈ (ℝ ↑m (1...3)) ⇒ ⊢ (𝐴‘2) ∈ ℝ | ||
| 31-Jul-2026 | rr3fv1cli 50670 | First component of a 3-dimensional real coordinate vector is real. (Contributed by Jiamin Zhao, 31-Jul-2026.) |
| ⊢ 𝐴 ∈ (ℝ ↑m (1...3)) ⇒ ⊢ (𝐴‘1) ∈ ℝ | ||
| 31-Jul-2026 | rr3fvcl 50669 | The components of a 3-dimensional real coordinate vector are real numbers. (Contributed by Jiamin Zhao, 31-Jul-2026.) |
| ⊢ (𝐴 ∈ (ℝ ↑m (1...3)) → ((𝐴‘1) ∈ ℝ ∧ (𝐴‘2) ∈ ℝ ∧ (𝐴‘3) ∈ ℝ)) | ||
| 31-Jul-2026 | nadddilem2 36734 | Lemma for nadddi 36737. Prove the reverse implication. (Contributed by Scott Fenton, 31-Jul-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ On) & ⊢ (𝜑 → 𝐵 ∈ On) & ⊢ (𝜑 → 𝐶 ∈ On) & ⊢ (𝜑 → ∀𝑑 ∈ 𝐴 (𝑑 ·no (𝐵 +no 𝐶)) = ((𝑑 ·no 𝐵) +no (𝑑 ·no 𝐶))) & ⊢ (𝜑 → ∀𝑒 ∈ 𝐵 (𝐴 ·no (𝑒 +no 𝐶)) = ((𝐴 ·no 𝑒) +no (𝐴 ·no 𝐶))) & ⊢ (𝜑 → ∀𝑓 ∈ 𝐶 (𝐴 ·no (𝐵 +no 𝑓)) = ((𝐴 ·no 𝐵) +no (𝐴 ·no 𝑓))) & ⊢ (𝜑 → ∀𝑑 ∈ 𝐴 ∀𝑒 ∈ 𝐵 (𝑑 ·no (𝑒 +no 𝐶)) = ((𝑑 ·no 𝑒) +no (𝑑 ·no 𝐶))) & ⊢ (𝜑 → ∀𝑑 ∈ 𝐴 ∀𝑓 ∈ 𝐶 (𝑑 ·no (𝐵 +no 𝑓)) = ((𝑑 ·no 𝐵) +no (𝑑 ·no 𝑓))) ⇒ ⊢ (𝜑 → ((𝐴 ·no 𝐵) +no (𝐴 ·no 𝐶)) ⊆ (𝐴 ·no (𝐵 +no 𝐶))) | ||
| 31-Jul-2026 | nadddilem1 36733 | Lemma for nadddi 36737. Prove a subcase of the reverse implication. (Contributed by Scott Fenton, 31-Jul-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ On) & ⊢ (𝜑 → 𝐵 ∈ On) & ⊢ (𝜑 → 𝐶 ∈ On) & ⊢ (𝜑 → ∀𝑑 ∈ 𝐴 (𝑑 ·no (𝐵 +no 𝐶)) = ((𝑑 ·no 𝐵) +no (𝑑 ·no 𝐶))) & ⊢ (𝜑 → ∀𝑓 ∈ 𝐶 (𝐴 ·no (𝐵 +no 𝑓)) = ((𝐴 ·no 𝐵) +no (𝐴 ·no 𝑓))) & ⊢ (𝜑 → ∀𝑑 ∈ 𝐴 ∀𝑓 ∈ 𝐶 (𝑑 ·no (𝐵 +no 𝑓)) = ((𝑑 ·no 𝐵) +no (𝑑 ·no 𝑓))) ⇒ ⊢ ((𝜑 ∧ 𝑌 ∈ (𝐴 ·no 𝐶)) → ((𝐴 ·no 𝐵) +no 𝑌) ∈ (𝐴 ·no (𝐵 +no 𝐶))) | ||
| 31-Jul-2026 | onelssd 36714 | An element of an ordinal number is a subset of the number. Deduction form. (Contributed by Scott Fenton, 31-Jul-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ On) & ⊢ (𝜑 → 𝐵 ∈ 𝐴) ⇒ ⊢ (𝜑 → 𝐵 ⊆ 𝐴) | ||
| 31-Jul-2026 | ontr2d 36713 | Transitive law for ordinal numbers. Exercise 3 of [TakeutiZaring] p. 40. Deduction form. (Contributed by Scott Fenton, 31-Jul-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ On) & ⊢ (𝜑 → 𝐶 ∈ On) & ⊢ (𝜑 → 𝐴 ⊆ 𝐵) & ⊢ (𝜑 → 𝐵 ∈ 𝐶) ⇒ ⊢ (𝜑 → 𝐴 ∈ 𝐶) | ||
| 31-Jul-2026 | onelond 36712 | An element of an ordinal number is an ordinal number. Theorem 2.2(iii) of [BellMachover] p. 469. Lemma 1.3 of [Schloeder] p. 1. Deduction form. (Contributed by Scott Fenton, 31-Jul-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ On) & ⊢ (𝜑 → 𝐵 ∈ 𝐴) ⇒ ⊢ (𝜑 → 𝐵 ∈ On) | ||
| 30-Jul-2026 | nadd32d 36724 | Commutative/associative law that swaps the last two terms in a triple sum. Deduction form. (Contributed by Scott Fenton, 30-Jul-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ On) & ⊢ (𝜑 → 𝐵 ∈ On) & ⊢ (𝜑 → 𝐶 ∈ On) ⇒ ⊢ (𝜑 → ((𝐴 +no 𝐵) +no 𝐶) = ((𝐴 +no 𝐶) +no 𝐵)) | ||
| 30-Jul-2026 | naddassd 36723 | Natural addition associates. Deduction form. (Contributed by Scott Fenton, 30-Jul-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ On) & ⊢ (𝜑 → 𝐵 ∈ On) & ⊢ (𝜑 → 𝐶 ∈ On) ⇒ ⊢ (𝜑 → ((𝐴 +no 𝐵) +no 𝐶) = (𝐴 +no (𝐵 +no 𝐶))) | ||
| 30-Jul-2026 | naddcomd 36722 | Natural addition commutes. Deduction form. (Contributed by Scott Fenton, 30-Jul-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ On) & ⊢ (𝜑 → 𝐵 ∈ On) ⇒ ⊢ (𝜑 → (𝐴 +no 𝐵) = (𝐵 +no 𝐴)) | ||
| 30-Jul-2026 | naddlidd 36721 | Identity law for natural addition. Deduction form. (Contributed by Scott Fenton, 30-Jul-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ On) ⇒ ⊢ (𝜑 → (∅ +no 𝐴) = 𝐴) | ||
| 30-Jul-2026 | naddridd 36720 | Identity law for natural addition. Deduction form. (Contributed by Scott Fenton, 30-Jul-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ On) ⇒ ⊢ (𝜑 → (𝐴 +no ∅) = 𝐴) | ||
| 30-Jul-2026 | nmulcomd 36719 | Natural multiplication commutes. Deduction form. (Contributed by Scott Fenton, 30-Jul-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ On) & ⊢ (𝜑 → 𝐵 ∈ On) ⇒ ⊢ (𝜑 → (𝐴 ·no 𝐵) = (𝐵 ·no 𝐴)) | ||
| 30-Jul-2026 | nmullidd 36718 | Identity law for natural multiplication. Deduction form. (Contributed by Scott Fenton, 30-Jul-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ On) ⇒ ⊢ (𝜑 → (1o ·no 𝐴) = 𝐴) | ||
| 30-Jul-2026 | nmulridd 36717 | Identity law for natural multiplication. Deduction form. (Contributed by Scott Fenton, 30-Jul-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ On) ⇒ ⊢ (𝜑 → (𝐴 ·no 1o) = 𝐴) | ||
| 30-Jul-2026 | nmull0d 36716 | Natural multiplication by zero. Deduction form. (Contributed by Scott Fenton, 30-Jul-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ On) ⇒ ⊢ (𝜑 → (∅ ·no 𝐴) = ∅) | ||
| 30-Jul-2026 | nmulr0d 36715 | Natural multiplication by zero. Deduction form. (Contributed by Scott Fenton, 30-Jul-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ On) ⇒ ⊢ (𝜑 → (𝐴 ·no ∅) = ∅) | ||
| 27-Jul-2026 | nadddi 36737 | Natural multiplication distributes over natural addition. (Contributed by Scott Fenton, 27-Jul-2026.) |
| ⊢ ((𝐴 ∈ On ∧ 𝐵 ∈ On ∧ 𝐶 ∈ On) → (𝐴 ·no (𝐵 +no 𝐶)) = ((𝐴 ·no 𝐵) +no (𝐴 ·no 𝐶))) | ||
| 24-Jul-2026 | ricer 20641 | Ring isomorphism is an equivalence relation. (Contributed by Jeff Madsen, 16-Jun-2011.) (Revised by Mario Carneiro, 12-Aug-2015.) (Revised by AV, 24-Jul-2026.) |
| ⊢ ≃𝑟 Er Ring | ||
| 24-Jul-2026 | ricref 20633 | Ring isomorphism is reflexive. (Contributed by by AV, 24-Jul-2026.) |
| ⊢ (𝑅 ∈ Ring → 𝑅 ≃𝑟 𝑅) | ||
| 24-Jul-2026 | ricrel 20629 | The domain of the ring isomorphism relation is a relation. (Contributed by AV, 24-Jul-2026.) |
| ⊢ Rel ≃𝑟 | ||
| 24-Jul-2026 | rhmkerinj 20625 | A ring homomorphism is injective if and only if its kernel is zero. (Contributed by Jeff Madsen, 16-Jun-2011.) (Revised by AV, 24-Jul-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ 𝐶 = (Base‘𝑆) & ⊢ 0 = (0g‘𝑅) & ⊢ 𝑍 = (0g‘𝑆) ⇒ ⊢ (𝐹 ∈ (𝑅 RingHom 𝑆) → (𝐹:𝐵–1-1→𝐶 ↔ (◡𝐹 “ {𝑍}) = { 0 })) | ||
| 24-Jul-2026 | rimval 20615 | The set of ring isomorphisms. (Contributed by Jeff Madsen, 16-Jun-2011.) (Revised by AV, 24-Jul-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ 𝐶 = (Base‘𝑆) ⇒ ⊢ (𝑅 RingIso 𝑆) = {𝑓 ∈ (𝑅 RingHom 𝑆) ∣ 𝑓:𝐵–1-1-onto→𝐶} | ||
| 24-Jul-2026 | isrhm0 20591 | The predicate "is a ring homomorphism from 𝑅 to 𝑆". (Contributed by Jeff Madsen, 19-Jun-2010.) (Revised by AV, 24-Jul-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ 𝐶 = (Base‘𝑆) & ⊢ 1 = (1r‘𝑅) & ⊢ 𝑁 = (1r‘𝑆) & ⊢ · = (.r‘𝑅) & ⊢ × = (.r‘𝑆) & ⊢ + = (+g‘𝑅) & ⊢ ⨣ = (+g‘𝑆) ⇒ ⊢ ((𝑅 ∈ Ring ∧ 𝑆 ∈ Ring) → (𝐹 ∈ (𝑅 RingHom 𝑆) ↔ (𝐹:𝐵⟶𝐶 ∧ (𝐹‘ 1 ) = 𝑁 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ((𝐹‘(𝑥 + 𝑦)) = ((𝐹‘𝑥) ⨣ (𝐹‘𝑦)) ∧ (𝐹‘(𝑥 · 𝑦)) = ((𝐹‘𝑥) × (𝐹‘𝑦)))))) | ||
| 24-Jul-2026 | rhmval0 20590 | The set of ring homomorphisms. (Contributed by Jeff Madsen, 19-Jun-2010.) (Revised by Mario Carneiro, 22-Sep-2015.) (Revised by AV, 24-Jul-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ 𝐶 = (Base‘𝑆) & ⊢ 1 = (1r‘𝑅) & ⊢ 𝑁 = (1r‘𝑆) & ⊢ · = (.r‘𝑅) & ⊢ × = (.r‘𝑆) & ⊢ + = (+g‘𝑅) & ⊢ ⨣ = (+g‘𝑆) ⇒ ⊢ ((𝑅 ∈ Ring ∧ 𝑆 ∈ Ring) → (𝑅 RingHom 𝑆) = {𝑓 ∈ (𝐶 ↑m 𝐵) ∣ ((𝑓‘ 1 ) = 𝑁 ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐵 ((𝑓‘(𝑥 + 𝑦)) = ((𝑓‘𝑥) ⨣ (𝑓‘𝑦)) ∧ (𝑓‘(𝑥 · 𝑦)) = ((𝑓‘𝑥) × (𝑓‘𝑦))))}) | ||
| 23-Jul-2026 | isdrng5 20891 | A division ring is a ring in which 1 ≠ 0 and every nonzero element is invertible. (Contributed by Jeff Madsen, 8-Jun-2010.) (Revised by AV, 23-Jul-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ 0 = (0g‘𝑅) & ⊢ 1 = (1r‘𝑅) & ⊢ · = (.r‘𝑅) ⇒ ⊢ (𝑅 ∈ DivRing ↔ (𝑅 ∈ Ring ∧ 1 ≠ 0 ∧ ∀𝑥 ∈ (𝐵 ∖ { 0 })∃𝑦 ∈ 𝐵 (𝑦 · 𝑥) = 1 )) | ||
| 23-Jul-2026 | brric2 20639 | The ring isomorphism relation. (Contributed by Jeff Madsen, 16-Jun-2011.) (Revised by AV, 23-Jul-2026.) |
| ⊢ ((𝑅 ∈ Ring ∧ 𝑆 ∈ Ring) → (𝑅 ≃𝑟 𝑆 ↔ ∃𝑓 𝑓 ∈ (𝑅 RingIso 𝑆))) | ||
| 23-Jul-2026 | ricrcl 20635 | Ring isomorphism implies the right side is a ring. (Contributed by AV, 23-Jul-2026.) |
| ⊢ (𝑅 ≃𝑟 𝑆 → 𝑆 ∈ Ring) | ||
| 23-Jul-2026 | riclcl 20634 | Ring isomorphism implies the left side is a ring. (Contributed by AV, 23-Jul-2026.) |
| ⊢ (𝑅 ≃𝑟 𝑆 → 𝑅 ∈ Ring) | ||
| 23-Jul-2026 | rhm0 20608 | A ring homomorphism preserves 0. (Contributed by Jeff Madsen, 2-Jan-2011.) (Revised by AV, 23-Jul-2026.) |
| ⊢ 0 = (0g‘𝑅) & ⊢ 𝑍 = (0g‘𝑆) ⇒ ⊢ (𝐹 ∈ (𝑅 RingHom 𝑆) → (𝐹‘ 0 ) = 𝑍) | ||
| 22-Jul-2026 | sqrtqaa 47647 | Square root of a rational number is algebraic. (Contributed by Ender Ting, 22-Jul-2026.) |
| ⊢ (𝐴 ∈ ℚ → (√‘𝐴) ∈ 𝔸) | ||
| 22-Jul-2026 | sqrtnzqaa 47646 | Square root of a nonzero rational is algebraic. (Contributed by Ender Ting, 22-Jul-2026.) |
| ⊢ ((𝐴 ∈ ℚ ∧ 𝐴 ≠ 0) → (√‘𝐴) ∈ 𝔸) | ||
| 22-Jul-2026 | zrdrng 20909 | A zero ring is not a division ring. (Contributed by FL, 24-Jan-2010.) (Revised by AV, 22-Jul-2026.) |
| ⊢ 0 = (0g‘𝑅) & ⊢ 1 = (1r‘𝑅) ⇒ ⊢ ( 0 = 1 → ¬ 𝑅 ∈ DivRing) | ||
| 22-Jul-2026 | isdrng3 20890 | A division ring is a ring in which 1 ≠ 0 and every nonzero element is invertible. (Contributed by Jeff Madsen, 8-Jun-2010.) (Revised by AV, 22-Jul-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ 0 = (0g‘𝑅) & ⊢ 1 = (1r‘𝑅) & ⊢ · = (.r‘𝑅) ⇒ ⊢ (𝑅 ∈ DivRing ↔ (𝑅 ∈ Ring ∧ 1 ≠ 0 ∧ ∀𝑥 ∈ (𝐵 ∖ { 0 })∃𝑦 ∈ (𝐵 ∖ { 0 })(𝑦 · 𝑥) = 1 )) | ||
| 22-Jul-2026 | isdrng3lem2 20889 | Lemma for isdrng3 20890 (for the right to left implication). Formerly part of proof for isdrng3 20890. (Contributed by Jeff Madsen, 8-Jun-2010.) (Revised by AV, 22-Jul-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ 0 = (0g‘𝑅) & ⊢ 1 = (1r‘𝑅) & ⊢ · = (.r‘𝑅) ⇒ ⊢ ((𝑅 ∈ Ring ∧ 1 ≠ 0 ∧ ∀𝑥 ∈ (𝐵 ∖ { 0 })∃𝑦 ∈ (𝐵 ∖ { 0 })(𝑦 · 𝑥) = 1 ) → ((mulGrp‘𝑅) ↾s (𝐵 ∖ { 0 })) ∈ Grp) | ||
| 22-Jul-2026 | isdrng3lem1 20888 | Lemma for isdrng3 20890 (for the left to right implication). Formerly part of proof for isdrng3 20890. (Contributed by Jeff Madsen, 8-Jun-2010.) (Revised by AV, 22-Jul-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ 0 = (0g‘𝑅) & ⊢ 1 = (1r‘𝑅) & ⊢ · = (.r‘𝑅) ⇒ ⊢ ((𝑅 ∈ Ring ∧ ((mulGrp‘𝑅) ↾s (𝐵 ∖ { 0 })) ∈ Grp) → ∀𝑥 ∈ (𝐵 ∖ { 0 })∃𝑦 ∈ (𝐵 ∖ { 0 })(𝑦 · 𝑥) = 1 ) | ||
| 22-Jul-2026 | isdrng3lem0 20887 | Lemma for isdrng3 20890: The base set of a multipication group restricted to a subset of the original base set. (Contributed by AV, 22-Jul-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) ⇒ ⊢ (Base‘((mulGrp‘𝑅) ↾s (𝐵 ∖ 𝑋))) = (𝐵 ∖ 𝑋) | ||
| 22-Jul-2026 | hta 9901 |
A ZFC emulation of Hilbert's transfinite axiom. The set 𝐵 has the
properties of Hilbert's epsilon, except that it also depends on a
well-ordering 𝑅. This theorem arose from
discussions with Raph
Levien on 5-Mar-2004 about translating the HOL proof language, which
uses Hilbert's epsilon. See
https://us.metamath.org/downloads/choice.txt
(copy of obsolete link
http://ghilbert.org/choice.txt) and
https://us.metamath.org/downloads/megillaward2005he.pdf.
Hilbert's epsilon is described at http://plato.stanford.edu/entries/epsilon-calculus/. This theorem differs from Hilbert's transfinite axiom described on that page in that it requires 𝑅 We 𝐴 as an antecedent. Class 𝐴 collects the sets of the least rank for which 𝜑(𝑥) is true. Class 𝐵, which emulates Hilbert's epsilon, is the minimum element in a well-ordering 𝑅 on 𝐴. If a well-ordering 𝑅 on 𝐴 can be expressed in a closed form, as might be the case if we are working with say natural numbers, we can eliminate the antecedent with modus ponens, giving us the exact equivalent of Hilbert's transfinite axiom. Otherwise, we replace 𝑅 with a dummy setvar variable, say 𝑤, and attach 𝑤 We 𝐴 as an antecedent in each step of the ZFC version of the HOL proof until the epsilon is eliminated. At that point, 𝐵 (which will have 𝑤 as a free variable) will no longer be present, and we can eliminate 𝑤 We 𝐴 by applying exlimiv 1963 and weth 10497, using scottex 9872 to establish the existence of 𝐴. For a version of this theorem scheme using class (meta)variables instead of wff (meta)variables, see htalem 9900. (Contributed by NM, 11-Mar-2004.) (Revised by Mario Carneiro, 25-Jun-2015.) Use the Scott operation. (Revised by BTernaryTau, 22-Jul-2026.) |
| ⊢ 𝐴 = Scott {𝑥 ∣ 𝜑} & ⊢ 𝐵 = (℩𝑦 ∈ 𝐴 ∀𝑧 ∈ 𝐴 ¬ 𝑧𝑅𝑦) ⇒ ⊢ (𝑅 We 𝐴 → (𝜑 → [𝐵 / 𝑥]𝜑)) | ||
| 22-Jul-2026 | scott0bs 9883 | Theorem scheme version of scott0b 9876. The collection of all 𝑥 of minimum rank such that 𝜑(𝑥) is true, is not empty iff there is an 𝑥 such that 𝜑(𝑥) holds. (Contributed by NM, 13-Oct-2003.) Use the Scott operation. (Revised by BTernaryTau, 22-Jul-2026.) |
| ⊢ (∃𝑥𝜑 ↔ Scott {𝑥 ∣ 𝜑} ≠ ∅) | ||
| 21-Jul-2026 | alseu-no-surprise 50657 | Demonstrate that there is never a "surprise" when using the "all some one" quantifier, that is, it is never possible for the consequent to be both always true and always false. This follows from als-no-surprise 50625 by alseuals 50643. For a contrast, see alimp-surprise 50599. (Contributed by David A. Wheeler, 21-Jul-2026.) |
| ⊢ ¬ (∀∃!𝑥(𝜑 → 𝜓) ∧ ∀∃!𝑥(𝜑 → ¬ 𝜓)) | ||
| 21-Jul-2026 | alseueu 50656 | "The 𝜑 is 𝜓 " implies that exactly one thing is both 𝜑 and 𝜓. This is the half of dfalseu2 50655 that drops the universal conjunct; it does not reverse, so ∃!𝑥(𝜑 ∧ 𝜓) cannot be used in place of an "all some one" statement. (Contributed by David A. Wheeler, 21-Jul-2026.) |
| ⊢ (∀∃!𝑥(𝜑 → 𝜓) → ∃!𝑥(𝜑 ∧ 𝜓)) | ||
| 21-Jul-2026 | dfalseu2 50655 |
An "all some one" statement is equivalent to its universal part
conjoined
with the claim that exactly one 𝑥 satisfies both 𝜑 and 𝜓.
In other words, given ∀𝑥(𝜑 → 𝜓), requiring exactly one 𝑥
to satisfy 𝜑, which is what df-alseu 50640 requires, and requiring
exactly one 𝑥 to satisfy (𝜑 ∧ 𝜓) come to the same thing.
Read 𝜑 as "is a king" and 𝜓 as
"is hungry": if every king is
hungry, then "there is exactly one king" and "there is
exactly one hungry
king" say the same thing, so either of them, together with
"every king is
hungry", gives "the king is hungry".
The universal conjunct is what makes that work, and it cannot be dropped. ∃!𝑥(𝜑 ∧ 𝜓) on its own is strictly weaker than ∀∃!𝑥(𝜑 → 𝜓), since it is satisfied when many things are 𝜑 and just one of those is 𝜓, as in a region with five kings exactly one of whom is hungry; see alseueu 50656 for the one direction that does hold without it. Uniqueness attaches to the antecedent, not to the conjunction. Russell's analysis of a definite description is built the same way: its uniqueness clause constrains the description predicate alone, while the predication is a separate conjunct. See his worked example of "the father of Charles II was executed", [Russell1905] p. 482. (Contributed by David A. Wheeler, 21-Jul-2026.) |
| ⊢ (∀∃!𝑥(𝜑 → 𝜓) ↔ (∀𝑥(𝜑 → 𝜓) ∧ ∃!𝑥(𝜑 ∧ 𝜓))) | ||
| 21-Jul-2026 | nfralseu 50654 | Bound-variable hypothesis builder for "all some one" restricted to a class. This is the "all some one" counterpart of nfrals 50623. (Contributed by David A. Wheeler, 21-Jul-2026.) |
| ⊢ Ⅎ𝑥𝐴 & ⊢ Ⅎ𝑥𝜑 & ⊢ Ⅎ𝑥𝜓 ⇒ ⊢ Ⅎ𝑥∀∃!𝑦 ∈ 𝐴(𝜑 → 𝜓) | ||
| 21-Jul-2026 | nfalseu 50653 | Bound-variable hypothesis builder for "all some one". This is the "all some one" counterpart of nfals 50622. Unlike nfals 50622 it requires 𝑥 and 𝑦 to be disjoint, because the corresponding builder for ∃! is nfeuw 2624, which requires it; the version without that requirement, nfeu 2625, depends on ax-13 2407 and its use is discouraged. (Contributed by David A. Wheeler, 21-Jul-2026.) |
| ⊢ Ⅎ𝑥𝜑 & ⊢ Ⅎ𝑥𝜓 ⇒ ⊢ Ⅎ𝑥∀∃!𝑦(𝜑 → 𝜓) | ||
| 21-Jul-2026 | ralseubii 50652 | Congruence for "all some one" restricted to a class. This is the "all some one" counterpart of ralsbii 50620. (Contributed by David A. Wheeler, 21-Jul-2026.) |
| ⊢ (𝜑 ↔ 𝜒) & ⊢ (𝜓 ↔ 𝜃) ⇒ ⊢ (∀∃!𝑥 ∈ 𝐴(𝜑 → 𝜓) ↔ ∀∃!𝑥 ∈ 𝐴(𝜒 → 𝜃)) | ||
| 21-Jul-2026 | alseubii 50651 | Congruence: equivalents may be substituted inside an "all some one". This is the "all some one" counterpart of alsbii 50619. (Contributed by David A. Wheeler, 21-Jul-2026.) |
| ⊢ (𝜑 ↔ 𝜒) & ⊢ (𝜓 ↔ 𝜃) ⇒ ⊢ (∀∃!𝑥(𝜑 → 𝜓) ↔ ∀∃!𝑥(𝜒 → 𝜃)) | ||
| 21-Jul-2026 | ralseu2d 50650 | Deduction rule: Given "all some one" applied to a class, you can extract the "exactly one" part. Note that the witness must satisfy the antecedent 𝜓, not merely be a member of 𝐴. (Contributed by David A. Wheeler, 21-Jul-2026.) |
| ⊢ (𝜑 → ∀∃!𝑥 ∈ 𝐴(𝜓 → 𝜒)) ⇒ ⊢ (𝜑 → ∃!𝑥 ∈ 𝐴 𝜓) | ||
| 21-Jul-2026 | ralseu1d 50649 | Deduction rule: Given "all some one" applied to a class, you can extract the "for all" part. (Contributed by David A. Wheeler, 21-Jul-2026.) |
| ⊢ (𝜑 → ∀∃!𝑥 ∈ 𝐴(𝜓 → 𝜒)) ⇒ ⊢ (𝜑 → ∀𝑥 ∈ 𝐴 (𝜓 → 𝜒)) | ||
| 21-Jul-2026 | alseu2d 50648 | Deduction rule: Given "all some one" applied to a top-level inference, you can extract the "exactly one" part. (Contributed by David A. Wheeler, 21-Jul-2026.) |
| ⊢ (𝜑 → ∀∃!𝑥(𝜓 → 𝜒)) ⇒ ⊢ (𝜑 → ∃!𝑥𝜓) | ||
| 21-Jul-2026 | alseu1d 50647 | Deduction rule: Given "all some one" applied to a top-level inference, you can extract the "for all" part. (Contributed by David A. Wheeler, 21-Jul-2026.) |
| ⊢ (𝜑 → ∀∃!𝑥(𝜓 → 𝜒)) ⇒ ⊢ (𝜑 → ∀𝑥(𝜓 → 𝜒)) | ||
| 21-Jul-2026 | ralseud 50646 | Introduction rule for "all some one" restricted to a class. This is the converse of ralseu1d 50649 and ralseu2d 50650 taken together. (Contributed by David A. Wheeler, 21-Jul-2026.) |
| ⊢ (𝜑 → ∀𝑥 ∈ 𝐴 (𝜓 → 𝜒)) & ⊢ (𝜑 → ∃!𝑥 ∈ 𝐴 𝜓) ⇒ ⊢ (𝜑 → ∀∃!𝑥 ∈ 𝐴(𝜓 → 𝜒)) | ||
| 21-Jul-2026 | alseud 50645 | Introduction rule: "all some one" holds if the "for all" part holds and the antecedent has exactly one witness. This is the converse of alseu1d 50647 and alseu2d 50648 taken together. (Contributed by David A. Wheeler, 21-Jul-2026.) |
| ⊢ (𝜑 → ∀𝑥(𝜓 → 𝜒)) & ⊢ (𝜑 → ∃!𝑥𝜓) ⇒ ⊢ (𝜑 → ∀∃!𝑥(𝜓 → 𝜒)) | ||
| 21-Jul-2026 | ralseurals 50644 | "All some one" restricted to a class implies "all some" restricted to that class. Restricted counterpart of alseuals 50643. (Contributed by David A. Wheeler, 21-Jul-2026.) |
| ⊢ (∀∃!𝑥 ∈ 𝐴(𝜑 → 𝜓) → ∀∃𝑥 ∈ 𝐴(𝜑 → 𝜓)) | ||
| 21-Jul-2026 | alseuals 50643 | "All some one" implies "all some": requiring exactly one witness is stronger than requiring at least one. Any consequence of an allsome statement is therefore a consequence of the corresponding "all some one" statement, which is how alseu-no-surprise 50657 is proved. (Contributed by David A. Wheeler, 21-Jul-2026.) |
| ⊢ (∀∃!𝑥(𝜑 → 𝜓) → ∀∃𝑥(𝜑 → 𝜓)) | ||
| 21-Jul-2026 | dfralseu2 50642 | The bounded "all some one" form is the general form with the class membership folded into the antecedent. This is the "all some one" counterpart of dfrals2 50609. (Contributed by David A. Wheeler, 21-Jul-2026.) |
| ⊢ (∀∃!𝑥 ∈ 𝐴(𝜑 → 𝜓) ↔ ∀∃!𝑥((𝑥 ∈ 𝐴 ∧ 𝜑) → 𝜓)) | ||
| 21-Jul-2026 | df-ralseu 50641 | Define "all some one" applied to a class, which means 𝜓 is true whenever 𝜑 is true for 𝑥 in 𝐴, and exactly one 𝑥 in 𝐴 satisfies 𝜑. (Contributed by David A. Wheeler, 21-Jul-2026.) |
| ⊢ (∀∃!𝑥 ∈ 𝐴(𝜑 → 𝜓) ↔ (∀𝑥 ∈ 𝐴 (𝜑 → 𝜓) ∧ ∃!𝑥 ∈ 𝐴 𝜑)) | ||
| 21-Jul-2026 | df-alseu 50640 | Define "all some one" applied to a top-level implication, which means 𝜓 is true whenever 𝜑 is true and exactly one 𝑥 satisfies 𝜑. (Contributed by David A. Wheeler, 21-Jul-2026.) |
| ⊢ (∀∃!𝑥(𝜑 → 𝜓) ↔ (∀𝑥(𝜑 → 𝜓) ∧ ∃!𝑥𝜑)) | ||
| 21-Jul-2026 | wralseu 50639 | Extend wff definition to include "all some one" applied to a class, which means 𝜓 is true whenever 𝜑 is true for 𝑥 in 𝐴, and exactly one 𝑥 in 𝐴 satisfies 𝜑. (Contributed by David A. Wheeler, 21-Jul-2026.) |
| wff ∀∃!𝑥 ∈ 𝐴(𝜑 → 𝜓) | ||
| 21-Jul-2026 | walseu 50638 | Extend wff definition to include "all some one" applied to a top-level implication, which means 𝜓 is true whenever 𝜑 is true, and exactly one 𝑥 satisfies 𝜑. (Contributed by David A. Wheeler, 21-Jul-2026.) |
| wff ∀∃!𝑥(𝜑 → 𝜓) | ||
| 21-Jul-2026 | sqrtnnaa 47645 | Square root of a natural number is algebraic. (Contributed by Ender Ting, 21-Jul-2026.) |
| ⊢ (𝐴 ∈ ℕ → (√‘𝐴) ∈ 𝔸) | ||
| 21-Jul-2026 | naddle 36732 | Condition for bounding natural addition above. (Contributed by Scott Fenton, 21-Jul-2026.) |
| ⊢ ((𝐴 ∈ On ∧ 𝐵 ∈ On ∧ 𝐶 ∈ On) → ((𝐴 +no 𝐵) ⊆ 𝐶 ↔ (∀𝑎 ∈ 𝐴 (𝑎 +no 𝐵) ∈ 𝐶 ∧ ∀𝑏 ∈ 𝐵 (𝐴 +no 𝑏) ∈ 𝐶))) | ||
| 21-Jul-2026 | ltnadd 36731 | Condition for bounding a natural sum below. (Contributed by Scott Fenton, 21-Jul-2026.) |
| ⊢ ((𝐴 ∈ On ∧ 𝐵 ∈ On ∧ 𝐶 ∈ On) → (𝐴 ∈ (𝐵 +no 𝐶) ↔ (∃𝑏 ∈ 𝐵 𝐴 ⊆ (𝑏 +no 𝐶) ∨ ∃𝑐 ∈ 𝐶 𝐴 ⊆ (𝐵 +no 𝑐)))) | ||
| 21-Jul-2026 | nmullid 36711 | Identity law for natural multiplication. (Contributed by Scott Fenton, 21-Jul-2026.) |
| ⊢ (𝐴 ∈ On → (1o ·no 𝐴) = 𝐴) | ||
| 21-Jul-2026 | nmulrid 36710 | Identity law for natural multiplication. (Contributed by Scott Fenton, 21-Jul-2026.) |
| ⊢ (𝐴 ∈ On → (𝐴 ·no 1o) = 𝐴) | ||
| 21-Jul-2026 | aaliou3r 26552 | The sum presented above is convergent, which means that the "Liouville number" is indeed real. (Contributed by Ender Ting, 21-Jul-2026.) |
| ⊢ Σ𝑘 ∈ ℕ (2↑-(!‘𝑘)) ∈ ℝ | ||
| 21-Jul-2026 | 1aa 26524 | One is algebraic. (Contributed by Ender Ting, 21-Jul-2026.) |
| ⊢ 1 ∈ 𝔸 | ||
| 21-Jul-2026 | 0aa 26523 | Zero is algebraic. (Contributed by Ender Ting, 21-Jul-2026.) |
| ⊢ 0 ∈ 𝔸 | ||
| 20-Jul-2026 | ralsanmo 50630 | An "all some" statement restricted to a class, conjoined with the claim that at most one 𝑥 in 𝐴 satisfies its antecedent, is equivalent to the universal part conjoined with the claim that exactly one 𝑥 in 𝐴 satisfies the antecedent. This is the restricted counterpart of alsanmo 50629. (Contributed by Peter Mazsa and David A. Wheeler, 20-Jul-2026.) |
| ⊢ ((∀∃𝑥 ∈ 𝐴(𝜑 → 𝜓) ∧ ∃*𝑥 ∈ 𝐴 𝜑) ↔ (∀𝑥 ∈ 𝐴 (𝜑 → 𝜓) ∧ ∃!𝑥 ∈ 𝐴 𝜑)) | ||
| 20-Jul-2026 | alsanmo 50629 | An "all some" statement conjoined with the claim that at most one 𝑥 satisfies its antecedent is equivalent to the universal part conjoined with the claim that exactly one 𝑥 satisfies the antecedent. The "all some" quantifier supplies the existence of such an 𝑥 and ∃*𝑥𝜑 supplies the at-most-one part, so together they yield ∃!𝑥𝜑. (Contributed by Peter Mazsa and David A. Wheeler, 20-Jul-2026.) |
| ⊢ ((∀∃𝑥(𝜑 → 𝜓) ∧ ∃*𝑥𝜑) ↔ (∀𝑥(𝜑 → 𝜓) ∧ ∃!𝑥𝜑)) | ||
| 20-Jul-2026 | rexrals 50628 | If a member of 𝐴 satisfying the antecedent exists, then a restricted "all some" statement reduces to its universal part. This is the restricted counterpart of rexals 50634. (Contributed by Peter Mazsa and David A. Wheeler, 20-Jul-2026.) |
| ⊢ (∃𝑥 ∈ 𝐴 𝜑 → (∀∃𝑥 ∈ 𝐴(𝜑 → 𝜓) ↔ ∀𝑥 ∈ 𝐴 (𝜑 → 𝜓))) | ||
| 20-Jul-2026 | ralrals 50627 | If the universal part of a restricted "all some" statement holds, then the statement reduces to the existence of a member of 𝐴 satisfying its antecedent. This is the restricted counterpart of ralals 50633. (Contributed by Peter Mazsa and David A. Wheeler, 20-Jul-2026.) |
| ⊢ (∀𝑥 ∈ 𝐴 (𝜑 → 𝜓) → (∀∃𝑥 ∈ 𝐴(𝜑 → 𝜓) ↔ ∃𝑥 ∈ 𝐴 𝜑)) | ||
| 20-Jul-2026 | tgaltai 29254 | Parallelism implies alternate angles congruence: if a line (𝑋𝐿𝑍) crosses two parallel lines (𝑋𝐿𝑌) and (𝑍𝐿𝑊), then the alternate angles are congruent. First direction of Theorem 12.21 of [Schwabhauser] p. 126. This is also Proposition 1.29 of Euclid's Elements . (Contributed by Thierry Arnoux, 20-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ ∥ = (parlnG‘𝐺) & ⊢ 𝑂 = {〈𝑎, 𝑏〉 ∣ ((𝑎 ∈ (𝑃 ∖ (𝑋𝐿𝑍)) ∧ 𝑏 ∈ (𝑃 ∖ (𝑋𝐿𝑍))) ∧ ∃𝑡 ∈ (𝑋𝐿𝑍)𝑡 ∈ (𝑎𝐼𝑏))} & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐺 ∈ TarskiGE) & ⊢ (𝜑 → 𝑋 ∈ 𝑃) & ⊢ (𝜑 → 𝑌 ∈ 𝑃) & ⊢ (𝜑 → 𝑍 ∈ 𝑃) & ⊢ (𝜑 → 𝑊 ∈ 𝑃) & ⊢ (𝜑 → (𝑋𝐿𝑌) ∥ (𝑍𝐿𝑊)) & ⊢ (𝜑 → 𝑌𝑂𝑊) & ⊢ (𝜑 → 𝑋 ≠ 𝑍) ⇒ ⊢ (𝜑 → 〈“𝑌𝑋𝑍”〉(cgrA‘𝐺)〈“𝑊𝑍𝑋”〉) | ||
| 20-Jul-2026 | quadcgrprlng 29253 | Nontrivial quadrilaterals with congruent and parallel opposite sides are parallelograms. Theorem 12.20 of [Schwabhauser] p. 126. (Contributed by Thierry Arnoux, 20-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ − = (dist‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ ∥ = (parlnG‘𝐺) & ⊢ 𝑂 = {〈𝑎, 𝑏〉 ∣ ((𝑎 ∈ (𝑃 ∖ (𝑋𝐿𝑍)) ∧ 𝑏 ∈ (𝑃 ∖ (𝑋𝐿𝑍))) ∧ ∃𝑡 ∈ (𝑋𝐿𝑍)𝑡 ∈ (𝑎𝐼𝑏))} & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐺 ∈ TarskiGE) & ⊢ (𝜑 → 𝑋 ∈ 𝑃) & ⊢ (𝜑 → 𝑌 ∈ 𝑃) & ⊢ (𝜑 → 𝑍 ∈ 𝑃) & ⊢ (𝜑 → 𝑊 ∈ 𝑃) & ⊢ (𝜑 → ¬ (𝑋 ∈ (𝑌𝐿𝑍) ∨ 𝑌 = 𝑍)) & ⊢ (𝜑 → (𝑋𝐿𝑌) ∥ (𝑍𝐿𝑊)) & ⊢ (𝜑 → (𝑋 − 𝑌) = (𝑍 − 𝑊)) & ⊢ (𝜑 → 𝑌𝑂𝑊) ⇒ ⊢ (𝜑 → ((𝑌𝐿𝑍) ∥ (𝑊𝐿𝑋) ∧ (𝑌 − 𝑍) = (𝑊 − 𝑋))) | ||
| 20-Jul-2026 | prlngsymquadopp 29252 | In parallelograms, opposing vertices are on opposite sides of the diagonal. Second part of Theorem 12.19 of [Schwabhauser] p. 126. (Contributed by Thierry Arnoux, 20-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ − = (dist‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ ∥ = (parlnG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐺 ∈ TarskiGE) & ⊢ (𝜑 → 𝑋 ∈ 𝑃) & ⊢ (𝜑 → 𝑌 ∈ 𝑃) & ⊢ (𝜑 → 𝑍 ∈ 𝑃) & ⊢ (𝜑 → 𝑊 ∈ 𝑃) & ⊢ (𝜑 → ¬ (𝑋 ∈ (𝑌𝐿𝑍) ∨ 𝑌 = 𝑍)) & ⊢ (𝜑 → (𝑋𝐿𝑌) ∥ (𝑍𝐿𝑊)) & ⊢ (𝜑 → (𝑌𝐿𝑍) ∥ (𝑊𝐿𝑋)) & ⊢ 𝑂 = {〈𝑎, 𝑏〉 ∣ ((𝑎 ∈ (𝑃 ∖ (𝑋𝐿𝑍)) ∧ 𝑏 ∈ (𝑃 ∖ (𝑋𝐿𝑍))) ∧ ∃𝑡 ∈ (𝑋𝐿𝑍)𝑡 ∈ (𝑎𝐼𝑏))} & ⊢ 𝐼 = (Itv‘𝐺) ⇒ ⊢ (𝜑 → 𝑊𝑂𝑌) | ||
| 20-Jul-2026 | prlngsymquad 29251 | All parallelograms are symmetric quadrilaterals. First part of Theorem 12.19 of [Schwabhauser] p. 126. (Contributed by Thierry Arnoux, 20-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ − = (dist‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ ∥ = (parlnG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐺 ∈ TarskiGE) & ⊢ (𝜑 → 𝑋 ∈ 𝑃) & ⊢ (𝜑 → 𝑌 ∈ 𝑃) & ⊢ (𝜑 → 𝑍 ∈ 𝑃) & ⊢ (𝜑 → 𝑊 ∈ 𝑃) & ⊢ (𝜑 → ¬ (𝑋 ∈ (𝑌𝐿𝑍) ∨ 𝑌 = 𝑍)) & ⊢ (𝜑 → (𝑋𝐿𝑌) ∥ (𝑍𝐿𝑊)) & ⊢ (𝜑 → (𝑌𝐿𝑍) ∥ (𝑊𝐿𝑋)) ⇒ ⊢ (𝜑 → ((𝑋 − 𝑌) = (𝑍 − 𝑊) ∧ (𝑌 − 𝑍) = (𝑊 − 𝑋))) | ||
| 20-Jul-2026 | prlngsymquadlem 29250 | Lemma for prlngsymquad 29251. (Contributed by Thierry Arnoux, 20-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ − = (dist‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ ∥ = (parlnG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐺 ∈ TarskiGE) & ⊢ (𝜑 → 𝑋 ∈ 𝑃) & ⊢ (𝜑 → 𝑌 ∈ 𝑃) & ⊢ (𝜑 → 𝑍 ∈ 𝑃) & ⊢ (𝜑 → 𝑊 ∈ 𝑃) & ⊢ (𝜑 → ¬ (𝑋 ∈ (𝑌𝐿𝑍) ∨ 𝑌 = 𝑍)) & ⊢ (𝜑 → (𝑋𝐿𝑌) ∥ (𝑍𝐿𝑊)) & ⊢ (𝜑 → (𝑌𝐿𝑍) ∥ (𝑊𝐿𝑋)) & ⊢ 𝑇 = (((pInvG‘𝐺)‘(𝑋(midG‘𝐺)𝑍))‘𝑌) ⇒ ⊢ (𝜑 → 𝑇 = 𝑊) | ||
| 20-Jul-2026 | symquadprlng 29249 | Symmetrical quadrilaterals are parallelograms. Theorem 12.18 of [Schwabhauser] p. 126. (Contributed by Thierry Arnoux, 20-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ − = (dist‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ ∥ = (parlnG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐺 ∈ TarskiGE) & ⊢ (𝜑 → 𝑋 ∈ 𝑃) & ⊢ (𝜑 → 𝑌 ∈ 𝑃) & ⊢ (𝜑 → 𝑍 ∈ 𝑃) & ⊢ (𝜑 → 𝑊 ∈ 𝑃) & ⊢ (𝜑 → (𝑋 − 𝑌) = (𝑍 − 𝑊)) & ⊢ (𝜑 → (𝑌 − 𝑍) = (𝑊 − 𝑋)) & ⊢ (𝜑 → ¬ (𝑋 ∈ (𝑌𝐿𝑍) ∨ 𝑌 = 𝑍)) & ⊢ (𝜑 → 𝑌 ≠ 𝑊) & ⊢ (𝜑 → 𝑇 ∈ (𝑋𝐿𝑍)) & ⊢ (𝜑 → 𝑇 ∈ (𝑌𝐿𝑊)) ⇒ ⊢ (𝜑 → ((𝑋𝐿𝑌) ∥ (𝑍𝐿𝑊) ∧ (𝑌𝐿𝑍) ∥ (𝑊𝐿𝑋))) | ||
| 20-Jul-2026 | prlngeq 29244 | Playfair's axiom, written as an equality: if two different lines are parallel to a given line at a given point, they are equal. (Contributed by Thierry Arnoux, 20-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ ∥ = (parlnG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐺 ∈ TarskiGE) & ⊢ (𝜑 → 𝐴 ∥ 𝐵) & ⊢ (𝜑 → 𝐴 ∥ 𝐶) & ⊢ (𝜑 → 𝑋 ∈ 𝐵) & ⊢ (𝜑 → 𝑋 ∈ 𝐶) ⇒ ⊢ (𝜑 → 𝐵 = 𝐶) | ||
| 20-Jul-2026 | symquadmid 29145 | In a symmetrical quadrilateral, the midpoints of the diagonals coincide. Corollary of Lemma 7.21 of [Schwabhauser] p. 52. (Contributed by Thierry Arnoux, 20-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ − = (dist‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝑀 = (midG‘𝐺) & ⊢ 𝑂 = {〈𝑎, 𝑏〉 ∣ ((𝑎 ∈ (𝑃 ∖ (𝑋𝐿𝑍)) ∧ 𝑏 ∈ (𝑃 ∖ (𝑋𝐿𝑍))) ∧ ∃𝑡 ∈ (𝑋𝐿𝑍)𝑡 ∈ (𝑎𝐼𝑏))} & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝑋 ∈ 𝑃) & ⊢ (𝜑 → 𝑌 ∈ 𝑃) & ⊢ (𝜑 → 𝑍 ∈ 𝑃) & ⊢ (𝜑 → 𝑊 ∈ 𝑃) & ⊢ (𝜑 → ¬ (𝑋 ∈ (𝑌𝐿𝑍) ∨ 𝑌 = 𝑍)) & ⊢ (𝜑 → 𝑌 ≠ 𝑊) & ⊢ (𝜑 → (𝑋 − 𝑌) = (𝑍 − 𝑊)) & ⊢ (𝜑 → (𝑌 − 𝑍) = (𝑊 − 𝑋)) & ⊢ (𝜑 → 𝑌𝑂𝑊) ⇒ ⊢ (𝜑 → (𝑋𝑀𝑍) = (𝑌𝑀𝑊)) | ||
| 20-Jul-2026 | hlopp 29091 | If two points 𝑋 and 𝑌 lie on opposite sides of a line 𝐴, then given a point 𝑍 on 𝐴, any point 𝑊 on the line (𝑋𝐿𝑍) opposite to 𝑌 lies on the half line (𝑍𝑋) (Contributed by Thierry Arnoux, 20-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝑂 = {〈𝑎, 𝑏〉 ∣ ((𝑎 ∈ (𝑃 ∖ 𝐴) ∧ 𝑏 ∈ (𝑃 ∖ 𝐴)) ∧ ∃𝑡 ∈ 𝐴 𝑡 ∈ (𝑎𝐼𝑏))} & ⊢ 𝐾 = (hlG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐴 ∈ ran 𝐿) & ⊢ (𝜑 → 𝑋 ∈ 𝑃) & ⊢ (𝜑 → 𝑌 ∈ 𝑃) & ⊢ (𝜑 → 𝑋𝑂𝑌) & ⊢ (𝜑 → 𝑍 ∈ 𝐴) & ⊢ (𝜑 → 𝑊𝑂𝑌) & ⊢ (𝜑 → 𝑊 ∈ (𝑋𝐿𝑍)) ⇒ ⊢ (𝜑 → 𝑊(𝐾‘𝑍)𝑋) | ||
| 20-Jul-2026 | symquadprlnglem 29007 | Lemma for symquadprlnglem 29007. (Contributed by Thierry Arnoux, 20-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ − = (dist‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝑋 ∈ 𝑃) & ⊢ (𝜑 → 𝑌 ∈ 𝑃) & ⊢ (𝜑 → 𝑍 ∈ 𝑃) & ⊢ (𝜑 → 𝑊 ∈ 𝑃) & ⊢ (𝜑 → (𝑋 − 𝑌) = (𝑍 − 𝑊)) & ⊢ (𝜑 → (𝑌 − 𝑍) = (𝑊 − 𝑋)) & ⊢ (𝜑 → ¬ (𝑋 ∈ (𝑌𝐿𝑍) ∨ 𝑌 = 𝑍)) & ⊢ (𝜑 → 𝑌 ≠ 𝑊) & ⊢ (𝜑 → 𝑇 ∈ (𝑋𝐿𝑍)) & ⊢ (𝜑 → 𝑇 ∈ (𝑌𝐿𝑊)) ⇒ ⊢ (𝜑 → ¬ (𝑊 ∈ (𝑍𝐿𝑌) ∨ 𝑍 = 𝑌)) | ||
| 20-Jul-2026 | crng4 20374 | Commutative/associative law for commutative rings. See also mul4d 11440. (Contributed by Jeff Madsen, 19-Jun-2010.) (Revised by AV, 20-Jul-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ · = (.r‘𝑅) & ⊢ (𝜑 → 𝑅 ∈ CRing) & ⊢ (𝜑 → 𝑋 ∈ 𝐵) & ⊢ (𝜑 → 𝑌 ∈ 𝐵) & ⊢ (𝜑 → 𝑍 ∈ 𝐵) & ⊢ (𝜑 → 𝑈 ∈ 𝐵) ⇒ ⊢ (𝜑 → ((𝑋 · 𝑌) · (𝑍 · 𝑈)) = ((𝑋 · 𝑍) · (𝑌 · 𝑈))) | ||
| 19-Jul-2026 | crngrhmfo 20611 | The image of a surjective homomorphism from a commutative ring is commutative. (Contributed by Jeff Madsen, 4-Jan-2011.) (Revised by AV, 19-Jul-2026.) |
| ⊢ 𝐵 = (Base‘𝑆) ⇒ ⊢ ((𝑅 ∈ CRing ∧ 𝐹 ∈ (𝑅 RingHom 𝑆) ∧ 𝐹:dom 𝐹–onto→𝐵) → 𝑆 ∈ CRing) | ||
| 19-Jul-2026 | karden 9898 | If we allow the Axiom of Regularity, we can avoid the Axiom of Choice by defining the cardinal number of a set as the set of all sets equinumerous to it and having the least possible rank. This theorem proves the equinumerosity relationship for this definition (compare carden 10553). The hypotheses correspond to the definition of kard of [Enderton] p. 222 (which we don't define separately since currently we do not use it elsewhere). This theorem along with kardex 9896 justify the definition of kard. The restriction to the least rank prevents the proper class that would result from {𝑥 ∣ 𝑥 ≈ 𝐴}. (Contributed by NM, 18-Dec-2003.) (Revised by AV, 12-Jul-2022.) Use the Scott operation. (Revised by BTernaryTau, 19-Jul-2026.) |
| ⊢ 𝐴 ∈ V & ⊢ 𝐶 = Scott {𝑥 ∣ 𝑥 ≈ 𝐴} & ⊢ 𝐷 = Scott {𝑥 ∣ 𝑥 ≈ 𝐵} ⇒ ⊢ (𝐶 = 𝐷 ↔ 𝐴 ≈ 𝐵) | ||
| 19-Jul-2026 | kardex 9896 | The collection of all sets equinumerous to a set 𝐴 and having the least possible rank is a set. This is the part of the justification of the definition of kard of [Enderton] p. 222. (Contributed by NM, 14-Dec-2003.) Use the Scott operation. (Revised by BTernaryTau, 19-Jul-2026.) |
| ⊢ Scott {𝑥 ∣ 𝑥 ≈ 𝐴} ∈ V | ||
| 19-Jul-2026 | cplem2 9891 | Lemma for the Collection Principle cp 9893. (Contributed by NM, 17-Oct-2003.) Use the Scott operation. (Revised by BTernaryTau, 19-Jul-2026.) |
| ⊢ 𝐴 ∈ V ⇒ ⊢ ∃𝑦∀𝑥 ∈ 𝐴 (𝐵 ≠ ∅ → (𝐵 ∩ 𝑦) ≠ ∅) | ||
| 19-Jul-2026 | cplem1 9889 | Lemma for the Collection Principle cp 9893. (Contributed by NM, 17-Oct-2003.) Use the Scott operation. (Revised by BTernaryTau, 19-Jul-2026.) |
| ⊢ 𝐶 = ∪ 𝑥 ∈ 𝐴 Scott 𝐵 ⇒ ⊢ ∀𝑥 ∈ 𝐴 (𝐵 ≠ ∅ → (𝐵 ∩ 𝐶) ≠ ∅) | ||
| 19-Jul-2026 | scott0b 9876 | Applying Scott's trick yields the empty set iff it was applied to the empty set. (Contributed by NM, 15-Oct-2003.) Use the Scott operation. (Revised by BTernaryTau, 19-Jul-2026.) |
| ⊢ (𝐴 = ∅ ↔ Scott 𝐴 = ∅) | ||
| 19-Jul-2026 | disjdifg 4435 | A class does not intersect a relative complement of a superclass. (Contributed by NM, 24-Mar-1998.) Generalize from disjdif 4436. (Revised by BJ, 19-Jul-2026.) |
| ⊢ (𝐴 ⊆ 𝐵 → (𝐴 ∩ (𝐶 ∖ 𝐵)) = ∅) | ||
| 19-Jul-2026 | sseq0b 4363 | The only subclass of the empty class is itself. (Contributed by NM, 7-Mar-2007.) Strengthen sseq0 4364 to a biconditional. (Revised by BJ, 19-Jul-2026.) |
| ⊢ (𝐴 = ∅ → (𝐵 ⊆ 𝐴 ↔ 𝐵 = ∅)) | ||
| 18-Jul-2026 | scottex 9872 | Scott's trick produces a set. (Contributed by NM, 13-Oct-2003.) Use the Scott operation. (Revised by BTernaryTau, 18-Jul-2026.) |
| ⊢ Scott 𝐴 ∈ V | ||
| 18-Jul-2026 | sepab 5308 | Separation Scheme (Aussonderung) in terms of a class abstraction. Prefer using the more natural statement rabexg 5313. (Contributed by NM, 8-Jun-1994.) Put in closed form. (Revised by BJ, 18-Jul-2026.) |
| ⊢ (𝐴 ∈ 𝑉 → {𝑥 ∣ (𝑥 ∈ 𝐴 ∧ 𝜑)} ∈ V) | ||
| 18-Jul-2026 | ssex 5296 | A subclass of a set is a set. Exercise 3 of [TakeutiZaring] p. 22. This is one way to express the Axiom of Separation ax-sep 5262 (a.k.a. Subset Axiom). (Contributed by NM, 27-Apr-1994.) (Proof shortened by BJ, 18-Jul-2026.) |
| ⊢ 𝐵 ∈ V ⇒ ⊢ (𝐴 ⊆ 𝐵 → 𝐴 ∈ V) | ||
| 18-Jul-2026 | ssexg 5295 | A subclass of a set is a set. Exercise 3 of [TakeutiZaring] p. 22 (generalized). (Contributed by NM, 14-Aug-1994.) (Proof shortened by BJ, 18-Jul-2026.) |
| ⊢ ((𝐴 ⊆ 𝐵 ∧ 𝐵 ∈ 𝐶) → 𝐴 ∈ V) | ||
| 18-Jul-2026 | inssdif0 4332 | Intersection, subclass, and difference relationship. (Contributed by NM, 27-Oct-1996.) (Proof shortened by Andrew Salmon, 26-Jun-2011.) (Proof shortened by Wolf Lammen, 30-Sep-2014.) (Proof shortened by BJ, 18-Jul-2026.) |
| ⊢ ((𝐴 ∩ 𝐵) ⊆ 𝐶 ↔ (𝐴 ∩ (𝐵 ∖ 𝐶)) = ∅) | ||
| 16-Jul-2026 | nmulle 36730 | A condition for bounding a natural product above. Converse of ltnmul 36729. (Contributed by Scott Fenton, 16-Jul-2026.) |
| ⊢ ((𝐴 ∈ On ∧ 𝐵 ∈ On ∧ 𝐶 ∈ On) → ((𝐴 ·no 𝐵) ⊆ 𝐶 ↔ ∀𝑎 ∈ 𝐴 ∀𝑏 ∈ 𝐵 ((𝑎 ·no 𝐵) +no (𝐴 ·no 𝑏)) ∈ (𝐶 +no (𝑎 ·no 𝑏)))) | ||
| 15-Jul-2026 | 2alsraln0id 50637 | Nested general "all some" quantifiers with class membership as their antecedents, for the same class 𝐴: 𝜑 holds for every 𝑥 and every 𝑦 in 𝐴, and 𝐴 is not empty. (Contributed by Peter Mazsa, 28-May-2019.) (Revised by David A. Wheeler, 15-Jul-2026.) |
| ⊢ (∀∃𝑥(𝑥 ∈ 𝐴 → ∀∃𝑦(𝑦 ∈ 𝐴 → 𝜑)) ↔ (∀𝑥 ∈ 𝐴 ∀𝑦 ∈ 𝐴 𝜑 ∧ 𝐴 ≠ ∅)) | ||
| 15-Jul-2026 | 2alsraln0 50636 | Nested general "all some" quantifiers with class membership as their antecedents: 𝜑 holds for every 𝑥 in 𝐴 and every 𝑦 in 𝐵, and both 𝐴 and 𝐵 are not empty. (Contributed by Peter Mazsa, 28-May-2019.) (Revised by David A. Wheeler, 15-Jul-2026.) |
| ⊢ (∀∃𝑥(𝑥 ∈ 𝐴 → ∀∃𝑦(𝑦 ∈ 𝐵 → 𝜑)) ↔ (∀𝑥 ∈ 𝐴 ∀𝑦 ∈ 𝐵 𝜑 ∧ (𝐴 ≠ ∅ ∧ 𝐵 ≠ ∅))) | ||
| 15-Jul-2026 | n0als 50635 | If 𝐴 is not empty, then the general "all some" quantifier with class membership as its antecedent reduces to the assertion that 𝜑 holds for every 𝑥 in 𝐴. (Contributed by Peter Mazsa, 19-Dec-2018.) (Revised by David A. Wheeler, 15-Jul-2026.) |
| ⊢ (𝐴 ≠ ∅ → (∀∃𝑥(𝑥 ∈ 𝐴 → 𝜑) ↔ ∀𝑥 ∈ 𝐴 𝜑)) | ||
| 15-Jul-2026 | rexals 50634 | If some 𝑥 in 𝐴 satisfies 𝜑, then the general "all some" quantifier with class membership as its antecedent reduces to the assertion that 𝜑 holds for every 𝑥 in 𝐴. See rexrals 50628 for the restricted counterpart. (Contributed by Peter Mazsa, 19-Dec-2018.) (Revised by David A. Wheeler, 15-Jul-2026.) |
| ⊢ (∃𝑥 ∈ 𝐴 𝜑 → (∀∃𝑥(𝑥 ∈ 𝐴 → 𝜑) ↔ ∀𝑥 ∈ 𝐴 𝜑)) | ||
| 15-Jul-2026 | ralals 50633 | If 𝜑 holds for every 𝑥 in 𝐴, then the general "all some" quantifier with class membership as its antecedent reduces to the assertion that some 𝑥 in 𝐴 satisfies 𝜑. See ralrals 50627 for the restricted counterpart. (Contributed by Peter Mazsa, 19-Dec-2018.) (Revised by David A. Wheeler, 15-Jul-2026.) |
| ⊢ (∀𝑥 ∈ 𝐴 𝜑 → (∀∃𝑥(𝑥 ∈ 𝐴 → 𝜑) ↔ ∃𝑥 ∈ 𝐴 𝜑)) | ||
| 15-Jul-2026 | alsraln0 50632 | The general "all some" quantifier with class membership as its antecedent holds if and only if 𝜑 holds for every 𝑥 in 𝐴 and 𝐴 is not empty. (Contributed by Peter Mazsa, 28-Nov-2018.) (Revised by David A. Wheeler, 15-Jul-2026.) |
| ⊢ (∀∃𝑥(𝑥 ∈ 𝐴 → 𝜑) ↔ (∀𝑥 ∈ 𝐴 𝜑 ∧ 𝐴 ≠ ∅)) | ||
| 15-Jul-2026 | alsralrex 50631 | The general "all some" quantifier with class membership as its antecedent holds if and only if 𝜑 holds for every 𝑥 in 𝐴 and some 𝑥 in 𝐴 satisfies 𝜑. (Contributed by Peter Mazsa, 27-Nov-2018.) (Revised by David A. Wheeler, 15-Jul-2026.) |
| ⊢ (∀∃𝑥(𝑥 ∈ 𝐴 → 𝜑) ↔ (∀𝑥 ∈ 𝐴 𝜑 ∧ ∃𝑥 ∈ 𝐴 𝜑)) | ||
| 15-Jul-2026 | ltnmul 36729 | Characterize less-than a natural product. (Contributed by Scott Fenton, 15-Jul-2026.) |
| ⊢ ((𝐴 ∈ On ∧ 𝐵 ∈ On ∧ 𝐶 ∈ On) → (𝐴 ∈ (𝐵 ·no 𝐶) ↔ ∃𝑏 ∈ 𝐵 ∃𝑐 ∈ 𝐶 (𝐴 +no (𝑏 ·no 𝑐)) ⊆ ((𝑏 ·no 𝐶) +no (𝐵 ·no 𝑐)))) | ||
| 15-Jul-2026 | nmulel1 36728 | Natural multiplication by a non-zero number preserves less-than. (Contributed by Scott Fenton, 15-Jul-2026.) |
| ⊢ (((𝐵 ∈ On ∧ 𝐶 ∈ On) ∧ (𝐴 ∈ 𝐵 ∧ 𝐶 ≠ ∅)) → (𝐶 ·no 𝐴) ∈ (𝐶 ·no 𝐵)) | ||
| 15-Jul-2026 | nmulss1 36727 | Natural multiplication preserves less-than or equal. (Contributed by Scott Fenton, 15-Jul-2026.) |
| ⊢ (((𝐴 ∈ On ∧ 𝐵 ∈ On ∧ 𝐶 ∈ On) ∧ 𝐴 ⊆ 𝐵) → (𝐶 ·no 𝐴) ⊆ (𝐶 ·no 𝐵)) | ||
| 15-Jul-2026 | nmuladdss 36726 | Ordering relationship for natural ordinal operations. (Contributed by Scott Fenton, 15-Jul-2026.) |
| ⊢ (((𝐴 ∈ On ∧ 𝐵 ∈ On) ∧ (𝐶 ∈ On ∧ 𝐷 ∈ On) ∧ (𝐶 ⊆ 𝐴 ∧ 𝐷 ⊆ 𝐵)) → ((𝐶 ·no 𝐵) +no (𝐴 ·no 𝐷)) ⊆ ((𝐴 ·no 𝐵) +no (𝐶 ·no 𝐷))) | ||
| 15-Jul-2026 | nmuladdel 36725 | Ordering relationship for natural ordinal operations. (Contributed by Scott Fenton, 15-Jul-2026.) |
| ⊢ (((𝐴 ∈ On ∧ 𝐵 ∈ On) ∧ (𝐶 ∈ 𝐴 ∧ 𝐷 ∈ 𝐵)) → ((𝐶 ·no 𝐵) +no (𝐴 ·no 𝐷)) ∈ ((𝐴 ·no 𝐵) +no (𝐶 ·no 𝐷))) | ||
| 14-Jul-2026 | bj-inex1gALT 37601 | Proof of inex1g 5293 from sepg 5264 to then allow proving inex1 5291 from it. That does not reduce the combined proof size of inex1 5291 and inex1g 5293. (Contributed by BJ, 14-Jul-2026.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ (𝐴 ∈ 𝑉 → (𝐴 ∩ 𝐵) ∈ V) | ||
| 14-Jul-2026 | uniex2 7748 | The Axiom of Union using the standard abbreviation for union. Given any set 𝑥, its union 𝑦 exists. (Contributed by NM, 4-Jun-2006.) (Proof shortened by BJ, 14-Jul-2026.) |
| ⊢ ∃𝑦 𝑦 = ∪ 𝑥 | ||
| 14-Jul-2026 | sepgi 5265 | Inference associated with sepg 5264. The requirement that 𝑦 not occur in 𝜑 is necessary, as notsep 5339 shows. (Contributed by NM, 21-Jun-1993.) (Revised by BJ, 14-Jul-2026.) |
| ⊢ 𝐴 ∈ V ⇒ ⊢ ∃𝑦∀𝑥(𝑥 ∈ 𝑦 ↔ (𝑥 ∈ 𝐴 ∧ 𝜑)) | ||
| 13-Jul-2026 | idomcanr 49154 | Cancellation law for domains. (Contributed by Jeff Madsen, 6-Jan-2011.) (Revised by AV, 13-Jul-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ · = (.r‘𝑅) & ⊢ 0 = (0g‘𝑅) ⇒ ⊢ (((𝑅 ∈ IDomn ∧ (𝑋 ∈ 𝐵 ∧ 𝑌 ∈ 𝐵 ∧ 𝑍 ∈ 𝐵)) ∧ 𝑍 ≠ 0 ) → ((𝑋 · 𝑍) = (𝑌 · 𝑍) → 𝑋 = 𝑌)) | ||
| 13-Jul-2026 | idomcanl 49153 | Cancellation law for domains. (Contributed by Jeff Madsen, 6-Jan-2011.) (Revised by AV, 13-Jul-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ · = (.r‘𝑅) & ⊢ 0 = (0g‘𝑅) ⇒ ⊢ (((𝑅 ∈ IDomn ∧ (𝑋 ∈ 𝐵 ∧ 𝑌 ∈ 𝐵 ∧ 𝑍 ∈ 𝐵)) ∧ 𝑋 ≠ 0 ) → ((𝑋 · 𝑌) = (𝑋 · 𝑍) → 𝑌 = 𝑍)) | ||
| 13-Jul-2026 | prlngmid2 29248 | If the midpoints of two segments (𝑋𝐼𝑍) and (𝑌𝐼𝑊) coincide, the points 𝑋, 𝑌, 𝑍 and 𝑊 form a parallelogram, i.e. the lines (𝑋𝐿𝑌) and (𝑍𝐿𝑊) are parallel. Theorem 12.17 of [Schwabhauser] p. 125. (Contributed by Thierry Arnoux, 13-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ ∥ = (parlnG‘𝐺) & ⊢ 𝑀 = (midG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐺 ∈ TarskiGE) & ⊢ (𝜑 → 𝑋 ∈ 𝑃) & ⊢ (𝜑 → 𝑌 ∈ 𝑃) & ⊢ (𝜑 → 𝑍 ∈ (𝑃 ∖ (𝑋𝐿𝑌))) & ⊢ (𝜑 → 𝑊 ∈ 𝑃) & ⊢ (𝜑 → (𝑋𝑀𝑍) = (𝑌𝑀𝑊)) & ⊢ (𝜑 → 𝑋 ≠ 𝑌) ⇒ ⊢ (𝜑 → (𝑋𝐿𝑌) ∥ (𝑍𝐿𝑊)) | ||
| 13-Jul-2026 | prlnginn0 29247 | A line 𝐶 intersecting another line 𝐴 also intersects any line 𝐵 parallel to 𝐴. Theorem 12.16 of [Schwabhauser] p. 125. (Contributed by Thierry Arnoux, 13-Jul-2026.) |
| ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ ∥ = (parlnG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐺 ∈ TarskiGE) & ⊢ (𝜑 → 𝐻 ∈ ran 𝐸) & ⊢ (𝜑 → 𝐶 ∈ ran 𝐿) & ⊢ (𝜑 → (𝐴 ∩ 𝐶) ≠ ∅) & ⊢ (𝜑 → 𝐴 ≠ 𝐶) & ⊢ (𝜑 → 𝐴 ∥ 𝐵) & ⊢ (𝜑 → 𝐴 ⊆ 𝐻) & ⊢ (𝜑 → 𝐵 ⊆ 𝐻) & ⊢ (𝜑 → 𝐶 ⊆ 𝐻) ⇒ ⊢ (𝜑 → (𝐵 ∩ 𝐶) ≠ ∅) | ||
| 13-Jul-2026 | prlngplngtr 29246 | Transitivity of parallelism, for lines in the same plane 𝐻. This is case 1 of Theorem 12.15 of [Schwabhauser] p. 124. (Contributed by Thierry Arnoux, 13-Jul-2026.) |
| ⊢ 𝐸 = (hlG‘𝐺) & ⊢ ∥ = (parlnG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐻 ∈ ran 𝐸) & ⊢ (𝜑 → 𝐴 ⊆ 𝐻) & ⊢ (𝜑 → 𝐴 ∥ 𝐵) & ⊢ (𝜑 → 𝐺 ∈ TarskiGE) & ⊢ (𝜑 → 𝐶 ⊆ 𝐻) & ⊢ (𝜑 → 𝐵 ∥ 𝐶) ⇒ ⊢ (𝜑 → 𝐴 ∥ 𝐶) | ||
| 13-Jul-2026 | prlngpln4 29245 | Building a parallel line conserves planes, i.e. given a line 𝐴 and a point 𝑋 not on 𝐴, the (unique) parallel 𝐵 to 𝐴 through 𝑋 lies completely within the plane defined by 𝐴 and 𝑋. Theorem 12.14 of [Schwabhauser] p. 124. (Contributed by Thierry Arnoux, 13-Jul-2026.) |
| ⊢ 𝐸 = (hlG‘𝐺) & ⊢ ∥ = (parlnG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐻 ∈ ran 𝐸) & ⊢ (𝜑 → 𝐴 ⊆ 𝐻) & ⊢ (𝜑 → 𝐴 ∥ 𝐵) & ⊢ (𝜑 → 𝑋 ∈ 𝐻) & ⊢ (𝜑 → 𝑋 ∈ 𝐵) ⇒ ⊢ (𝜑 → 𝐵 ⊆ 𝐻) | ||
| 13-Jul-2026 | prlngmo2 29243 | Playfair's axiom, without the restriction that the point 𝑋 is outside of the line 𝐴. Theorem 12.11 of [Schwabhauser] p. 123. (Contributed by Thierry Arnoux, 13-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ ∥ = (parlnG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐴 ∈ ran 𝐿) & ⊢ (𝜑 → 𝑋 ∈ 𝑃) & ⊢ (𝜑 → 𝐺 ∈ TarskiGE) ⇒ ⊢ (𝜑 → ∃*𝑏 ∈ ran 𝐿(𝐴 ∥ 𝑏 ∧ 𝑋 ∈ 𝑏)) | ||
| 13-Jul-2026 | dfprlng3 29235 | Alternate definition of (strict) parallelism. Theorem 12.7 of [Schwabhauser] p. 122. (Contributed by Thierry Arnoux, 13-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ ∥ = (parlnG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝑋 ∈ 𝑃) & ⊢ (𝜑 → 𝑌 ∈ (𝑃 ∖ {𝑋})) & ⊢ (𝜑 → 𝐴 ∈ ran 𝐿) & ⊢ (𝜑 → 𝐴 ≠ (𝑋𝐿𝑌)) ⇒ ⊢ (𝜑 → (𝐴 ∥ (𝑋𝐿𝑌) ↔ (𝑋((hpG‘𝐺)‘𝐴)𝑌 ∧ (𝐴 ∩ (𝑋𝐿𝑌)) = ∅))) | ||
| 13-Jul-2026 | dfprlng2 29234 | Alternate definition of (strict) parallelism. Theorem 12.7 of [Schwabhauser] p. 122. (Contributed by Thierry Arnoux, 13-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ ∥ = (parlnG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝑋 ∈ 𝑃) & ⊢ (𝜑 → 𝑌 ∈ (𝑃 ∖ {𝑋})) & ⊢ (𝜑 → 𝑍 ∈ 𝑃) & ⊢ (𝜑 → 𝑊 ∈ (𝑃 ∖ {𝑍})) & ⊢ (𝜑 → (𝑋𝐿𝑌) ≠ (𝑍𝐿𝑊)) ⇒ ⊢ (𝜑 → ((𝑋𝐿𝑌) ∥ (𝑍𝐿𝑊) ↔ (𝑍((hpG‘𝐺)‘(𝑋𝐿𝑌))𝑊 ∧ ((𝑋𝐿𝑌) ∩ (𝑍𝐿𝑊)) = ∅))) | ||
| 13-Jul-2026 | ragsupplcgra 29185 | An angle 〈“𝑋𝑌𝑍”〉 is a right angle exactly when it is congruent to its supplementary angle 〈“𝑋𝑌𝑊”〉. Theorem 11.18 of [Schwabhauser] p. 98. (Contributed by Thierry Arnoux, 13-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝑋 ∈ (𝑃 ∖ {𝑌})) & ⊢ (𝜑 → 𝑌 ∈ 𝑃) & ⊢ (𝜑 → 𝑍 ∈ (𝑃 ∖ {𝑌})) & ⊢ (𝜑 → 𝑊 ∈ (𝑃 ∖ {𝑌})) & ⊢ (𝜑 → 𝑌 ∈ (𝑍𝐼𝑊)) ⇒ ⊢ (𝜑 → (〈“𝑋𝑌𝑍”〉 ∈ (∟G‘𝐺) ↔ 〈“𝑋𝑌𝑍”〉(cgrA‘𝐺)〈“𝑋𝑌𝑊”〉)) | ||
| 13-Jul-2026 | cgrarag 29184 | Any angle 〈“𝐴𝐵𝐶”〉 congruent with a right angle 〈“𝑋𝑌𝑍”〉 is a right angle. Theorem 11.17 of [Schwabhauser] p. 98. (Contributed by Thierry Arnoux, 13-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝑋 ∈ 𝑃) & ⊢ (𝜑 → 𝑌 ∈ 𝑃) & ⊢ (𝜑 → 𝑍 ∈ 𝑃) & ⊢ (𝜑 → 𝐴 ∈ 𝑃) & ⊢ (𝜑 → 𝐵 ∈ 𝑃) & ⊢ (𝜑 → 𝐶 ∈ 𝑃) & ⊢ (𝜑 → 〈“𝑋𝑌𝑍”〉 ∈ (∟G‘𝐺)) & ⊢ (𝜑 → 〈“𝑋𝑌𝑍”〉(cgrA‘𝐺)〈“𝐴𝐵𝐶”〉) ⇒ ⊢ (𝜑 → 〈“𝐴𝐵𝐶”〉 ∈ (∟G‘𝐺)) | ||
| 13-Jul-2026 | mirlni 29009 | The mirror of a point 𝑋 on a line (𝑌𝐿𝑍) is on the mirrored line ((𝑀‘𝑌)𝐿(𝑀‘𝑍)). (Contributed by Thierry Arnoux, 13-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝑆 = (pInvG‘𝐺) & ⊢ 𝑀 = (𝑆‘𝐴) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐴 ∈ 𝑃) & ⊢ (𝜑 → 𝑋 ∈ 𝑃) & ⊢ (𝜑 → 𝑌 ∈ 𝑃) & ⊢ (𝜑 → 𝑍 ∈ 𝑃) & ⊢ (𝜑 → 𝑍 ≠ 𝑌) & ⊢ (𝜑 → 𝑋 ∈ (𝑌𝐿𝑍)) ⇒ ⊢ (𝜑 → (𝑀‘𝑋) ∈ ((𝑀‘𝑌)𝐿(𝑀‘𝑍))) | ||
| 13-Jul-2026 | mirleqb 29008 | Equality theorem for point mirroring. (Contributed by Thierry Arnoux, 13-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝑆 = (pInvG‘𝐺) & ⊢ 𝑀 = (𝑆‘𝐴) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐴 ∈ 𝑃) & ⊢ (𝜑 → 𝑋 ∈ 𝑃) & ⊢ (𝜑 → 𝑌 ∈ 𝑃) ⇒ ⊢ (𝜑 → (𝑋 = 𝑌 ↔ (𝑀‘𝑋) = (𝑀‘𝑌))) | ||
| 13-Jul-2026 | hlgrcl2 28910 | Reverse closure for rays. (Contributed by Thierry Arnoux, 13-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ 𝐾 = (hlG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ 𝑉) & ⊢ (𝜑 → 𝐶 ∈ 𝑃) & ⊢ (𝜑 → 𝐴(𝐾‘𝐶)𝐵) ⇒ ⊢ (𝜑 → 𝐵 ∈ 𝑃) | ||
| 13-Jul-2026 | hlgrcl1 28909 | Reverse closure for rays. (Contributed by Thierry Arnoux, 13-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ 𝐾 = (hlG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ 𝑉) & ⊢ (𝜑 → 𝐶 ∈ 𝑃) & ⊢ (𝜑 → 𝐴(𝐾‘𝐶)𝐵) ⇒ ⊢ (𝜑 → 𝐴 ∈ 𝑃) | ||
| 13-Jul-2026 | ishlg2 28908 | Alternate version of ishlg 28911, including closure. (Contributed by Thierry Arnoux, 13-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ 𝐾 = (hlG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ 𝑉) & ⊢ (𝜑 → 𝐶 ∈ 𝑃) ⇒ ⊢ (𝜑 → (𝐴(𝐾‘𝐶)𝐵 ↔ ((𝐴 ∈ 𝑃 ∧ 𝐵 ∈ 𝑃) ∧ (𝐴 ≠ 𝐶 ∧ 𝐵 ≠ 𝐶 ∧ (𝐴 ∈ (𝐶𝐼𝐵) ∨ 𝐵 ∈ (𝐶𝐼𝐴)))))) | ||
| 13-Jul-2026 | eldifsnbd 4759 | Membership in a set with an element removed implies non-equality with that element. (Contributed by Thierry Arnoux, 13-Jul-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ (𝐵 ∖ {𝐶})) ⇒ ⊢ (𝜑 → 𝐴 ≠ 𝐶) | ||
| 13-Jul-2026 | nrmod 3848 | Deduce the negation of a restricted "at most one" quantifier. (Contributed by Thierry Arnoux, 13-Jul-2026.) |
| ⊢ (𝑥 = 𝑋 → (𝜓 ↔ 𝜒)) & ⊢ (𝑥 = 𝑌 → (𝜓 ↔ 𝜃)) & ⊢ (𝜑 → 𝑋 ∈ 𝐴) & ⊢ (𝜑 → 𝑌 ∈ 𝐴) & ⊢ (𝜑 → 𝜒) & ⊢ (𝜑 → 𝜃) & ⊢ (𝜑 → 𝑋 ≠ 𝑌) ⇒ ⊢ (𝜑 → ¬ ∃*𝑥 ∈ 𝐴 𝜓) | ||
| 13-Jul-2026 | 3orim123da 1473 | Disjoin antecedents and consequents of three premises. (Contributed by Thierry Arnoux, 13-Jul-2026.) |
| ⊢ (𝜑 → (𝜓 ∨ 𝜃 ∨ 𝜂)) & ⊢ ((𝜑 ∧ 𝜓) → 𝜒) & ⊢ ((𝜑 ∧ 𝜃) → 𝜏) & ⊢ ((𝜑 ∧ 𝜂) → 𝜁) ⇒ ⊢ (𝜑 → (𝜒 ∨ 𝜏 ∨ 𝜁)) | ||
| 12-Jul-2026 | rals-no-surprise 50626 | Demonstrate that there is never a "surprise" when using the allsome quantifier restricted to a class, that is, it is never possible for the consequent to be both always true and always false of the members of 𝐴 that satisfy the antecedent. This is the restricted counterpart of als-no-surprise 50625, and follows from it by dfrals2 50609. Note that this needs no assumption that 𝐴 is nonempty, because allsome requires a member of 𝐴 satisfying 𝜑, and that member would have to satisfy both 𝜓 and ¬ 𝜓. The ordinary restricted "for all" requires no such member and can be vacuously true, as shown in empty-surprise2 50602; that is the point of allsome. (Contributed by David A. Wheeler, 12-Jul-2026.) |
| ⊢ ¬ (∀∃𝑥 ∈ 𝐴(𝜑 → 𝜓) ∧ ∀∃𝑥 ∈ 𝐴(𝜑 → ¬ 𝜓)) | ||
| 12-Jul-2026 | cbvals 50624 | Rule used to change bound variables, using implicit substitution. (Contributed by David A. Wheeler, 12-Jul-2026.) |
| ⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜒)) & ⊢ (𝑥 = 𝑦 → (𝜓 ↔ 𝜃)) ⇒ ⊢ (∀∃𝑥(𝜑 → 𝜓) ↔ ∀∃𝑦(𝜒 → 𝜃)) | ||
| 12-Jul-2026 | nfrals 50623 | Bound-variable hypothesis builder for "all some" restricted to a class. (Contributed by David A. Wheeler, 12-Jul-2026.) |
| ⊢ Ⅎ𝑥𝐴 & ⊢ Ⅎ𝑥𝜑 & ⊢ Ⅎ𝑥𝜓 ⇒ ⊢ Ⅎ𝑥∀∃𝑦 ∈ 𝐴(𝜑 → 𝜓) | ||
| 12-Jul-2026 | nfals 50622 | Bound-variable hypothesis builder for "all some". (Contributed by David A. Wheeler, 12-Jul-2026.) |
| ⊢ Ⅎ𝑥𝜑 & ⊢ Ⅎ𝑥𝜓 ⇒ ⊢ Ⅎ𝑥∀∃𝑦(𝜑 → 𝜓) | ||
| 12-Jul-2026 | alsbid 50621 | Deduction form of alsbii 50619. (Contributed by David A. Wheeler, 12-Jul-2026.) |
| ⊢ Ⅎ𝑥𝜑 & ⊢ (𝜑 → (𝜓 ↔ 𝜃)) & ⊢ (𝜑 → (𝜒 ↔ 𝜏)) ⇒ ⊢ (𝜑 → (∀∃𝑥(𝜓 → 𝜒) ↔ ∀∃𝑥(𝜃 → 𝜏))) | ||
| 12-Jul-2026 | ralsbii 50620 | Congruence for "all some" restricted to a class. (Contributed by David A. Wheeler, 12-Jul-2026.) |
| ⊢ (𝜑 ↔ 𝜒) & ⊢ (𝜓 ↔ 𝜃) ⇒ ⊢ (∀∃𝑥 ∈ 𝐴(𝜑 → 𝜓) ↔ ∀∃𝑥 ∈ 𝐴(𝜒 → 𝜃)) | ||
| 12-Jul-2026 | alsbii 50619 | Congruence: equivalents may be substituted inside an "all some". (Contributed by David A. Wheeler, 12-Jul-2026.) |
| ⊢ (𝜑 ↔ 𝜒) & ⊢ (𝜓 ↔ 𝜃) ⇒ ⊢ (∀∃𝑥(𝜑 → 𝜓) ↔ ∀∃𝑥(𝜒 → 𝜃)) | ||
| 12-Jul-2026 | ralsex 50618 | The consequent of an "all some" restricted to a class is witnessed: some member of 𝐴 satisfying 𝜑 also satisfies 𝜓. Restricted counterpart of alsex 50617. (Contributed by David A. Wheeler, 12-Jul-2026.) |
| ⊢ (∀∃𝑥 ∈ 𝐴(𝜑 → 𝜓) → ∃𝑥 ∈ 𝐴 𝜓) | ||
| 12-Jul-2026 | alsex 50617 | The consequent of an "all some" is witnessed: if 𝜓 holds of every 𝑥 satisfying 𝜑, and some 𝑥 satisfies 𝜑, then some 𝑥 satisfies 𝜓. This is the positive counterpart of als-no-surprise 50625, and it is the property that ordinary "for all" with implication lacks: from ∀𝑥(𝜑 → 𝜓) alone nothing whatever follows about 𝜓, as alimp-surprise 50599 shows. It is the reason the allsome quantifier says what a speaker of "all Martians are green" usually means. (Contributed by David A. Wheeler, 12-Jul-2026.) |
| ⊢ (∀∃𝑥(𝜑 → 𝜓) → ∃𝑥𝜓) | ||
| 12-Jul-2026 | ralsn0d 50616 | Deduction rule: Given "all some" applied to a class, the class is not the empty set. (Contributed by David A. Wheeler, 23-Oct-2018.) (Revised by David A. Wheeler, 12-Jul-2026.) |
| ⊢ (𝜑 → ∀∃𝑥 ∈ 𝐴(𝜓 → 𝜒)) ⇒ ⊢ (𝜑 → 𝐴 ≠ ∅) | ||
| 12-Jul-2026 | rals2d 50615 | Deduction rule: Given "all some" applied to a class, you can extract the "there exists" part. Note that the witness must satisfy the antecedent 𝜓, not merely be a member of 𝐴. (Contributed by David A. Wheeler, 20-Oct-2018.) (Revised by David A. Wheeler, 12-Jul-2026.) |
| ⊢ (𝜑 → ∀∃𝑥 ∈ 𝐴(𝜓 → 𝜒)) ⇒ ⊢ (𝜑 → ∃𝑥 ∈ 𝐴 𝜓) | ||
| 12-Jul-2026 | rals1d 50614 | Deduction rule: Given "all some" applied to a class, you can extract the "for all" part. (Contributed by David A. Wheeler, 20-Oct-2018.) (Revised by David A. Wheeler, 12-Jul-2026.) |
| ⊢ (𝜑 → ∀∃𝑥 ∈ 𝐴(𝜓 → 𝜒)) ⇒ ⊢ (𝜑 → ∀𝑥 ∈ 𝐴 (𝜓 → 𝜒)) | ||
| 12-Jul-2026 | ralsd 50611 | Introduction rule for "all some" restricted to a class. This is the converse of rals1d 50614 and rals2d 50615 taken together. (Contributed by David A. Wheeler, 12-Jul-2026.) |
| ⊢ (𝜑 → ∀𝑥 ∈ 𝐴 (𝜓 → 𝜒)) & ⊢ (𝜑 → ∃𝑥 ∈ 𝐴 𝜓) ⇒ ⊢ (𝜑 → ∀∃𝑥 ∈ 𝐴(𝜓 → 𝜒)) | ||
| 12-Jul-2026 | alsd 50610 | Introduction rule: "all some" holds if the "for all" part holds and the antecedent has a witness. This is the converse of als1d 50612 and als2d 50613 taken together, and is what lets an "all some" statement be proved rather than merely taken apart. (Contributed by David A. Wheeler, 12-Jul-2026.) |
| ⊢ (𝜑 → ∀𝑥(𝜓 → 𝜒)) & ⊢ (𝜑 → ∃𝑥𝜓) ⇒ ⊢ (𝜑 → ∀∃𝑥(𝜓 → 𝜒)) | ||
| 12-Jul-2026 | dfrals2 50609 | The bounded "all some" form is the general form with the class membership folded into the antecedent. (Contributed by David A. Wheeler, 22-Oct-2018.) (Revised by David A. Wheeler, 12-Jul-2026.) |
| ⊢ (∀∃𝑥 ∈ 𝐴(𝜑 → 𝜓) ↔ ∀∃𝑥((𝑥 ∈ 𝐴 ∧ 𝜑) → 𝜓)) | ||
| 12-Jul-2026 | df-rals 50608 |
Define "all some" applied to a class, which means 𝜓 is true
whenever
𝜑 is true for 𝑥 in 𝐴, and
there is at least one 𝑥 in
𝐴 where 𝜑 is true.
An older definition of the "all some" quantifier when scoped to a class, named df-alsc and now removed, instead applied a bare formula 𝜑 to the members of a class, asserting only (∀𝑥 ∈ 𝐴𝜑 ∧ ∃𝑥𝑥 ∈ 𝐴), that is, that the formula held throughout 𝐴 and that 𝐴 had at least one member. I've now decided that that was a mistake. Its older existence conjunct ∃𝑥𝑥 ∈ 𝐴 did not require any member of 𝐴 to satisfy the antecedent, so if the formula was itself an implication, that inner implication could still be vacuously true, which is precisely what the allsome quantifier exists to prevent. For example, the older definition meant that "among Martians, all tall ones are green" could be considered true if there are Martians, but no tall Martians. This version of the definition instead ensures that claims of the form "among Martians, all tall ones are green" can only be true if all tall Martians are green and that there is at least one tall Martian. (Contributed by David A. Wheeler, 20-Oct-2018.) (Revised by David A. Wheeler, 12-Jul-2026.) |
| ⊢ (∀∃𝑥 ∈ 𝐴(𝜑 → 𝜓) ↔ (∀𝑥 ∈ 𝐴 (𝜑 → 𝜓) ∧ ∃𝑥 ∈ 𝐴 𝜑)) | ||
| 12-Jul-2026 | wrals 50606 | Extend wff definition to include "all some" applied to a class, which means 𝜓 is true whenever 𝜑 is true for 𝑥 in 𝐴, and there is at least one 𝑥 in 𝐴 where 𝜑 is true. (Contributed by David A. Wheeler, 20-Oct-2018.) (Revised by David A. Wheeler, 12-Jul-2026.) |
| wff ∀∃𝑥 ∈ 𝐴(𝜑 → 𝜓) | ||
| 12-Jul-2026 | wals 50605 | Extend wff definition to include "all some" applied to a top-level implication, which means 𝜓 is true whenever 𝜑 is true, and there is at least one 𝑥 where 𝜑 is true. (Contributed by David A. Wheeler, 20-Oct-2018.) (Revised by David A. Wheeler, 12-Jul-2026.) |
| wff ∀∃𝑥(𝜑 → 𝜓) | ||
| 12-Jul-2026 | idomnzd 49152 | A domain has no zero-divisors (besides zero). (Contributed by Jeff Madsen, 19-Jun-2010.) (Revised by AV, 12-Jul-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ · = (.r‘𝑅) & ⊢ 0 = (0g‘𝑅) ⇒ ⊢ ((𝑅 ∈ IDomn ∧ (𝑋 ∈ 𝐵 ∧ 𝑌 ∈ 𝐵 ∧ (𝑋 · 𝑌) = 0 )) → (𝑋 = 0 ∨ 𝑌 = 0 )) | ||
| 12-Jul-2026 | isidom3 49151 | The predicate "is a domain", alternate expression. (Contributed by Jeff Madsen, 19-Jun-2010.) (Revised by AV, 12-Jul-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ · = (.r‘𝑅) & ⊢ 0 = (0g‘𝑅) & ⊢ 1 = (1r‘𝑅) ⇒ ⊢ (𝑅 ∈ IDomn ↔ (𝑅 ∈ CRing ∧ 0 ≠ 1 ∧ ∀𝑎 ∈ 𝐵 ∀𝑏 ∈ 𝐵 ((𝑎 · 𝑏) = 0 → (𝑎 = 0 ∨ 𝑏 = 0 )))) | ||
| 12-Jul-2026 | bj-vn0ALT 37749 | Alternate proof of vn0 4301 which does not use eqabbw 2839 (and is shorter than vn0 4301 when eqabbw 2839 is inlined). (Contributed by BJ, 12-Jul-2026.) Using the same dummy variable for 𝑦 and 𝑧 slightly reduces the proof size. (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ V ≠ ∅ | ||
| 12-Jul-2026 | cmprmidlmcl 21512 | The complement of a prime ideal is multiplicatively closed. (Contributed by Jeff Madsen, 17-Jun-2011.) (Revised by AV, 12-Jul-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ · = (.r‘𝑅) ⇒ ⊢ (((𝑅 ∈ CRing ∧ 𝑃 ∈ (PrmIdeal‘𝑅)) ∧ (𝐼 ∈ (𝐵 ∖ 𝑃) ∧ 𝐽 ∈ (𝐵 ∖ 𝑃))) → (𝐼 · 𝐽) ∈ (𝐵 ∖ 𝑃)) | ||
| 12-Jul-2026 | prmidlc2 21511 | Property of a prime ideal in a commutative ring. (Contributed by Jeff Madsen, 17-Jun-2011.) (Revised by AV, 12-Jul-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ · = (.r‘𝑅) ⇒ ⊢ (((𝑅 ∈ CRing ∧ 𝑃 ∈ (PrmIdeal‘𝑅)) ∧ (𝐼 ∈ (𝐵 ∖ 𝑃) ∧ 𝐽 ∈ 𝐵 ∧ (𝐼 · 𝐽) ∈ 𝑃)) → 𝐽 ∈ 𝑃) | ||
| 12-Jul-2026 | rspsn0 21409 | A principal ideal (an ideal generated by one element) in a ring. (Contributed by Jeff Madsen, 10-Jun-2010.) (Revised by AV, 12-Jul-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ · = (.r‘𝑅) & ⊢ 𝐾 = (RSpan‘𝑅) ⇒ ⊢ ((𝑅 ∈ Ring ∧ 𝑋 ∈ 𝐵) → (𝐾‘{𝑋}) = {𝑖 ∈ 𝐵 ∣ ∃𝑥 ∈ 𝐵 𝑖 = (𝑥 · 𝑋)}) | ||
| 12-Jul-2026 | nvpss 4373 | No class strictly includes the universal class. Dual of npss0 4371. (Contributed by BJ, 12-Jul-2026.) |
| ⊢ ¬ V ⊊ 𝐴 | ||
| 12-Jul-2026 | vvin 4369 | Two classes are both the universal class if and only if their intersection is the universal class. Dual of un00 4367. (Contributed by BJ, 12-Jul-2026.) |
| ⊢ ((𝐴 = V ∧ 𝐵 = V) ↔ (𝐴 ∩ 𝐵) = V) | ||
| 12-Jul-2026 | vn0 4301 | The universal class is not equal to the empty set. (Contributed by NM, 11-Sep-2008.) Avoid ax-8 2148, df-clel 2841. (Revised by GG, 6-Sep-2024.) (Proof shortened by BJ, 12-Jul-2026.) |
| ⊢ V ≠ ∅ | ||
| 10-Jul-2026 | 25or6to4 43014 | Question 67 of 68 from a lecture Prof. Loof Lirpa held last Saturday in Lincoln Park. When asked why the smaller root wasn't reduced to 3/2, Lirpa responded "It really doesn't matter anyhow." (Contributed by Luke Murphy, 10-Jul-2026.) |
| ⊢ (𝜑 → 𝐴 = 1) & ⊢ (𝜑 → 𝐵 = -(;53 / 2)) & ⊢ (𝜑 → 𝐶 = (;75 / 2)) & ⊢ (𝜑 → 𝑋 ∈ ℂ) ⇒ ⊢ (𝜑 → (((𝐴 · (𝑋↑2)) + ((𝐵 · 𝑋) + 𝐶)) = 0 ↔ (𝑋 = ;25 ∨ 𝑋 = (6 / 4)))) | ||
| 10-Jul-2026 | quadfac 43013 | The solution of a quadratic equation via factoring. (Contributed by Luke Murphy, 10-Jul-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ ℂ) & ⊢ (𝜑 → 𝐴 ≠ 0) & ⊢ (𝜑 → 𝐵 ∈ ℂ) & ⊢ (𝜑 → 𝐶 ∈ ℂ) & ⊢ (𝜑 → 𝑋 ∈ ℂ) & ⊢ (𝜑 → 𝑀 ∈ ℂ) & ⊢ (𝜑 → 𝑁 ∈ ℂ) & ⊢ (𝜑 → (𝑀 + 𝑁) = -(𝐵 / 𝐴)) & ⊢ (𝜑 → (𝑀 · 𝑁) = (𝐶 / 𝐴)) ⇒ ⊢ (𝜑 → (((𝐴 · (𝑋↑2)) + ((𝐵 · 𝑋) + 𝐶)) = 0 ↔ (𝑋 = 𝑀 ∨ 𝑋 = 𝑁))) | ||
| 10-Jul-2026 | nelscottrankgt 35543 | If a member of the input set is not a member of the Scott's trick set, then its rank is greater than the rank of a member of the Scott's trick set. (Contributed by BTernaryTau, 10-Jul-2026.) |
| ⊢ ((𝐴 ∈ Scott 𝐵 ∧ 𝐶 ∈ 𝐵 ∧ ¬ 𝐶 ∈ Scott 𝐵) → (rank‘𝐴) ∈ (rank‘𝐶)) | ||
| 10-Jul-2026 | scottrankeqel 35542 | If a member of the input set has the same rank as a member of the Scott's trick set, then it is also a member of the Scott's trick set. (Contributed by BTernaryTau, 10-Jul-2026.) |
| ⊢ ((𝐴 ∈ Scott 𝐵 ∧ 𝐶 ∈ 𝐵 ∧ (rank‘𝐶) = (rank‘𝐴)) → 𝐶 ∈ Scott 𝐵) | ||
| 10-Jul-2026 | elscott2 35538 | Membership in a Scott's trick set. (Contributed by BTernaryTau, 10-Jul-2026.) |
| ⊢ (𝐴 ∈ Scott 𝐵 ↔ (𝐴 ∈ 𝐵 ∧ (rank‘𝐴) = ∩ (rank “ 𝐵))) | ||
| 10-Jul-2026 | dfscott3 35537 | Alternate definition of a Scott's trick set. (Contributed by BTernaryTau, 10-Jul-2026.) |
| ⊢ Scott 𝐴 = (𝐴 ∩ (𝑅1‘suc ∩ (rank “ 𝐴))) | ||
| 10-Jul-2026 | imadifssran 6207 | Condition for the range of a class to be the range of one of its restrictions. (Contributed by AV, 4-Oct-2025.) Remove antecedent. (Revised by Eric Schmidt, 10-Jul-2026.) |
| ⊢ ((𝐹 “ (dom 𝐹 ∖ 𝐴)) ⊆ ran (𝐹 ↾ 𝐴) → ran 𝐹 = ran (𝐹 ↾ 𝐴)) | ||
| 9-Jul-2026 | elscottrankeq 35540 | Elements in a Scott's trick set have the same rank. (Contributed by BTernaryTau, 9-Jul-2026.) |
| ⊢ ((𝐴 ∈ Scott 𝐶 ∧ 𝐵 ∈ Scott 𝐶) → (rank‘𝐴) = (rank‘𝐵)) | ||
| 8-Jul-2026 | rankscott 35546 | The rank of a nonempty Scott's trick set. (Contributed by BTernaryTau, 8-Jul-2026.) |
| ⊢ (𝐴 ≠ ∅ → (rank‘Scott 𝐴) = suc ∩ (rank “ 𝐴)) | ||
| 8-Jul-2026 | elscottrank 35539 | The rank of an element in a Scott's trick set. (Contributed by BTernaryTau, 8-Jul-2026.) |
| ⊢ (𝐴 ∈ Scott 𝐵 → (rank‘𝐴) = ∩ (rank “ 𝐵)) | ||
| 8-Jul-2026 | dfscott2 35536 | Alternate definition of a Scott's trick set. (Contributed by BTernaryTau, 8-Jul-2026.) |
| ⊢ Scott 𝐴 = {𝑥 ∈ 𝐴 ∣ (rank‘𝑥) = ∩ (rank “ 𝐴)} | ||
| 7-Jul-2026 | hashomiso 45775 | The ♯ function yields an order isomorphism between ω and ℕ0. (Contributed by Eric Schmidt, 7-Jul-2026.) |
| ⊢ (♯ ↾ ω) Isom E , < (ω, ℕ0) | ||
| 7-Jul-2026 | hashomf1o 45774 | The ♯ function yields a bijection from ω to ℕ0. (Contributed by Eric Schmidt, 7-Jul-2026.) |
| ⊢ (♯ ↾ ω):ω–1-1-onto→ℕ0 | ||
| 7-Jul-2026 | hashnnltb 45773 | The ♯ function on ω preserves the ordering. (Contributed by Eric Schmidt, 7-Jul-2026.) |
| ⊢ ((𝐴 ∈ ω ∧ 𝐵 ∈ ω) → (𝐴 ∈ 𝐵 ↔ (♯‘𝐴) < (♯‘𝐵))) | ||
| 7-Jul-2026 | hashnnlt 45772 | The ♯ function on ω preserves the ordering. (Contributed by Eric Schmidt, 7-Jul-2026.) |
| ⊢ ((𝐴 ∈ ω ∧ 𝐵 ∈ 𝐴) → (♯‘𝐵) < (♯‘𝐴)) | ||
| 7-Jul-2026 | hashnnm 45771 | The ♯ function on ω preserves multiplication. (Contributed by Eric Schmidt, 7-Jul-2026.) |
| ⊢ ((𝐴 ∈ ω ∧ 𝐵 ∈ ω) → (♯‘(𝐴 ·o 𝐵)) = ((♯‘𝐴) · (♯‘𝐵))) | ||
| 7-Jul-2026 | hashnnsuc 45770 | The ♯ function on ω turns successor into adding 1. (Contributed by Eric Schmidt, 7-Jul-2026.) |
| ⊢ (𝐴 ∈ ω → (♯‘suc 𝐴) = ((♯‘𝐴) + 1)) | ||
| 7-Jul-2026 | hashnna 45769 | The ♯ function on ω preserves addition. (Contributed by Eric Schmidt, 7-Jul-2026.) |
| ⊢ ((𝐴 ∈ ω ∧ 𝐵 ∈ ω) → (♯‘(𝐴 +o 𝐵)) = ((♯‘𝐴) + (♯‘𝐵))) | ||
| 7-Jul-2026 | kardexen 35600 | One set is equinumerous to another iff an element in its kard cardinality is equinumerous to an element in the second set's kard cardinality. See kardeng 35594 for a version with equality of cardinals. (Contributed by BTernaryTau, 7-Jul-2026.) |
| ⊢ (𝐴 ≈ 𝐵 ↔ ∃𝑥 ∈ (kard‘𝐴)∃𝑦 ∈ (kard‘𝐵)𝑥 ≈ 𝑦) | ||
| 6-Jul-2026 | kardsdom 35599 | One set strictly dominates another iff an element in its kard cardinality strictly dominates an element in the second set's kard cardinality. (Contributed by BTernaryTau, 6-Jul-2026.) |
| ⊢ (𝐴 ≺ 𝐵 ↔ ∃𝑥 ∈ (kard‘𝐴)∃𝑦 ∈ (kard‘𝐵)𝑥 ≺ 𝑦) | ||
| 5-Jul-2026 | prlngeu 29242 | Given a line 𝐴 and a point 𝑋 not on 𝐴, a unique line parallel to 𝐴 can be drawn through 𝑋. Theorem 12.13 of [Schwabhauser] p. 124. (Contributed by Thierry Arnoux, 5-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ ∥ = (parlnG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐴 ∈ ran 𝐿) & ⊢ (𝜑 → 𝑋 ∈ (𝑃 ∖ 𝐴)) & ⊢ (𝜑 → 𝐺 ∈ TarskiGE) ⇒ ⊢ (𝜑 → ∃!𝑏 ∈ ran 𝐿(𝐴 ∥ 𝑏 ∧ 𝑋 ∈ 𝑏)) | ||
| 5-Jul-2026 | prlngmo 29241 | Playfair's axiom. Given a line 𝐴 and a point 𝑋 not on 𝐴, at most one line parallel to 𝐴 can be drawn through 𝑋. Theorem 12.11 of [Schwabhauser] p. 123. Note that this is the first instance of a theorem where the geometry is required to be Euclidean, as expressed by 𝐺 ∈ TarskiGE. Theorem A10 of [Schwabhauser] p. 24 is used, in the form of axtgeucl 28778, in the proof of prlngmolem1 29239. See prlngex 29238 for the corresponding existence theorem. (Contributed by Thierry Arnoux, 5-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ ∥ = (parlnG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐴 ∈ ran 𝐿) & ⊢ (𝜑 → 𝑋 ∈ (𝑃 ∖ 𝐴)) & ⊢ (𝜑 → 𝐺 ∈ TarskiGE) ⇒ ⊢ (𝜑 → ∃*𝑏 ∈ ran 𝐿(𝐴 ∥ 𝑏 ∧ 𝑋 ∈ 𝑏)) | ||
| 5-Jul-2026 | prlngmolem2 29240 | Lemma for prlngmo 29241. (Contributed by Thierry Arnoux, 5-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ ∥ = (parlnG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐴 ∈ ran 𝐿) & ⊢ (𝜑 → 𝑋 ∈ (𝑃 ∖ 𝐴)) & ⊢ (𝜑 → 𝐺 ∈ TarskiGE) & ⊢ 𝑂 = {〈𝑥, 𝑦〉 ∣ ((𝑥 ∈ (𝑃 ∖ 𝑏) ∧ 𝑦 ∈ (𝑃 ∖ 𝑏)) ∧ ∃𝑟 ∈ 𝑏 𝑟 ∈ (𝑥(Itv‘𝐺)𝑦))} & ⊢ 𝑄 = {〈𝑥, 𝑦〉 ∣ ((𝑥 ∈ (𝑃 ∖ 𝐴) ∧ 𝑦 ∈ (𝑃 ∖ 𝐴)) ∧ ∃𝑠 ∈ 𝐴 𝑠 ∈ (𝑥(Itv‘𝐺)𝑦))} ⇒ ⊢ (𝜑 → ∃*𝑏 ∈ ran 𝐿(𝐴 ∥ 𝑏 ∧ 𝑋 ∈ 𝑏)) | ||
| 5-Jul-2026 | prlngmolem1 29239 | Lemma for prlngmo 29241: Contradiction: Assuming two different parallels 𝐵 and 𝐶 having a common point 𝑋 exist to a line 𝐴, the geometry cannot be Euclidean (Contributed by Thierry Arnoux, 5-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ ∥ = (parlnG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐴 ∈ ran 𝐿) & ⊢ (𝜑 → 𝑋 ∈ (𝑃 ∖ 𝐴)) & ⊢ 𝑂 = {〈𝑎, 𝑏〉 ∣ ((𝑎 ∈ (𝑃 ∖ 𝐵) ∧ 𝑏 ∈ (𝑃 ∖ 𝐵)) ∧ ∃𝑦 ∈ 𝐵 𝑦 ∈ (𝑎𝐼𝑏))} & ⊢ 𝑄 = {〈𝑎, 𝑏〉 ∣ ((𝑎 ∈ (𝑃 ∖ 𝐴) ∧ 𝑏 ∈ (𝑃 ∖ 𝐴)) ∧ ∃𝑤 ∈ 𝐴 𝑤 ∈ (𝑎𝐼𝑏))} & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ (𝜑 → 𝐵 ∈ ran 𝐿) & ⊢ (𝜑 → 𝐶 ∈ ran 𝐿) & ⊢ (𝜑 → 𝐴 ∥ 𝐵) & ⊢ (𝜑 → 𝐴 ∥ 𝐶) & ⊢ (𝜑 → 𝑋 ∈ 𝐵) & ⊢ (𝜑 → 𝑋 ∈ 𝐶) & ⊢ (𝜑 → 𝑇 ∈ 𝐴) & ⊢ (𝜑 → 𝑊 ∈ (𝐶 ∖ 𝐵)) & ⊢ (𝜑 → 𝐵 ≠ 𝐶) & ⊢ (𝜑 → 𝑊𝑂𝑇) ⇒ ⊢ (𝜑 → ¬ 𝐺 ∈ TarskiGE) | ||
| 5-Jul-2026 | prlngex 29238 | There exists at least one parallel line 𝑏 to a given line 𝐴 through a given point 𝑋. Theorem 12.10 of [Schwabhauser] p. 122. (Contributed by Thierry Arnoux, 5-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ ∥ = (parlnG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐴 ∈ ran 𝐿) & ⊢ (𝜑 → 𝑋 ∈ 𝑃) ⇒ ⊢ (𝜑 → ∃𝑏 ∈ ran 𝐿(𝐴 ∥ 𝑏 ∧ 𝑋 ∈ 𝑏)) | ||
| 5-Jul-2026 | perpprlng 29237 | If two lines 𝐴 and 𝐵 have a common perpendicular 𝐶 and lie in the same plane 𝐻, then they are parallel. Theorem 12.9 of [Schwabhauser] p. 122. (Contributed by Thierry Arnoux, 5-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ ∥ = (parlnG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐻 ∈ ran 𝐸) & ⊢ (𝜑 → 𝐴 ⊆ 𝐻) & ⊢ (𝜑 → 𝐵 ⊆ 𝐻) & ⊢ (𝜑 → 𝐶 ⊆ 𝐻) & ⊢ (𝜑 → 𝐴(⟂G‘𝐺)𝐶) & ⊢ (𝜑 → 𝐵(⟂G‘𝐺)𝐶) ⇒ ⊢ (𝜑 → 𝐴 ∥ 𝐵) | ||
| 5-Jul-2026 | prlngpln3 29236 | Two parallel lines are on a common plane. (Contributed by Thierry Arnoux, 5-Jul-2026.) |
| ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ ∥ = (parlnG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐴 ∥ 𝐵) & ⊢ (𝜑 → 𝐴 ≠ 𝐵) & ⊢ (𝜑 → 𝑋 ∈ 𝐵) ⇒ ⊢ (𝜑 → 𝐵 ⊆ (𝐴𝐸𝑋)) | ||
| 5-Jul-2026 | prlnghpg 29233 | If two lines 𝐴 and 𝐵 are parallel, then any two points 𝑋 and 𝑌 of 𝐵 lie on the same half-plane limited by 𝐴. Theorem 12.6 of [Schwabhauser] p. 122. . (Contributed by Thierry Arnoux, 5-Jul-2026.) |
| ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ ∥ = (parlnG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐴 ∥ 𝐵) & ⊢ (𝜑 → 𝐴 ≠ 𝐵) & ⊢ (𝜑 → 𝑋 ∈ 𝐵) & ⊢ (𝜑 → 𝑌 ∈ 𝐵) ⇒ ⊢ (𝜑 → 𝑋((hpG‘𝐺)‘𝐴)𝑌) | ||
| 5-Jul-2026 | prlngpln 29232 | Two parallel lines are on a common plane. (Contributed by Thierry Arnoux, 5-Jul-2026.) |
| ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ ∥ = (parlnG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ 𝑉) & ⊢ (𝜑 → 𝐴 ∥ 𝐵) & ⊢ (𝜑 → 𝐴 ≠ 𝐵) ⇒ ⊢ (𝜑 → ∃ℎ ∈ ran 𝐸(𝐴 ⊆ ℎ ∧ 𝐵 ⊆ ℎ)) | ||
| 5-Jul-2026 | prlngin0 29231 | Two parallel lines do not intersect. (Contributed by Thierry Arnoux, 5-Jul-2026.) |
| ⊢ 𝐿 = (LineG‘𝐺) & ⊢ ∥ = (parlnG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ 𝑉) & ⊢ (𝜑 → 𝐴 ∥ 𝐵) & ⊢ (𝜑 → 𝐴 ≠ 𝐵) ⇒ ⊢ (𝜑 → (𝐴 ∩ 𝐵) = ∅) | ||
| 5-Jul-2026 | prlngrcl2 29230 | Reverse closure for parallelism. (Contributed by Thierry Arnoux, 5-Jul-2026.) |
| ⊢ 𝐿 = (LineG‘𝐺) & ⊢ ∥ = (parlnG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ 𝑉) & ⊢ (𝜑 → 𝐴 ∥ 𝐵) ⇒ ⊢ (𝜑 → 𝐵 ∈ ran 𝐿) | ||
| 5-Jul-2026 | prlngrcl1 29229 | Reverse closure for parallelism. (Contributed by Thierry Arnoux, 5-Jul-2026.) |
| ⊢ 𝐿 = (LineG‘𝐺) & ⊢ ∥ = (parlnG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ 𝑉) & ⊢ (𝜑 → 𝐴 ∥ 𝐵) ⇒ ⊢ (𝜑 → 𝐴 ∈ ran 𝐿) | ||
| 5-Jul-2026 | perpeq 29188 | Uniqueness of the perpendicular to a line 𝐴 within a plane 𝐻 at a point 𝑋. Theorem 11.20 of [Schwabhauser] p. 99. (Contributed by Thierry Arnoux, 5-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐴 ∈ ran 𝐿) & ⊢ (𝜑 → 𝐻 ∈ ran 𝐸) & ⊢ (𝜑 → 𝑋 ∈ 𝐴) & ⊢ (𝜑 → 𝐴 ⊆ 𝐻) & ⊢ (𝜑 → 𝑌 ∈ 𝐻) & ⊢ (𝜑 → 𝑍 ∈ 𝐻) & ⊢ (𝜑 → (𝑋𝐿𝑌)(⟂G‘𝐺)𝐴) & ⊢ (𝜑 → (𝑋𝐿𝑍)(⟂G‘𝐺)𝐴) ⇒ ⊢ (𝜑 → (𝑋𝐿𝑌) = (𝑋𝐿𝑍)) | ||
| 5-Jul-2026 | perpeqlem 29187 | Lemma for perpeq 29188. (Contributed by Thierry Arnoux, 5-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐴 ∈ ran 𝐿) & ⊢ (𝜑 → 𝐻 ∈ ran 𝐸) & ⊢ (𝜑 → 𝑋 ∈ 𝐴) & ⊢ (𝜑 → 𝐴 ⊆ 𝐻) & ⊢ (𝜑 → 𝑌 ∈ 𝐻) & ⊢ (𝜑 → 𝑍 ∈ 𝐻) & ⊢ (𝜑 → (𝑋𝐿𝑌)(⟂G‘𝐺)𝐴) & ⊢ (𝜑 → (𝑋𝐿𝑍)(⟂G‘𝐺)𝐴) & ⊢ (𝜑 → 𝑌((hpG‘𝐺)‘𝐴)𝑍) ⇒ ⊢ (𝜑 → (𝑋𝐿𝑌) = (𝑋𝐿𝑍)) | ||
| 5-Jul-2026 | ragraghl 29186 | Drawing two right angles at a point 𝑋 on the same side of a line (𝑋𝐿𝑌) leads to points 𝑊 and 𝑍 on the same ray from 𝑋. Theorem 11.19 of [Schwabhauser] p. 99. (Contributed by Thierry Arnoux, 5-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝑋 ∈ 𝑃) & ⊢ (𝜑 → 𝑌 ∈ 𝑃) & ⊢ (𝜑 → 𝑍 ∈ 𝑃) & ⊢ (𝜑 → 𝑊 ∈ 𝑃) & ⊢ (𝜑 → 𝑋 ≠ 𝑌) & ⊢ (𝜑 → 〈“𝑌𝑋𝑍”〉 ∈ (∟G‘𝐺)) & ⊢ (𝜑 → 〈“𝑌𝑋𝑊”〉 ∈ (∟G‘𝐺)) & ⊢ (𝜑 → 𝑍((hpG‘𝐺)‘(𝑌𝐿𝑋))𝑊) ⇒ ⊢ (𝜑 → 𝑍((hlG‘𝐺)‘𝑋)𝑊) | ||
| 5-Jul-2026 | ragcgra 29183 | Right angles are congruent with each other. Theorem 11.16 of [Schwabhauser] p. 98. (Contributed by Thierry Arnoux, 5-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝑋 ∈ 𝑃) & ⊢ (𝜑 → 𝑌 ∈ 𝑃) & ⊢ (𝜑 → 𝑍 ∈ 𝑃) & ⊢ (𝜑 → 𝐴 ∈ 𝑃) & ⊢ (𝜑 → 𝐵 ∈ 𝑃) & ⊢ (𝜑 → 𝐶 ∈ 𝑃) & ⊢ (𝜑 → 〈“𝑋𝑌𝑍”〉 ∈ (∟G‘𝐺)) & ⊢ (𝜑 → 〈“𝐴𝐵𝐶”〉 ∈ (∟G‘𝐺)) & ⊢ (𝜑 → 𝐴 ≠ 𝐵) & ⊢ (𝜑 → 𝐵 ≠ 𝐶) & ⊢ (𝜑 → 𝑋 ≠ 𝑌) & ⊢ (𝜑 → 𝑌 ≠ 𝑍) ⇒ ⊢ (𝜑 → 〈“𝑋𝑌𝑍”〉(cgrA‘𝐺)〈“𝐴𝐵𝐶”〉) | ||
| 5-Jul-2026 | nhpmirhp 29117 | If a point 𝑍 is on the plane defined by a line 𝐴 and a point 𝑌, but not on the same half-plane as 𝑌, then its mirror point (𝑀‘𝑍) by a point 𝑋 on 𝐴 is on the same half-plane as 𝑌. (Contributed by Thierry Arnoux, 5-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝑆 = (pInvG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ 𝑀 = (𝑆‘𝑋) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐴 ∈ ran 𝐿) & ⊢ (𝜑 → 𝑋 ∈ 𝐴) & ⊢ (𝜑 → 𝑌 ∈ (𝑃 ∖ 𝐴)) & ⊢ (𝜑 → 𝑍 ∈ ((𝐴𝐸𝑌) ∖ 𝐴)) & ⊢ (𝜑 → ¬ 𝑌((hpG‘𝐺)‘𝐴)𝑍) ⇒ ⊢ (𝜑 → 𝑌((hpG‘𝐺)‘𝐴)(𝑀‘𝑍)) | ||
| 5-Jul-2026 | hpgssplng 29115 | Any point 𝑋 on a half plane defined by a line 𝐴 and another point 𝑌 is on the plane defined by 𝐴 and 𝑌. (Contributed by Thierry Arnoux, 5-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ (𝜑 → 𝐴 ∈ ran 𝐿) & ⊢ (𝜑 → 𝑋 ∈ 𝑃) & ⊢ (𝜑 → 𝑌 ∈ (𝑃 ∖ 𝐴)) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝑋((hpG‘𝐺)‘𝐴)𝑌) ⇒ ⊢ (𝜑 → 𝑋 ∈ (𝐴𝐸𝑌)) | ||
| 5-Jul-2026 | mirplncl 29114 | The mirror of a point with regard to another point is in the same plane as the two points. (Contributed by Thierry Arnoux, 5-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ 𝑆 = (pInvG‘𝐺) & ⊢ 𝑀 = (𝑆‘𝑋) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐻 ∈ ran 𝐸) & ⊢ (𝜑 → 𝑋 ∈ 𝐻) & ⊢ (𝜑 → 𝑌 ∈ 𝐻) ⇒ ⊢ (𝜑 → (𝑀‘𝑌) ∈ 𝐻) | ||
| 5-Jul-2026 | plngmiropp 29113 | Given a line 𝐴 and a point 𝑋 not on 𝐴, then a point 𝑌 on the plane defined by 𝐴 and 𝑋 is either opposite to 𝑋, or opposite to the mirror point of 𝑋 by any point 𝑍 of 𝐴. (Contributed by Thierry Arnoux, 5-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ 𝑆 = (pInvG‘𝐺) & ⊢ 𝑀 = (𝑆‘𝑍) & ⊢ 𝑂 = {〈𝑎, 𝑏〉 ∣ ((𝑎 ∈ (𝑃 ∖ 𝐴) ∧ 𝑏 ∈ (𝑃 ∖ 𝐴)) ∧ ∃𝑡 ∈ 𝐴 𝑡 ∈ (𝑎𝐼𝑏))} & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐴 ∈ ran 𝐿) & ⊢ (𝜑 → 𝑋 ∈ (𝑃 ∖ 𝐴)) & ⊢ (𝜑 → 𝑌 ∈ ((𝐴𝐸𝑋) ∖ 𝐴)) & ⊢ (𝜑 → 𝑍 ∈ 𝐴) ⇒ ⊢ (𝜑 → (𝑋𝑂𝑌 ∨ (𝑀‘𝑋)𝑂𝑌)) | ||
| 5-Jul-2026 | oppmir 29073 | The mirror point with regard to a point 𝑋 on a line 𝐴 lies on the other side of 𝐴. (Contributed by Thierry Arnoux, 5-Jul-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ 𝑆 = (pInvG‘𝐺) & ⊢ 𝑀 = (𝑆‘𝑋) & ⊢ 𝑂 = {〈𝑎, 𝑏〉 ∣ ((𝑎 ∈ (𝑃 ∖ 𝐴) ∧ 𝑏 ∈ (𝑃 ∖ 𝐴)) ∧ ∃𝑡 ∈ 𝐴 𝑡 ∈ (𝑎𝐼𝑏))} & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐴 ∈ ran 𝐿) & ⊢ (𝜑 → 𝑋 ∈ 𝐴) & ⊢ (𝜑 → 𝑌 ∈ (𝑃 ∖ 𝐴)) & ⊢ 𝐿 = (LineG‘𝐺) ⇒ ⊢ (𝜑 → 𝑌𝑂(𝑀‘𝑌)) | ||
| 5-Jul-2026 | perpin 29042 | If two lines 𝐴 and 𝐵 are perpendicular, then they intersect. (Contributed by Thierry Arnoux, 5-Jul-2026.) |
| ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐴(⟂G‘𝐺)𝐵) ⇒ ⊢ (𝜑 → (𝐴 ∩ 𝐵) ≠ ∅) | ||
| 5-Jul-2026 | ecase33d 1504 | Deduction for elimination by cases. (Contributed by Thierry Arnoux, 5-Jul-2026.) |
| ⊢ (𝜑 → ¬ 𝜓) & ⊢ (𝜑 → ¬ 𝜒) & ⊢ (𝜑 → (𝜓 ∨ 𝜒 ∨ 𝜃)) ⇒ ⊢ (𝜑 → 𝜃) | ||
| 5-Jul-2026 | 3anasss 1380 | Associative law for conjunction applied to antecedent (eliminates syllogism). Converse of 3anassrs 1381. (Contributed by Thierry Arnoux, 5-Jul-2026.) |
| ⊢ ((((𝜑 ∧ 𝜓) ∧ 𝜒) ∧ 𝜃) → 𝜏) ⇒ ⊢ ((𝜑 ∧ (𝜓 ∧ 𝜒 ∧ 𝜃)) → 𝜏) | ||
| 4-Jul-2026 | 1enumkard 35609 |
The Fundamental Theorem of Enumeration (see
https://sites.math.rutgers.edu/~zeilberg/mamarim/mamarimPDF/enu.pdf),
extended to all sets.
The expression ∪ 𝑥 ∈ 𝐴({𝑥} × 𝐵) can be thought of as expressing an indexed disjoint union ⊔ 𝑥 ∈ 𝐴𝐵 where each 𝐵 has its elements tagged with the set 𝑥 that generated it. See the comment directly before undjudom 10170 for context on disjoint union as a representation of cardinal addition. This theorem is not limited to numerable sets, but it also does not depend on AC. See 1enumen 35510 for a version that uses equinumerosity , 1enumcard 35511 for a version that uses the card function, and 1enum 35630 for a version that uses an explicit sum of complex number 1s. (Contributed by BTernaryTau, 4-Jul-2026.) |
| ⊢ (𝐴 ∈ V → (kard‘𝐴) = (kard‘∪ 𝑥 ∈ 𝐴 ({𝑥} × 1o))) | ||
| 4-Jul-2026 | rankkardu 35608 | An upper bound on the rank of a kard cardinal. (Contributed by BTernaryTau, 4-Jul-2026.) |
| ⊢ (rank‘(kard‘𝐴)) ⊆ suc (rank‘𝐴) | ||
| 4-Jul-2026 | karddom 35598 | One set dominates another iff an element in its kard cardinality dominates an element in the second set's kard cardinality. (Contributed by BTernaryTau, 4-Jul-2026.) |
| ⊢ (𝐴 ≼ 𝐵 ↔ ∃𝑥 ∈ (kard‘𝐴)∃𝑦 ∈ (kard‘𝐵)𝑥 ≼ 𝑦) | ||
| 4-Jul-2026 | kardsn 35597 | A singleton has cardinality one. (Contributed by BTernaryTau, 4-Jul-2026.) |
| ⊢ (𝐴 ∈ 𝑉 → (kard‘{𝐴}) = (kard‘1o)) | ||
| 4-Jul-2026 | kardenir 35595 | If two sets are equinumerous, then their kard cardinal numbers are equal. (Contributed by BTernaryTau, 4-Jul-2026.) |
| ⊢ (𝐴 ≈ 𝐵 → (kard‘𝐴) = (kard‘𝐵)) | ||
| 4-Jul-2026 | rankscottu 35547 | An upper bound on the rank of a Scott's trick set. (Contributed by BTernaryTau, 4-Jul-2026.) |
| ⊢ (𝐴 ∈ 𝐵 → (rank‘Scott 𝐵) ⊆ suc (rank‘𝐴)) | ||
| 3-Jul-2026 | kardfi 35607 | The kard cardinal number of a finite set is finite. (Contributed by BTernaryTau, 3-Jul-2026.) |
| ⊢ (𝐴 ∈ Fin → (kard‘𝐴) ∈ Fin) | ||
| 3-Jul-2026 | kardnnfi 35606 | The kard cardinal number of a finite ordinal is finite. (Contributed by BTernaryTau, 3-Jul-2026.) |
| ⊢ (𝐴 ∈ ω → (kard‘𝐴) ∈ Fin) | ||
| 3-Jul-2026 | kardcard 35605 | Two sets have equal kard cardinalities iff they have equal card cardinalities. This theorem depends on the Axiom of Choice. (Contributed by BTernaryTau, 3-Jul-2026.) |
| ⊢ ((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) → ((kard‘𝐴) = (kard‘𝐵) ↔ (card‘𝐴) = (card‘𝐵))) | ||
| 3-Jul-2026 | ackardcard 35604 | The Axiom of Choice implies that two sets have equal kard cardinalities iff they have equal card cardinalities. (Contributed by BTernaryTau, 3-Jul-2026.) |
| ⊢ (CHOICE → ((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) → ((kard‘𝐴) = (kard‘𝐵) ↔ (card‘𝐴) = (card‘𝐵)))) | ||
| 3-Jul-2026 | kardcard2 35603 | Two numerable sets have equal kard cardinalities iff they have equal card cardinalities. This theorem does not depend on the Axiom of Choice. (Contributed by BTernaryTau, 3-Jul-2026.) |
| ⊢ ((𝐴 ∈ dom card ∧ 𝐵 ∈ dom card) → ((kard‘𝐴) = (kard‘𝐵) ↔ (card‘𝐴) = (card‘𝐵))) | ||
| 3-Jul-2026 | kardcard2b 35602 | If two sets have equal kard cardinalities, then they have equal card cardinalities. This theorem does not depend on the Axiom of Choice. (Contributed by BTernaryTau, 3-Jul-2026.) |
| ⊢ ((kard‘𝐴) = (kard‘𝐵) → (card‘𝐴) = (card‘𝐵)) | ||
| 3-Jul-2026 | kardcard2a 35601 | If two sets have equal nonzero card cardinalities, then they have equal kard cardinalities. This theorem does not depend on the Axiom of Choice. (Contributed by BTernaryTau, 3-Jul-2026.) |
| ⊢ (((card‘𝐴) = (card‘𝐵) ∧ (card‘𝐴) ≠ ∅) → (kard‘𝐴) = (kard‘𝐵)) | ||
| 3-Jul-2026 | kard0b 35596 | The empty set is the only set with cardinality zero. This is the kard version of cardeq0 10554. (Contributed by BTernaryTau, 3-Jul-2026.) |
| ⊢ ((kard‘𝐴) = (kard‘∅) ↔ 𝐴 = ∅) | ||
| 3-Jul-2026 | kardeng 35594 | Two sets are equinumerous iff their kard cardinal numbers are equal. Unlike carden 10553, this theorem does not depend on the Axiom of Choice, but it does depend on the Axiom of Regularity and the Axiom of Infinity. (Contributed by BTernaryTau, 3-Jul-2026.) |
| ⊢ (𝐴 ∈ 𝑉 → ((kard‘𝐴) = (kard‘𝐵) ↔ 𝐴 ≈ 𝐵)) | ||
| 3-Jul-2026 | kardeq0 35593 | Applying kard to a class yields the empty set iff the class is a proper class. (Contributed by BTernaryTau, 3-Jul-2026.) |
| ⊢ ((kard‘𝐴) = ∅ ↔ ¬ 𝐴 ∈ V) | ||
| 3-Jul-2026 | elkarden 35592 | Any member of the kard cardinal number of a set is equinumerous to the set. Contrast with cardne 9970 for card cardinals. (Contributed by BTernaryTau, 3-Jul-2026.) |
| ⊢ (𝐴 ∈ (kard‘𝐵) → 𝐴 ≈ 𝐵) | ||
| 3-Jul-2026 | kard0 35591 | The kard cardinality of the empty set is the singleton of the empty set. (Contributed by BTernaryTau, 3-Jul-2026.) |
| ⊢ (kard‘∅) = {∅} | ||
| 3-Jul-2026 | kardval2 35590 | The value of the kard function. This theorem depends on the Axiom of Regularity and the Axiom of Infinity, but it does not depend on the Axiom of Choice. See also kardval 35589. (Contributed by BTernaryTau, 3-Jul-2026.) |
| ⊢ (kard‘𝐴) = {𝑥 ∣ (𝑥 ≈ 𝐴 ∧ ∀𝑦(𝑦 ≈ 𝐴 → (rank‘𝑥) ⊆ (rank‘𝑦)))} | ||
| 3-Jul-2026 | kardval 35589 | The value of the kard function. This theorem depends on the Axiom of Regularity and the Axiom of Infinity, but it does not depend on the Axiom of Choice. See also kardval2 35590. (Contributed by BTernaryTau, 3-Jul-2026.) |
| ⊢ (kard‘𝐴) = Scott {𝑥 ∣ 𝑥 ≈ 𝐴} | ||
| 3-Jul-2026 | kardfn 35588 | The kard class is a function on the universe. This theorem depends on the Axiom of Regularity and the Axiom of Infinity, but it does not depend on the Axiom of Choice. (Contributed by BTernaryTau, 3-Jul-2026.) |
| ⊢ kard Fn V | ||
| 3-Jul-2026 | acnum 35549 | The Axiom of Choice implies that any set is numerable. (Contributed by BTernaryTau, 3-Jul-2026.) |
| ⊢ (CHOICE → (𝐴 ∈ 𝑉 → 𝐴 ∈ dom card)) | ||
| 3-Jul-2026 | scottssr1 35548 | Relationship between a Scott's trick set and the cumulative hierarchy. (Contributed by BTernaryTau, 3-Jul-2026.) |
| ⊢ (𝐴 ∈ 𝐵 → Scott 𝐵 ⊆ (𝑅1‘suc (rank‘𝐴))) | ||
| 3-Jul-2026 | scott0bOLD 35545 | Obsolete version of scott0b 9876 as of 18-Jul-2026. (Contributed by BTernaryTau, 3-Jul-2026.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ (𝐴 = ∅ ↔ Scott 𝐴 = ∅) | ||
| 3-Jul-2026 | scottsn 35544 | Applying Scott's trick to a singleton leaves it unchanged. (Contributed by BTernaryTau, 3-Jul-2026.) |
| ⊢ Scott {𝐴} = {𝐴} | ||
| 3-Jul-2026 | elscottrankss 35541 | Relationship between the ranks of an element in a Scott's trick set and an element in the input set. (Contributed by BTernaryTau, 3-Jul-2026.) |
| ⊢ ((𝐴 ∈ Scott 𝐵 ∧ 𝐶 ∈ 𝐵) → (rank‘𝐴) ⊆ (rank‘𝐶)) | ||
| 3-Jul-2026 | elscott 35535 | Membership in a Scott's trick set. (Contributed by BTernaryTau, 3-Jul-2026.) |
| ⊢ (𝐴 ∈ Scott 𝐵 ↔ (𝐴 ∈ 𝐵 ∧ ∀𝑥 ∈ 𝐵 (rank‘𝐴) ⊆ (rank‘𝑥))) | ||
| 3-Jul-2026 | scotteqi 35534 | Equality theorem for the Scott operation. Inference form of scotteq 9870. (Contributed by BTernaryTau, 3-Jul-2026.) |
| ⊢ 𝐴 = 𝐵 ⇒ ⊢ Scott 𝐴 = Scott 𝐵 | ||
| 3-Jul-2026 | onrankid 35519 | The rank of an ordinal number is itself. (Contributed by BTernaryTau, 3-Jul-2026.) |
| ⊢ (𝐴 ∈ On ↔ (rank‘𝐴) = 𝐴) | ||
| 3-Jul-2026 | scott0 9875 | Applying Scott's trick to the empty set leaves it unchanged. (Contributed by BTernaryTau, 3-Jul-2026.) |
| ⊢ Scott ∅ = ∅ | ||
| 2-Jul-2026 | df-kard 35587 | Define the alternative cardinal number function. Under this definition, the cardinal number of a set is the set of all sets equinumerous to it and having the least possible rank. Definition of [Enderton] p. 222. See kardval 35589 for its value. The principal theorem relating this type of cardinality to equinumerosity is kardeng 35594. Our notation is from Enderton and differentiates this function from the standard cardinal size function defined in df-card 9944. (Contributed by BTernaryTau, 2-Jul-2026.) |
| ⊢ kard = (𝑥 ∈ V ↦ Scott {𝑦 ∣ 𝑦 ≈ 𝑥}) | ||
| 30-Jun-2026 | isfieldidl2 21424 | Determine if a ring is a field based on its ideals. (Contributed by Jeff Madsen, 6-Jan-2011.) (Revised by AV, 30-Jun-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ 0 = (0g‘𝑅) & ⊢ 𝐼 = (LIdeal‘𝑅) ⇒ ⊢ (𝑅 ∈ Field ↔ (𝑅 ∈ CRing ∧ 𝐵 ≠ { 0 } ∧ 𝐼 = {{ 0 }, 𝐵})) | ||
| 30-Jun-2026 | isfieldidl 21423 | Determine if a ring is a field based on its ideals. (Contributed by Jeff Madsen, 10-Jun-2010.) (Revised by AV, 30-Jun-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ 0 = (0g‘𝑅) & ⊢ 𝐼 = (LIdeal‘𝑅) & ⊢ 1 = (1r‘𝑅) ⇒ ⊢ (𝑅 ∈ Field ↔ (𝑅 ∈ CRing ∧ 0 ≠ 1 ∧ 𝐼 = {{ 0 }, 𝐵})) | ||
| 30-Jun-2026 | rspprop 21407 | Properties of a class to be the ideal generated by a subset of a ring. (Contributed by Jeff Madsen, 10-Jun-2010.) (Revised by AV, 30-Jun-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ 𝐼 = (LIdeal‘𝑅) & ⊢ 𝐾 = (RSpan‘𝑅) ⇒ ⊢ ((𝑅 ∈ Ring ∧ 𝑆 ⊆ 𝐵) → ((𝐾‘𝑆) = 𝑋 ↔ (𝑋 ∈ 𝐼 ∧ 𝑆 ⊆ 𝑋 ∧ ∀𝑖 ∈ 𝐼 (𝑆 ⊆ 𝑖 → 𝑋 ⊆ 𝑖)))) | ||
| 30-Jun-2026 | rspvalint 21406 | The ideal generated by a subset of a ring as intersection of ideals including the subset. (Contributed by Jeff Madsen, 10-Jun-2010.) (Revised by AV, 30-Jun-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ 𝐼 = (LIdeal‘𝑅) & ⊢ 𝐾 = (RSpan‘𝑅) ⇒ ⊢ ((𝑅 ∈ Ring ∧ 𝑆 ⊆ 𝐵) → (𝐾‘𝑆) = ∩ {𝑡 ∈ 𝐼 ∣ 𝑆 ⊆ 𝑡}) | ||
| 28-Jun-2026 | inlidl 33760 | The intersection of two ideals is an ideal. (Contributed by Jeff Madsen, 16-Jun-2011.) (Revised by AV, 28-Jun-2026.) |
| ⊢ ((𝑅 ∈ Ring ∧ 𝐼 ∈ (LIdeal‘𝑅) ∧ 𝐽 ∈ (LIdeal‘𝑅)) → (𝐼 ∩ 𝐽) ∈ (LIdeal‘𝑅)) | ||
| 28-Jun-2026 | unichnlidl 21399 | The union of a nonempty chain of ideals is an ideal. (Contributed by Jeff Madsen, 5-Jan-2011.) (Revised by AV, 28-Jun-2026.) |
| ⊢ ((𝑅 ∈ Ring ∧ (𝐶 ≠ ∅ ∧ 𝐶 ⊆ (LIdeal‘𝑅) ∧ ∀𝑖 ∈ 𝐶 ∀𝑗 ∈ 𝐶 (𝑖 ⊆ 𝑗 ∨ 𝑗 ⊆ 𝑖))) → ∪ 𝐶 ∈ (LIdeal‘𝑅)) | ||
| 28-Jun-2026 | lidlunin0 21398 | The union of a nonempty subset of ideals in a ring is nonempty. (Contributed by AV, 28-Jun-2026.) |
| ⊢ ((𝑅 ∈ Ring ∧ 𝐶 ≠ ∅ ∧ 𝐶 ⊆ (LIdeal‘𝑅)) → ∪ 𝐶 ≠ ∅) | ||
| 27-Jun-2026 | isidom2 49150 | The predicate "is an integral domain": An integral domain is a commutative prime ring. (Contributed by Jeff Madsen, 10-Jun-2010.) (Revised by AV, 27-Jun-2026.) |
| ⊢ (𝑅 ∈ IDomn ↔ (𝑅 ∈ PrmRing ∧ 𝑅 ∈ CRing)) | ||
| 27-Jun-2026 | dfidom2 49149 | Alternate definition of the class of integral domains. An integral domain is a commutative prime ring. (Contributed by Jeff Madsen, 10-Jun-2010.) (Revised by AV, 27-Jun-2026.) |
| ⊢ IDomn = (PrmRing ∩ CRing) | ||
| 27-Jun-2026 | crngprmringdom 49148 | A commutative ring is a prime ring if and only if it is a domain. (Contributed by AV, 27-Jun-2026.) |
| ⊢ (𝑅 ∈ CRing → (𝑅 ∈ PrmRing ↔ 𝑅 ∈ Domn)) | ||
| 27-Jun-2026 | crngprmringidom 49147 | A commutative ring is a prime ring if and only if it is an integral domain. (Contributed by AV, 27-Jun-2026.) |
| ⊢ (𝑅 ∈ CRing → (𝑅 ∈ PrmRing ↔ 𝑅 ∈ IDomn)) | ||
| 27-Jun-2026 | df2idl2crng 21458 | The predicate "is an ideal of the commutative ring 𝑅". (Contributed by Jeff Madsen, 10-Jun-2010.) (Revised by AV, 27-Jun-2026.) |
| ⊢ 𝑈 = (2Ideal‘𝑅) & ⊢ 𝐵 = (Base‘𝑅) & ⊢ · = (.r‘𝑅) ⇒ ⊢ (𝑅 ∈ CRing → (𝐼 ∈ 𝑈 ↔ (𝐼 ∈ (SubGrp‘𝑅) ∧ ∀𝑥 ∈ 𝐵 ∀𝑦 ∈ 𝐼 (𝑥 · 𝑦) ∈ 𝐼))) | ||
| 27-Jun-2026 | lidlbasel 21374 | An element of an ideal is an element of the ring. (Contributed by Jeff Madsen, 19-Jun-2010.) (Revised by AV, 27-Jun-2026.) |
| ⊢ 𝐵 = (Base‘𝑊) & ⊢ 𝐼 = (LIdeal‘𝑊) ⇒ ⊢ ((𝑈 ∈ 𝐼 ∧ 𝑋 ∈ 𝑈) → 𝑋 ∈ 𝐵) | ||
| 27-Jun-2026 | 0ring01eqbi2 20667 | In a ring, 0 = 1 iff the ring contains only 0. (Contributed by Jeff Madsen, 6-Jan-2011.) (Revised by AV, 27-Jun-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ 0 = (0g‘𝑅) & ⊢ 1 = (1r‘𝑅) ⇒ ⊢ (𝑅 ∈ Ring → (𝐵 = { 0 } ↔ 1 = 0 )) | ||
| 26-Jun-2026 | prmrngring 49144 | A prime ring is a ring. (Contributed by Jeff Madsen, 10-Jun-2010.) (Revised by AV, 18-Jun-2026.) (Proof shortened by AV, 26-Jun-2026.) |
| ⊢ (𝑅 ∈ PrmRing → 𝑅 ∈ Ring) | ||
| 26-Jun-2026 | prmringnzring 49143 | A prime ring is a nonzero ring. (Contributed by AV, 26-Jun-2026.) |
| ⊢ (𝑅 ∈ PrmRing → 𝑅 ∈ NzRing) | ||
| 26-Jun-2026 | 1enum 35630 |
The Fundamental Theorem of Enumeration. According to Doron Zeilberger
(in
https://sites.math.rutgers.edu/~zeilberg/mamarim/mamarimPDF/enu.pdf),
this
theorem was independently discovered by several anonymous cave-dwellers.
Zeilberger also states that "While this formula is still useful after all these years, enumerating specific finite sets is no longer considered mathematics. A genuine mathematical fact has to incorporate infinitely many facts". Fortunately, theorems in Metamath are actually theorem schemes that correspond to an infinite number of object-language theorems, so this concern does not apply to us. See 1enumen 35510 for a version that uses equinumerosity , 1enumcard 35511 for a version that uses the card function, and 1enumkard 35609 for a version that uses the kard function. (Contributed by BTernaryTau, 26-Jun-2026.) |
| ⊢ (𝐴 ∈ Fin → (♯‘𝐴) = Σ𝑎 ∈ 𝐴 1) | ||
| 26-Jun-2026 | 1enumcard 35511 |
The Fundamental Theorem of Enumeration (see
https://sites.math.rutgers.edu/~zeilberg/mamarim/mamarimPDF/enu.pdf),
extended to all sets.
The expression ∪ 𝑥 ∈ 𝐴({𝑥} × 𝐵) can be thought of as expressing an indexed disjoint union ⊔ 𝑥 ∈ 𝐴𝐵 where each 𝐵 has its elements tagged with the set 𝑥 that generated it. See the comment directly before undjudom 10170 for context on disjoint union as a representation of cardinal addition. This theorem does not depend on AC, but it is only meaningful for numerable sets. See 1enumen 35510 and 1enumkard 35609 for versions that are meaningful for non-numerable sets, and see 1enum 35630 for a version that uses an explicit sum of complex number 1s. (Contributed by BTernaryTau, 26-Jun-2026.) |
| ⊢ (𝐴 ∈ V → (card‘𝐴) = (card‘∪ 𝑥 ∈ 𝐴 ({𝑥} × 1o))) | ||
| 26-Jun-2026 | 1enumen 35510 |
The Fundamental Theorem of Enumeration (see
https://sites.math.rutgers.edu/~zeilberg/mamarim/mamarimPDF/enu.pdf),
extended to all sets.
The expression ∪ 𝑥 ∈ 𝐴({𝑥} × 𝐵) can be thought of as expressing an indexed disjoint union ⊔ 𝑥 ∈ 𝐴𝐵 where each 𝐵 has its elements tagged with the set 𝑥 that generated it. See the comment directly before undjudom 10170 for context on disjoint union as a representation of cardinal addition. This theorem is not limited to numerable sets, but it also does not depend on AC. See 1enumcard 35511 for a version that uses the card function, 1enumkard 35609 for a version that uses the kard function , and 1enum 35630 for a version that uses an explicit sum of complex number 1s. (Contributed by BTernaryTau, 26-Jun-2026.) |
| ⊢ (𝐴 ∈ V → 𝐴 ≈ ∪ 𝑥 ∈ 𝐴 ({𝑥} × 1o)) | ||
| 26-Jun-2026 | 4anpull2 1382 | An equivalence of two four-terms conjunctions with the terms regrouped (here, the second sub-conjunct of the first term is pulled separately). (Contributed by Zhi Wang, 4-Sep-2024.) (Proof shortened by Garrett Katz, 26-Jun-2026.) |
| ⊢ (((𝜑 ∧ 𝜓) ∧ (𝜒 ∧ 𝜃)) ↔ ((𝜑 ∧ 𝜒 ∧ 𝜃) ∧ 𝜓)) | ||
| 25-Jun-2026 | ifpdfbi 1086 | Define the biconditional as conditional logic operator. (Contributed by RP, 20-Apr-2020.) (Proof shortened by Wolf Lammen, 30-Apr-2024.) (Proof shortened by Garrett Katz, 25-Jun-2026.) |
| ⊢ ((𝜑 ↔ 𝜓) ↔ if-(𝜑, 𝜓, ¬ 𝜓)) | ||
| 24-Jun-2026 | inv2 35499 | The intersection of the universal class with a class is itself. A commuted form of inv1 4358. (Contributed by BTernaryTau, 24-Jun-2026.) |
| ⊢ (V ∩ 𝐴) = 𝐴 | ||
| 23-Jun-2026 | rankfn 35531 | The rank function is a function on the universe. (Contributed by BTernaryTau, 23-Jun-2026.) |
| ⊢ rank Fn V | ||
| 23-Jun-2026 | rankfo 35530 | The rank function maps the universe onto the ordinals. (Contributed by BTernaryTau, 23-Jun-2026.) |
| ⊢ rank:V–onto→On | ||
| 23-Jun-2026 | fnfvintima 35502 | Condition for a function value to equal the intersection of an image that contains it. (Contributed by BTernaryTau, 23-Jun-2026.) |
| ⊢ ((𝐹 Fn 𝐴 ∧ 𝐵 ⊆ 𝐴 ∧ 𝐶 ∈ 𝐵) → ((𝐹‘𝐶) = ∩ (𝐹 “ 𝐵) ↔ ∀𝑥 ∈ 𝐵 (𝐹‘𝐶) ⊆ (𝐹‘𝑥))) | ||
| 21-Jun-2026 | sgnrn 15161 | The range of the signum function. (Contributed by AV, 16-Jun-2026.) (Proof shortened by TA, 21-Jun-2026.) |
| ⊢ ran sgn = {-1, 0, 1} | ||
| 20-Jun-2026 | reldmun 6038 | Split a relation into two parts based on its domain. (Contributed by Thierry Arnoux, 9-Oct-2023.) Remove requirement that 𝐴 and 𝐵 are disjoint. (Revised by Eric Schmidt, 20-Jun-2026.) |
| ⊢ ((Rel 𝑅 ∧ dom 𝑅 = (𝐴 ∪ 𝐵)) → 𝑅 = ((𝑅 ↾ 𝐴) ∪ (𝑅 ↾ 𝐵))) | ||
| 19-Jun-2026 | ringen1zr0 20918 | The only unital ring with one element is the zero ring (at least if its operations are internal binary operations). This holds already for nonunital rings, see rngen1zr0 20293, and semirings, see srgen1zr0 20329. (Contributed by FL, 15-Feb-2010.) (Revised by AV, 25-Jan-2020.) (Proof shortened by AV, 19-Jun-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ + = (+g‘𝑅) & ⊢ ∗ = (.r‘𝑅) & ⊢ 𝑍 = (0g‘𝑅) ⇒ ⊢ ((𝑅 ∈ Ring ∧ + Fn (𝐵 × 𝐵) ∧ ∗ Fn (𝐵 × 𝐵)) → (𝐵 ≈ 1o ↔ ( + = {〈〈𝑍, 𝑍〉, 𝑍〉} ∧ ∗ = {〈〈𝑍, 𝑍〉, 𝑍〉}))) | ||
| 19-Jun-2026 | srg1zr 20328 | The only semiring with a base set consisting of one element is the zero ring (at least if its operations are internal binary operations). (Contributed by FL, 13-Feb-2010.) (Revised by AV, 25-Jan-2020.) (Proof shortened by AV, 19-Jun-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ + = (+g‘𝑅) & ⊢ ∗ = (.r‘𝑅) ⇒ ⊢ (((𝑅 ∈ SRing ∧ + Fn (𝐵 × 𝐵) ∧ ∗ Fn (𝐵 × 𝐵)) ∧ 𝑍 ∈ 𝐵) → (𝐵 = {𝑍} ↔ ( + = {〈〈𝑍, 𝑍〉, 𝑍〉} ∧ ∗ = {〈〈𝑍, 𝑍〉, 𝑍〉}))) | ||
| 18-Jun-2026 | drngprmrng 49146 | A division ring is a prime ring. (Contributed by Jeff Madsen, 6-Jan-2011.) (Revised by AV, 18-Jun-2026.) |
| ⊢ (𝑅 ∈ DivRing → 𝑅 ∈ PrmRing) | ||
| 18-Jun-2026 | smprngprmrng 49145 | A simple ring (a nonzero ring whose only ideals are 0 and 𝑅) is a prime ring. (Contributed by Jeff Madsen, 6-Jan-2011.) (Revised by AV, 18-Jun-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ 0 = (0g‘𝑅) & ⊢ 𝑈 = (LIdeal‘𝑅) ⇒ ⊢ ((𝑅 ∈ NzRing ∧ 𝑈 = {{ 0 }, 𝐵}) → 𝑅 ∈ PrmRing) | ||
| 18-Jun-2026 | isprmrng 49142 | The predicate "is a prime ring". (Contributed by Jeff Madsen, 10-Jun-2010.) (Revised by AV, 18-Jun-2026.) |
| ⊢ 0 = (0g‘𝑅) & ⊢ 𝑃 = (PrmIdeal‘𝑅) ⇒ ⊢ (𝑅 ∈ PrmRing ↔ (𝑅 ∈ Ring ∧ { 0 } ∈ 𝑃)) | ||
| 18-Jun-2026 | df-prmring 49141 | Define the class of prime rings. A ring is prime if the zero ideal is a prime ideal. (Contributed by Jeff Madsen, 10-Jun-2010.) (Revised by AV, 18-Jun-2026.) |
| ⊢ PrmRing = {𝑟 ∈ Ring ∣ {(0g‘𝑟)} ∈ (PrmIdeal‘𝑟)} | ||
| 18-Jun-2026 | prlngsym 29228 | Parallelism is symmetric. Theorem 12.5 of [Schwabhauser] p. 122. (Contributed by Thierry Arnoux, 18-Jun-2026.) |
| ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ ∥ = (parlnG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ 𝑉) & ⊢ (𝜑 → 𝐴 ∥ 𝐵) ⇒ ⊢ (𝜑 → 𝐵 ∥ 𝐴) | ||
| 18-Jun-2026 | prlngref 29227 | Parallelism is reflexive. Theorem 12.4 of [Schwabhauser] p. 122. (Contributed by Thierry Arnoux, 18-Jun-2026.) |
| ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ ∥ = (parlnG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ 𝑉) & ⊢ (𝜑 → 𝐴 ∈ ran 𝐿) ⇒ ⊢ (𝜑 → 𝐴 ∥ 𝐴) | ||
| 18-Jun-2026 | prlngd 29226 | Deduce parallelism between two lines 𝐴 and 𝐵. (Contributed by Thierry Arnoux, 18-Jun-2026.) |
| ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ ∥ = (parlnG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ 𝑉) & ⊢ (𝜑 → 𝐴 ∈ ran 𝐿) & ⊢ (𝜑 → 𝐵 ∈ ran 𝐿) & ⊢ (𝜑 → 𝐻 ∈ ran 𝐸) & ⊢ (𝜑 → 𝐴 ⊆ 𝐻) & ⊢ (𝜑 → 𝐵 ⊆ 𝐻) & ⊢ (𝜑 → (𝐴 ∩ 𝐵) = ∅) ⇒ ⊢ (𝜑 → 𝐴 ∥ 𝐵) | ||
| 18-Jun-2026 | brprlng 29225 | Property of two lines 𝐴 and 𝐵 to be parallel. (Contributed by Thierry Arnoux, 18-Jun-2026.) |
| ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ ∥ = (parlnG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ 𝑉) ⇒ ⊢ (𝜑 → (𝐴 ∥ 𝐵 ↔ ((𝐴 ∈ ran 𝐿 ∧ 𝐵 ∈ ran 𝐿) ∧ (𝐴 = 𝐵 ∨ (∃ℎ ∈ ran 𝐸(𝐴 ⊆ ℎ ∧ 𝐵 ⊆ ℎ) ∧ (𝐴 ∩ 𝐵) = ∅))))) | ||
| 18-Jun-2026 | rngen1zr0 20293 | The only ring with one element is the zero ring (at least if its operations are internal binary operations). (Contributed by FL, 15-Feb-2010.) (Revised by AV, 18-Jun-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ + = (+g‘𝑅) & ⊢ ∗ = (.r‘𝑅) & ⊢ 0 = (0g‘𝑅) ⇒ ⊢ ((𝑅 ∈ Rng ∧ + Fn (𝐵 × 𝐵) ∧ ∗ Fn (𝐵 × 𝐵)) → (𝐵 ≈ 1o ↔ ( + = {〈〈 0 , 0 〉, 0 〉} ∧ ∗ = {〈〈 0 , 0 〉, 0 〉}))) | ||
| 18-Jun-2026 | rngen1zr 20292 | The only ring with one element is the zero ring (at least if its operations are internal binary operations). (Contributed by FL, 14-Feb-2010.) (Revised by AV, 18-Jun-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ + = (+g‘𝑅) & ⊢ ∗ = (.r‘𝑅) ⇒ ⊢ (((𝑅 ∈ Rng ∧ + Fn (𝐵 × 𝐵) ∧ ∗ Fn (𝐵 × 𝐵)) ∧ 𝑍 ∈ 𝐵) → (𝐵 ≈ 1o ↔ ( + = {〈〈𝑍, 𝑍〉, 𝑍〉} ∧ ∗ = {〈〈𝑍, 𝑍〉, 𝑍〉}))) | ||
| 18-Jun-2026 | rng1zr 20291 | The only ring with a base set consisting of one element is the zero ring (at least if its operations are internal binary operations). (Contributed by FL, 13-Feb-2010.) (Revised by AV, 18-Jun-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ + = (+g‘𝑅) & ⊢ ∗ = (.r‘𝑅) ⇒ ⊢ (((𝑅 ∈ Rng ∧ + Fn (𝐵 × 𝐵) ∧ ∗ Fn (𝐵 × 𝐵)) ∧ 𝑍 ∈ 𝐵) → (𝐵 = {𝑍} ↔ ( + = {〈〈𝑍, 𝑍〉, 𝑍〉} ∧ ∗ = {〈〈𝑍, 𝑍〉, 𝑍〉}))) | ||
| 18-Jun-2026 | rng1zrlem 20290 | Lemma for rng1zr 20291 and srg1zr 20328. (Contributed by FL, 13-Feb-2010.) (Revised by AV, 18-Jun-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ + = (+g‘𝑅) & ⊢ ∗ = (.r‘𝑅) ⇒ ⊢ (((𝑅 ∈ Mgm ∧ (mulGrp‘𝑅) ∈ Mgm) ∧ ( + Fn (𝐵 × 𝐵) ∧ ∗ Fn (𝐵 × 𝐵)) ∧ 𝑍 ∈ 𝐵) → (𝐵 = {𝑍} ↔ ( + = {〈〈𝑍, 𝑍〉, 𝑍〉} ∧ ∗ = {〈〈𝑍, 𝑍〉, 𝑍〉}))) | ||
| 17-Jun-2026 | df-prlng 29224 | Define the parallel relation for lines. Definition 12.2 of [Schwabhauser] p. 121. Note that the textbook first defines a "strict" parallelism where equal lines are not considered parallel in the strict sense: here we jump directly to the more common definition which allows equality. (Contributed by Thierry Arnoux, 17-Jun-2026.) |
| ⊢ parlnG = (𝑔 ∈ V ↦ {〈𝑎, 𝑏〉 ∣ ((𝑎 ∈ ran (LineG‘𝑔) ∧ 𝑏 ∈ ran (LineG‘𝑔)) ∧ (𝑎 = 𝑏 ∨ (∃ℎ ∈ ran (hlG‘𝑔)(𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ) ∧ (𝑎 ∩ 𝑏) = ∅)))}) | ||
| 17-Jun-2026 | plng3p 29116 | If 𝐻 is a plane containing a line 𝐴 and a point 𝑅 not on 𝐴, then 𝐻 is the plane defined by 𝐴 and 𝑅. Theorem 9.26 of [Schwabhauser] p. 76. See tglinethru 28946 for the 2-point line equivalent. (Contributed by Thierry Arnoux, 17-Jun-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐻 ∈ ran 𝐸) & ⊢ (𝜑 → 𝐴 ∈ ran 𝐿) & ⊢ (𝜑 → 𝑅 ∈ (𝐻 ∖ 𝐴)) & ⊢ (𝜑 → 𝐴 ⊆ 𝐻) ⇒ ⊢ (𝜑 → 𝐻 = (𝐴𝐸𝑅)) | ||
| 17-Jun-2026 | lnssplng1 29112 | A line defined by two points 𝑋 and 𝑌, both on a plane 𝐻, is entirely contained in 𝐻. First part of Theorem 9.25 of [Schwabhauser] p. 75. (Contributed by Thierry Arnoux, 17-Jun-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐻 ∈ ran 𝐸) & ⊢ (𝜑 → 𝑋 ∈ 𝐻) & ⊢ (𝜑 → 𝑌 ∈ 𝐻) & ⊢ (𝜑 → 𝑋 ≠ 𝑌) ⇒ ⊢ (𝜑 → (𝑋𝐿𝑌) ⊆ 𝐻) | ||
| 17-Jun-2026 | lnssplng 29111 | A line defined by two points 𝑋 and 𝑌, both on a plane 𝐻, is entirely contained in 𝐻. Theorem 9.25 of [Schwabhauser] p. 75. (Contributed by Thierry Arnoux, 17-Jun-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐻 ∈ ran 𝐸) & ⊢ (𝜑 → 𝑋 ∈ 𝐻) & ⊢ (𝜑 → 𝑌 ∈ 𝐻) & ⊢ (𝜑 → 𝑋 ≠ 𝑌) ⇒ ⊢ (𝜑 → ((𝑋𝐿𝑌) ⊆ 𝐻 ∧ ∃𝑠 ∈ (𝑃 ∖ (𝑋𝐿𝑌))𝐻 = ((𝑋𝐿𝑌)𝐸𝑠))) | ||
| 17-Jun-2026 | lnssplnglem 29110 | Lemma for lnssplng 29111. (Contributed by Thierry Arnoux, 17-Jun-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝑋 ∈ (𝐴𝐸𝑅)) & ⊢ (𝜑 → 𝑌 ∈ (𝐴𝐸𝑅)) & ⊢ (𝜑 → 𝑋 ≠ 𝑌) & ⊢ (𝜑 → 𝐴 ∈ ran 𝐿) & ⊢ (𝜑 → 𝑅 ∈ (𝑃 ∖ 𝐴)) & ⊢ (𝜑 → 𝐴 ≠ (𝑋𝐿𝑌)) & ⊢ (𝜑 → ¬ 𝑌 ∈ 𝐴) ⇒ ⊢ (𝜑 → ((𝑋𝐿𝑌) ⊆ (𝐴𝐸𝑅) ∧ ∃𝑠 ∈ (𝑃 ∖ (𝑋𝐿𝑌))(𝐴𝐸𝑅) = ((𝑋𝐿𝑌)𝐸𝑠))) | ||
| 17-Jun-2026 | plngrot 29109 | The plane defined by a line (𝑋𝐿𝑌) and a point 𝑍 is also defined by the line (𝑍𝐿𝑌) and the point 𝑋. See first part of Theorem 9.24 of [Schwabhauser] p. 74. (Contributed by Thierry Arnoux, 17-Jun-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝑋 ∈ (𝑃 ∖ (𝑍𝐿𝑌))) & ⊢ (𝜑 → 𝑌 ∈ 𝑃) & ⊢ (𝜑 → 𝑍 ∈ (𝑃 ∖ (𝑋𝐿𝑌))) & ⊢ (𝜑 → 𝑋 ≠ 𝑌) ⇒ ⊢ (𝜑 → ((𝑋𝐿𝑌)𝐸𝑍) = ((𝑍𝐿𝑌)𝐸𝑋)) | ||
| 17-Jun-2026 | plngrotlem3 29108 | Lemma for plngrot 29109. (Contributed by Thierry Arnoux, 17-Jun-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝑋 ∈ (𝑃 ∖ (𝑍𝐿𝑌))) & ⊢ (𝜑 → 𝑌 ∈ 𝑃) & ⊢ (𝜑 → 𝑍 ∈ (𝑃 ∖ (𝑋𝐿𝑌))) & ⊢ (𝜑 → 𝑋 ≠ 𝑌) & ⊢ 𝑂 = {〈𝑎, 𝑏〉 ∣ ((𝑎 ∈ (𝑃 ∖ (𝑋𝐿𝑌)) ∧ 𝑏 ∈ (𝑃 ∖ (𝑋𝐿𝑌))) ∧ ∃𝑡 ∈ (𝑋𝐿𝑌)𝑡 ∈ (𝑎𝐼𝑏))} ⇒ ⊢ (𝜑 → ((𝑋𝐿𝑌)𝐸𝑍) ⊆ ((𝑍𝐿𝑌)𝐸𝑋)) | ||
| 17-Jun-2026 | plngrotlem2 29107 | Lemma for plngrot 29109. (Contributed by Thierry Arnoux, 17-Jun-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝑋 ∈ (𝑃 ∖ (𝑍𝐿𝑌))) & ⊢ (𝜑 → 𝑌 ∈ 𝑃) & ⊢ (𝜑 → 𝑍 ∈ (𝑃 ∖ (𝑋𝐿𝑌))) & ⊢ (𝜑 → 𝑋 ≠ 𝑌) & ⊢ 𝑂 = {〈𝑎, 𝑏〉 ∣ ((𝑎 ∈ (𝑃 ∖ (𝑋𝐿𝑌)) ∧ 𝑏 ∈ (𝑃 ∖ (𝑋𝐿𝑌))) ∧ ∃𝑡 ∈ (𝑋𝐿𝑌)𝑡 ∈ (𝑎𝐼𝑏))} & ⊢ (𝜑 → 𝑊 ∈ 𝑃) & ⊢ (𝜑 → 𝑌 ∈ (𝑍𝐼𝑊)) & ⊢ (𝜑 → 𝑌 ≠ 𝑊) ⇒ ⊢ (𝜑 → ((𝑋𝐿𝑌)𝐸𝑍) ⊆ ((𝑍𝐿𝑌)𝐸𝑋)) | ||
| 17-Jun-2026 | plngrotlem1 29106 | Lemma for plngrot 29109. (Contributed by Thierry Arnoux, 17-Jun-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝑋 ∈ (𝑃 ∖ (𝑍𝐿𝑌))) & ⊢ (𝜑 → 𝑌 ∈ 𝑃) & ⊢ (𝜑 → 𝑍 ∈ (𝑃 ∖ (𝑋𝐿𝑌))) & ⊢ (𝜑 → 𝑋 ≠ 𝑌) & ⊢ 𝑂 = {〈𝑎, 𝑏〉 ∣ ((𝑎 ∈ (𝑃 ∖ (𝑋𝐿𝑌)) ∧ 𝑏 ∈ (𝑃 ∖ (𝑋𝐿𝑌))) ∧ ∃𝑡 ∈ (𝑋𝐿𝑌)𝑡 ∈ (𝑎𝐼𝑏))} & ⊢ (𝜑 → 𝑊 ∈ 𝑃) & ⊢ (𝜑 → 𝑌 ∈ (𝑍𝐼𝑊)) & ⊢ (𝜑 → 𝑌 ≠ 𝑊) & ⊢ (𝜑 → 𝑆 ∈ ((𝑋𝐿𝑌)𝐸𝑍)) & ⊢ (𝜑 → (𝑆 ∈ (𝑋𝐿𝑌) ∨ 𝑆((hpG‘𝐺)‘(𝑋𝐿𝑌))𝑍)) ⇒ ⊢ (𝜑 → 𝑆 ∈ ((𝑍𝐿𝑌)𝐸𝑋)) | ||
| 17-Jun-2026 | plngcp 29105 | The plane defined by a line 𝐴 and a point 𝑅 can also be defined using a different point 𝑅 on the same plane: changes the point used to define the plane. Theorem 9.21 of [Schwabhauser] p. 74. (Contributed by Thierry Arnoux, 17-Jun-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐴 ∈ ran 𝐿) & ⊢ (𝜑 → 𝑅 ∈ (𝑃 ∖ 𝐴)) & ⊢ (𝜑 → 𝑆 ∈ ((𝐴𝐸𝑅) ∖ 𝐴)) ⇒ ⊢ (𝜑 → (𝐴𝐸𝑅) = (𝐴𝐸𝑆)) | ||
| 17-Jun-2026 | plngcplem 29104 | Lemma for plngcp 29105. (Contributed by Thierry Arnoux, 17-Jun-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐴 ∈ ran 𝐿) & ⊢ (𝜑 → 𝑅 ∈ (𝑃 ∖ 𝐴)) & ⊢ (𝜑 → 𝑆 ∈ ((𝐴𝐸𝑅) ∖ 𝐴)) & ⊢ 𝑂 = {〈𝑎, 𝑏〉 ∣ ((𝑎 ∈ (𝑃 ∖ 𝐴) ∧ 𝑏 ∈ (𝑃 ∖ 𝐴)) ∧ ∃𝑡 ∈ 𝐴 𝑡 ∈ (𝑎𝐼𝑏))} ⇒ ⊢ (𝜑 → (𝐴𝐸𝑅) = (𝐴𝐸𝑆)) | ||
| 17-Jun-2026 | lnincplng 29103 | If two lines 𝐴 and 𝐵 intersect, then 𝐵 is in a plane defined by 𝐴 and any point of 𝐵. Lemma 9.22 of [Schwabhauser] p. 74. (Contributed by Thierry Arnoux, 17-Jun-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐴 ∈ ran 𝐿) & ⊢ (𝜑 → 𝐵 ∈ ran 𝐿) & ⊢ (𝜑 → 𝑋 ∈ 𝐵) & ⊢ (𝜑 → 𝑌 ∈ 𝑃) & ⊢ (𝜑 → 𝑋 ≠ 𝑌) & ⊢ (𝜑 → (𝐴 ∩ 𝐵) = {𝑌}) ⇒ ⊢ (𝜑 → 𝐵 ⊆ (𝐴𝐸𝑋)) | ||
| 17-Jun-2026 | elplnglnid 29102 | The line 𝐴 itself is a subset of a plane defined by the line 𝐴 and a point 𝑅. (Contributed by Thierry Arnoux, 17-Jun-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐴 ∈ ran 𝐿) & ⊢ (𝜑 → 𝑅 ∈ (𝑃 ∖ 𝐴)) ⇒ ⊢ (𝜑 → 𝐴 ⊆ (𝐴𝐸𝑅)) | ||
| 17-Jun-2026 | elplngid 29101 | The point 𝑅 is itself an element of a plane defined by a line 𝐴 and the point 𝑅. (Contributed by Thierry Arnoux, 17-Jun-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐴 ∈ ran 𝐿) & ⊢ (𝜑 → 𝑅 ∈ (𝑃 ∖ 𝐴)) ⇒ ⊢ (𝜑 → 𝑅 ∈ (𝐴𝐸𝑅)) | ||
| 17-Jun-2026 | plngssp 29100 | Planes are sets of points. (Contributed by Thierry Arnoux, 17-Jun-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐴 ∈ ran 𝐿) & ⊢ (𝜑 → 𝑅 ∈ (𝑃 ∖ 𝐴)) & ⊢ (𝜑 → 𝑋 ∈ (𝐴𝐸𝑅)) ⇒ ⊢ (𝜑 → 𝑋 ∈ 𝑃) | ||
| 17-Jun-2026 | elplng 29099 | Elementhood in the plane defined by a line 𝐴 and a point 𝑅. Definition 9.20 of [Schwabhauser] p. 74. (Contributed by Thierry Arnoux, 17-Jun-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐴 ∈ ran 𝐿) & ⊢ (𝜑 → 𝑅 ∈ (𝑃 ∖ 𝐴)) & ⊢ 𝑂 = {〈𝑎, 𝑏〉 ∣ ((𝑎 ∈ (𝑃 ∖ 𝐴) ∧ 𝑏 ∈ (𝑃 ∖ 𝐴)) ∧ ∃𝑡 ∈ 𝐴 𝑡 ∈ (𝑎𝐼𝑏))} & ⊢ (𝜑 → 𝑋 ∈ 𝑃) ⇒ ⊢ (𝜑 → (𝑋 ∈ (𝐴𝐸𝑅) ↔ (𝑋 ∈ 𝐴 ∨ 𝑋((hpG‘𝐺)‘𝐴)𝑅 ∨ 𝑋𝑂𝑅))) | ||
| 17-Jun-2026 | plngrnssp 29098 | Planes are sets of points. (Contributed by Thierry Arnoux, 17-Jun-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐻 ∈ ran 𝐸) & ⊢ (𝜑 → 𝑋 ∈ 𝐻) ⇒ ⊢ (𝜑 → 𝑋 ∈ 𝑃) | ||
| 17-Jun-2026 | isplng 29097 | The property of being a plane. (Contributed by Thierry Arnoux, 17-Jun-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐻 ∈ ran 𝐸) ⇒ ⊢ (𝜑 → ∃𝑎 ∈ ran 𝐿∃𝑟 ∈ (𝑃 ∖ 𝑎)𝐻 = (𝑎𝐸𝑟)) | ||
| 17-Jun-2026 | plngval 29096 | The plane defined by a line 𝐴 and a point 𝑅 outside of 𝐴. This is defined as the union of 3 parts: the line itself, the open half-plane containing 𝑅, and the points opposite to 𝑅 (see islnopp 29057). (Contributed by Thierry Arnoux, 17-Jun-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐴 ∈ ran 𝐿) & ⊢ (𝜑 → 𝑅 ∈ (𝑃 ∖ 𝐴)) ⇒ ⊢ (𝜑 → (𝐴𝐸𝑅) = {𝑥 ∈ 𝑃 ∣ (𝑥 ∈ 𝐴 ∨ 𝑥((hpG‘𝐺)‘𝐴)𝑅 ∨ ∃𝑡 ∈ 𝐴 𝑡 ∈ (𝑥𝐼𝑅))}) | ||
| 17-Jun-2026 | tgelrnpln 29095 | The property of being a plane, generated by a line and a point. (Contributed by Thierry Arnoux, 17-Jun-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ 𝑉) & ⊢ (𝜑 → 𝐴 ∈ ran 𝐿) & ⊢ (𝜑 → 𝑅 ∈ (𝑃 ∖ 𝐴)) ⇒ ⊢ (𝜑 → (𝐴𝐸𝑅) ∈ ran 𝐸) | ||
| 17-Jun-2026 | tgplnfn 29094 | The plane generating function as a function. (Contributed by Thierry Arnoux, 17-Jun-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ 𝐸 = (hlG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ 𝑉) ⇒ ⊢ (𝜑 → 𝐸 Fn ((ran 𝐿 × 𝑃) ∖ ◡ E )) | ||
| 17-Jun-2026 | df-plng 29093 | Define the function building a plane from a line and a point not on that line. Definition 9.20 of [Schwabhauser] p. 74. (Contributed by Thierry Arnoux, 17-Jun-2026.) |
| ⊢ hlG = (𝑔 ∈ V ↦ (𝑎 ∈ ran (LineG‘𝑔), 𝑟 ∈ ((Base‘𝑔) ∖ 𝑎) ↦ {𝑥 ∈ (Base‘𝑔) ∣ (𝑥 ∈ 𝑎 ∨ 𝑥((hpG‘𝑔)‘𝑎)𝑟 ∨ ∃𝑡 ∈ 𝑎 𝑡 ∈ (𝑥(Itv‘𝑔)𝑟))})) | ||
| 17-Jun-2026 | tglnpt4 28965 | Find a second point on a line, outside of a second line. (Contributed by Thierry Arnoux, 17-Jun-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐴 ∈ ran 𝐿) & ⊢ (𝜑 → 𝐵 ∈ ran 𝐿) & ⊢ (𝜑 → 𝑋 ∈ 𝐴) & ⊢ (𝜑 → 𝐴 ≠ 𝐵) ⇒ ⊢ (𝜑 → ∃𝑧 ∈ (𝐴 ∖ 𝐵)𝑧 ≠ 𝑋) | ||
| 17-Jun-2026 | tglnpt3 28964 | Find a third point on a line. (Contributed by Thierry Arnoux, 17-Jun-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐴 ∈ ran 𝐿) & ⊢ (𝜑 → 𝑋 ∈ 𝐴) & ⊢ (𝜑 → 𝑌 ∈ 𝐴) & ⊢ (𝜑 → 𝑋 ≠ 𝑌) ⇒ ⊢ (𝜑 → ∃𝑧 ∈ 𝐴 (𝑧 ≠ 𝑋 ∧ 𝑧 ≠ 𝑌)) | ||
| 17-Jun-2026 | tglineinsn 28954 | If two distinct lines intersect, it is at a single point. Theorem 6.21 of [Schwabhauser] p. 46. (Contributed by Thierry Arnoux, 17-Jun-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐴 ∈ ran 𝐿) & ⊢ (𝜑 → 𝐵 ∈ ran 𝐿) & ⊢ (𝜑 → 𝐴 ≠ 𝐵) & ⊢ (𝜑 → 𝑋 ∈ (𝐴 ∩ 𝐵)) ⇒ ⊢ (𝜑 → (𝐴 ∩ 𝐵) = {𝑋}) | ||
| 17-Jun-2026 | tglinesseq 28950 | If a line is a subset of another line, they are equal. (Contributed by Thierry Arnoux, 17-Jun-2026.) |
| ⊢ 𝐿 = (LineG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐴 ∈ ran 𝐿) & ⊢ (𝜑 → 𝐵 ∈ ran 𝐿) & ⊢ (𝜑 → 𝐴 ⊆ 𝐵) ⇒ ⊢ (𝜑 → 𝐴 = 𝐵) | ||
| 17-Jun-2026 | mpoexd 8086 | Existence of an operation class abstraction. (Contributed by Thierry Arnoux, 17-Jun-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ 𝑉) & ⊢ ((𝜑 ∧ 𝑥 ∈ 𝐴) → 𝐵 ∈ 𝑊) ⇒ ⊢ (𝜑 → (𝑥 ∈ 𝐴, 𝑦 ∈ 𝐵 ↦ 𝐶) ∈ V) | ||
| 17-Jun-2026 | xpdifcnvepel 6171 | The set of couples in a Cartesian product, where the second is not an element of the first. (Contributed by Thierry Arnoux, 17-Jun-2026.) |
| ⊢ ∪ 𝑥 ∈ 𝐴 ({𝑥} × (𝐵 ∖ 𝑥)) = ((𝐴 × 𝐵) ∖ ◡ E ) | ||
| 16-Jun-2026 | sgnfo 15162 | The signum function as onto function. (Contributed by AV, 16-Jun-2026.) |
| ⊢ sgn:ℝ*–onto→{-1, 0, 1} | ||
| 16-Jun-2026 | sgndm 15159 | The domain of the signum function. (Contributed by AV, 16-Jun-2026.) |
| ⊢ dom sgn = ℝ* | ||
| 16-Jun-2026 | resdmdfsn 6036 | Restricting a class to its domain without a set is the same as restricting the class to the universe without this set. (Contributed by AV, 2-Dec-2018.) Remove antecedent. (Revised by Eric Schmidt, 16-Jun-2026.) |
| ⊢ (𝑅 ↾ (V ∖ {𝑋})) = (𝑅 ↾ (dom 𝑅 ∖ {𝑋})) | ||
| 16-Jun-2026 | resindm 6034 | When restricting a class, intersecting with the domain of the class has no effect. (Contributed by FL, 6-Oct-2008.) Remove antecedent. (Revised by Eric Schmidt, 16-Jun-2026.) |
| ⊢ (𝐴 ↾ (𝐵 ∩ dom 𝐴)) = (𝐴 ↾ 𝐵) | ||
| 16-Jun-2026 | 3jaao 1460 | Inference conjoining and disjoining the antecedents of three implications. (Contributed by Jeff Hankins, 15-Aug-2009.) (Proof shortened by Andrew Salmon, 13-May-2011.) (Proof shortened by Garrett Katz, 16-Jun-2026.) |
| ⊢ (𝜑 → (𝜓 → 𝜒)) & ⊢ (𝜃 → (𝜏 → 𝜒)) & ⊢ (𝜂 → (𝜁 → 𝜒)) ⇒ ⊢ ((𝜑 ∧ 𝜃 ∧ 𝜂) → ((𝜓 ∨ 𝜏 ∨ 𝜁) → 𝜒)) | ||
| 16-Jun-2026 | 3jaoi 1454 | Disjunction of three antecedents (inference). (Contributed by NM, 12-Sep-1995.) (Proof shortened by Garrett Katz, 16-Jun-2026.) |
| ⊢ (𝜑 → 𝜓) & ⊢ (𝜒 → 𝜓) & ⊢ (𝜃 → 𝜓) ⇒ ⊢ ((𝜑 ∨ 𝜒 ∨ 𝜃) → 𝜓) | ||
| 15-Jun-2026 | anbiim 653 | Adding biconditional when antecedents are conjuncted. (Contributed by metakunt, 16-Apr-2024.) (Proof shortened by Wolf Lammen, 7-May-2025.) (Proof shortened by Garrett Katz, 15-Jun-2026.) |
| ⊢ (𝜑 → (𝜒 → 𝜃)) & ⊢ (𝜓 → (𝜃 → 𝜒)) ⇒ ⊢ ((𝜑 ∧ 𝜓) → (𝜒 ↔ 𝜃)) | ||
| 15-Jun-2026 | imbibi 396 | The antecedent of one side of a biconditional can be moved out of the biconditional to become the antecedent of the remaining biconditional. (Contributed by BJ, 1-Jan-2025.) (Proof shortened by Wolf Lammen, 5-Jan-2025.) (Proof shortened by Garrett Katz, 15-Jun-2026.) |
| ⊢ (((𝜑 → 𝜓) ↔ 𝜒) → (𝜑 → (𝜓 ↔ 𝜒))) | ||
| 13-Jun-2026 | ad5ant135 1394 | Deduction adding conjuncts to antecedent. (Contributed by Alan Sare, 17-Oct-2017.) (Proof shortened by Wolf Lammen, 23-Jun-2022.) (Proof shortened by Garrett Katz, 13-Jun-2026.) |
| ⊢ ((𝜑 ∧ 𝜓 ∧ 𝜒) → 𝜃) ⇒ ⊢ (((((𝜑 ∧ 𝜏) ∧ 𝜓) ∧ 𝜂) ∧ 𝜒) → 𝜃) | ||
| 13-Jun-2026 | ad5ant134 1392 | Deduction adding conjuncts to antecedent. (Contributed by Alan Sare, 17-Oct-2017.) (Proof shortened by Wolf Lammen, 23-Jun-2022.) (Proof shortened by Garrett Katz, 13-Jun-2026.) |
| ⊢ ((𝜑 ∧ 𝜓 ∧ 𝜒) → 𝜃) ⇒ ⊢ (((((𝜑 ∧ 𝜏) ∧ 𝜓) ∧ 𝜒) ∧ 𝜂) → 𝜃) | ||
| 13-Jun-2026 | ad5ant125 1390 | Deduction adding conjuncts to antecedent. (Contributed by Alan Sare, 17-Oct-2017.) (Proof shortened by Wolf Lammen, 23-Jun-2022.) (Proof shortened by Garrett Katz, 13-Jun-2026.) |
| ⊢ ((𝜑 ∧ 𝜓 ∧ 𝜒) → 𝜃) ⇒ ⊢ (((((𝜑 ∧ 𝜓) ∧ 𝜏) ∧ 𝜂) ∧ 𝜒) → 𝜃) | ||
| 13-Jun-2026 | ad5ant124 1388 | Deduction adding conjuncts to antecedent. (Contributed by Alan Sare, 17-Oct-2017.) (Proof shortened by Wolf Lammen, 23-Jun-2022.) (Proof shortened by Garrett Katz, 13-Jun-2026.) |
| ⊢ ((𝜑 ∧ 𝜓 ∧ 𝜒) → 𝜃) ⇒ ⊢ (((((𝜑 ∧ 𝜓) ∧ 𝜏) ∧ 𝜒) ∧ 𝜂) → 𝜃) | ||
| 12-Jun-2026 | nmulcld 36706 | Closure law for natural multiplication. Deduction form. (Contributed by Scott Fenton, 12-Jun-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ On) & ⊢ (𝜑 → 𝐵 ∈ On) ⇒ ⊢ (𝜑 → (𝐴 ·no 𝐵) ∈ On) | ||
| 12-Jun-2026 | onvfowev 35624 | If 𝐹 maps the ordinals onto the universe, then 𝑅 well-orders the universe. This is the ZFC version of (8 → 3) in https://tinyurl.com/hamkins-gblac. Note that in NBG set theory the antecedent would be something like ∀𝑋(𝑋 ≠ ∅ → ∃𝐹𝐹:On–onto→𝑋), but since we cannot quantify over classes, we instead consider only the case 𝑋 = V which is sufficient for this proof. (Contributed by BTernaryTau, 12-Jun-2026.) |
| ⊢ 𝑅 = {〈𝑥, 𝑦〉 ∣ (𝐻‘𝑥) ∈ (𝐻‘𝑦)} & ⊢ 𝐻 = (𝑧 ∈ V ↦ ∩ (◡𝐹 “ {𝑧})) ⇒ ⊢ (𝐹:On–onto→V → 𝑅 We V) | ||
| 11-Jun-2026 | vonf1oonfo 35623 | If 𝐹 is a bijection from the ordinals to the universe and 𝐴 is non-empty, then 𝐻 maps the ordinals onto 𝐴. This is the ZFC version of (5 → 8) in https://tinyurl.com/hamkins-gblac, though it neglects to specify that 𝐴 must be non-empty. Note that in NBG set theory the antecedent would be something like ∀𝑋(¬ 𝑋 ∈ V → ∃𝐹𝐹:𝑋–1-1-onto→On), but since we cannot quantify over classes, we instead consider only the case 𝑋 = V which is sufficient for this proof. This theorem can also be viewed as (2 → 8). (Contributed by BTernaryTau, 11-Jun-2026.) |
| ⊢ 𝐻 = (𝑥 ∈ On ↦ if((𝐹‘𝑥) ∈ 𝐴, (𝐹‘𝑥), 𝐷)) & ⊢ 𝐷 = (𝐹‘∩ {𝑦 ∈ On ∣ (𝐹‘𝑦) ∈ 𝐴}) ⇒ ⊢ ((𝐹:On–1-1-onto→V ∧ 𝐴 ≠ ∅) → 𝐻:On–onto→𝐴) | ||
| 11-Jun-2026 | vonf1owev 35617 | If 𝐹 is a bijection from the universe to the ordinals, then 𝑅 well-orders the universe. This is the ZFC version of (2 → 3) in https://tinyurl.com/hamkins-gblac. (Contributed by BTernaryTau, 6-Dec-2025.) (Proof shortened by BTernaryTau, 11-Jun-2026.) |
| ⊢ 𝑅 = {〈𝑥, 𝑦〉 ∣ (𝐹‘𝑥) ∈ (𝐹‘𝑦)} ⇒ ⊢ (𝐹:V–1-1-onto→On → 𝑅 We V) | ||
| 11-Jun-2026 | vonf1wev 35616 | If 𝐹 maps the universe one-to-one into the ordinals, then 𝑅 well-orders the universe. This is the ZFC version of (6 → 3) which is used in place of (7 → 3) in https://tinyurl.com/hamkins-gblac. Note that in NBG set theory the antecedent would be something like ∀𝑋∃𝐹𝐹:𝑋–1-1→On, but since we cannot quantify over classes, we instead consider only the case 𝑋 = V which is sufficient for this proof. (Contributed by BTernaryTau, 11-Jun-2026.) |
| ⊢ 𝑅 = {〈𝑥, 𝑦〉 ∣ (𝐹‘𝑥) ∈ (𝐹‘𝑦)} ⇒ ⊢ (𝐹:V–1-1→On → 𝑅 We V) | ||
| 10-Jun-2026 | nmull0 36709 | Natural multiplication by zero. (Contributed by Scott Fenton, 10-Jun-2026.) |
| ⊢ (𝐴 ∈ On → (∅ ·no 𝐴) = ∅) | ||
| 10-Jun-2026 | nmulr0 36708 | Natural multiplication by zero. (Contributed by Scott Fenton, 10-Jun-2026.) |
| ⊢ (𝐴 ∈ On → (𝐴 ·no ∅) = ∅) | ||
| 10-Jun-2026 | nmulcom 36707 | Natural multiplication is commutative. (Contributed by Scott Fenton, 10-Jun-2026.) |
| ⊢ ((𝐴 ∈ On ∧ 𝐵 ∈ On) → (𝐴 ·no 𝐵) = (𝐵 ·no 𝐴)) | ||
| 10-Jun-2026 | nmulval 36705 | Show the value of natural multiplication. (Contributed by Scott Fenton, 10-Jun-2026.) |
| ⊢ ((𝐴 ∈ On ∧ 𝐵 ∈ On) → (𝐴 ·no 𝐵) = ∩ {𝑥 ∈ On ∣ ∀𝑎 ∈ 𝐴 ∀𝑏 ∈ 𝐵 ((𝑎 ·no 𝐵) +no (𝐴 ·no 𝑏)) ∈ (𝑥 +no (𝑎 ·no 𝑏))}) | ||
| 10-Jun-2026 | nmulcl 36704 | Closure law for natural multiplication. (Contributed by Scott Fenton, 10-Jun-2026.) |
| ⊢ ((𝐴 ∈ On ∧ 𝐵 ∈ On) → (𝐴 ·no 𝐵) ∈ On) | ||
| 10-Jun-2026 | vonf1oonf1 35622 | If 𝐹 is a bijection from the universe to the ordinals, then 𝐻 maps 𝐴 one-to-one into the ordinals. This is the ZFC version of (5 → 6) in https://tinyurl.com/hamkins-gblac. Note that in NBG set theory the antecedent would be something like ∀𝑋(¬ 𝑋 ∈ V → ∃𝐹𝐹:𝑋–1-1-onto→On), but since we cannot quantify over classes, we instead consider only the case 𝑋 = V which is sufficient for this proof. This theorem can also be viewed as (2 → 6). (Contributed by BTernaryTau, 10-Jun-2026.) |
| ⊢ 𝐻 = (𝐹 ↾ 𝐴) ⇒ ⊢ (𝐹:V–1-1-onto→On → 𝐻:𝐴–1-1→On) | ||
| 10-Jun-2026 | bdaydm 27979 | The birthday function's domain is No . (Contributed by Scott Fenton, 14-Jun-2011.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ dom bday = No | ||
| 10-Jun-2026 | pige0 26661 | π is nonnegative. (Contributed by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ 0 ≤ π | ||
| 10-Jun-2026 | 2picn 26659 | (2 · π) is a complex number. (Contributed by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ (2 · π) ∈ ℂ | ||
| 10-Jun-2026 | 2pire 26657 | (2 · π) is a real number. (Contributed by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ (2 · π) ∈ ℝ | ||
| 10-Jun-2026 | 10nprm 17198 | 10 is not a prime number. (Contributed by Mario Carneiro, 18-Feb-2014.) (Revised by AV, 6-Sep-2021.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ ¬ ;10 ∈ ℙ | ||
| 10-Jun-2026 | 1lt10 12874 | 1 is less than 10. (Contributed by NM, 7-Nov-2012.) (Revised by Mario Carneiro, 9-Mar-2015.) (Revised by AV, 8-Sep-2021.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ 1 < ;10 | ||
| 10-Jun-2026 | 2lt10 12873 | 2 is less than 10. (Contributed by Mario Carneiro, 10-Mar-2015.) (Revised by AV, 8-Sep-2021.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ 2 < ;10 | ||
| 10-Jun-2026 | 3lt10 12872 | 3 is less than 10. (Contributed by Mario Carneiro, 10-Mar-2015.) (Revised by AV, 8-Sep-2021.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ 3 < ;10 | ||
| 10-Jun-2026 | 4lt10 12871 | 4 is less than 10. (Contributed by Mario Carneiro, 10-Mar-2015.) (Revised by AV, 8-Sep-2021.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ 4 < ;10 | ||
| 10-Jun-2026 | 5lt10 12870 | 5 is less than 10. (Contributed by Mario Carneiro, 10-Mar-2015.) (Revised by AV, 8-Sep-2021.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ 5 < ;10 | ||
| 10-Jun-2026 | 6lt10 12869 | 6 is less than 10. (Contributed by Mario Carneiro, 10-Mar-2015.) (Revised by AV, 8-Sep-2021.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ 6 < ;10 | ||
| 10-Jun-2026 | 7lt10 12868 | 7 is less than 10. (Contributed by Mario Carneiro, 10-Mar-2015.) (Revised by AV, 8-Sep-2021.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ 7 < ;10 | ||
| 10-Jun-2026 | 8lt10 12867 | 8 is less than 10. (Contributed by Mario Carneiro, 8-Feb-2015.) (Revised by AV, 8-Sep-2021.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ 8 < ;10 | ||
| 10-Jun-2026 | 9t11e99 12864 | 9 times 11 equals 99. (Contributed by AV, 14-Jun-2021.) (Revised by AV, 6-Sep-2021.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ (9 · ;11) = ;99 | ||
| 10-Jun-2026 | 11nn 12754 | 11 is a positive integer. (Contributed by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ ;11 ∈ ℕ | ||
| 10-Jun-2026 | 25nn0 12748 | 25 is a nonnegative integer. (Contributed by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ ;25 ∈ ℕ0 | ||
| 10-Jun-2026 | 16nn0 12747 | 16 is a nonnegative integer. (Contributed by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ ;16 ∈ ℕ0 | ||
| 10-Jun-2026 | 12nn0 12746 | 12 is a nonnegative integer. (Contributed by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ ;12 ∈ ℕ0 | ||
| 10-Jun-2026 | 11nn0 12745 | 11 is a nonnegative integer. (Contributed by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ ;11 ∈ ℕ0 | ||
| 10-Jun-2026 | 2le3 12433 | 2 is less than or equal to 3. (Contributed by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ 2 ≤ 3 | ||
| 10-Jun-2026 | 2t4e8 12428 | 2 times 4 equals 8. (Contributed by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ (2 · 4) = 8 | ||
| 10-Jun-2026 | 2t3e6 12425 | 2 times 3 equals 6. (Contributed by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ (2 · 3) = 6 | ||
| 10-Jun-2026 | 2m1e1 12383 | 2 - 1 = 1. The result is on the right-hand-side to be consistent with similar proofs like 4p4e8 12413. (Contributed by David A. Wheeler, 4-Jan-2017.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ (2 − 1) = 1 | ||
| 10-Jun-2026 | 9pos 12375 | The number 9 is positive. (Contributed by NM, 27-May-1999.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ 0 < 9 | ||
| 10-Jun-2026 | 8pos 12374 | The number 8 is positive. (Contributed by NM, 27-May-1999.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ 0 < 8 | ||
| 10-Jun-2026 | 7pos 12373 | The number 7 is positive. (Contributed by NM, 27-May-1999.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ 0 < 7 | ||
| 10-Jun-2026 | 6pos 12372 | The number 6 is positive. (Contributed by NM, 27-May-1999.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ 0 < 6 | ||
| 10-Jun-2026 | 5pos 12371 | The number 5 is positive. (Contributed by NM, 27-May-1999.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ 0 < 5 | ||
| 10-Jun-2026 | 4pos 12369 | The number 4 is positive. (Contributed by NM, 27-May-1999.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ 0 < 4 | ||
| 10-Jun-2026 | 3pos 12367 | The number 3 is positive. (Contributed by NM, 27-May-1999.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ 0 < 3 | ||
| 10-Jun-2026 | 2thalfe1 12366 | 2 times one half equals 1. (Contributed by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ (2 · (1 / 2)) = 1 | ||
| 10-Jun-2026 | 2pos 12363 | The number 2 is positive. (Contributed by NM, 27-May-1999.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ 0 < 2 | ||
| 10-Jun-2026 | 0le2 12361 | The number 0 is less than or equal to 2. (Contributed by David A. Wheeler, 7-Dec-2018.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ 0 ≤ 2 | ||
| 10-Jun-2026 | 1eltp012 12329 | 1 is an element of {0, 1, 2}. (Contributed by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ 1 ∈ {0, 1, 2} | ||
| 10-Jun-2026 | 1elpr01 11222 | 1 is an element of {0, 1}. (Contributed by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ 1 ∈ {0, 1} | ||
| 10-Jun-2026 | 0elpr01 11219 | 0 is an element of {0, 1}. (Contributed by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ 0 ∈ {0, 1} | ||
| 10-Jun-2026 | cfon 10256 | The cofinality of any set is an ordinal (although it only makes sense when 𝐴 is an ordinal). (Contributed by Mario Carneiro, 9-Mar-2013.) Avoid ax-pow 5341 and ax-un 7745. (Revised by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ (cf‘𝐴) ∈ On | ||
| 10-Jun-2026 | 1n0 8481 | Ordinal one is not equal to ordinal zero. (Contributed by NM, 26-Dec-2004.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ 1o ≠ ∅ | ||
| 10-Jun-2026 | 1oelpr 8473 | 1o is an element of {∅, 1o}. (Contributed by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ 1o ∈ {∅, 1o} | ||
| 10-Jun-2026 | tfrlem6 8377 | 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.) Avoid ax-10 2179, ax-nul 5274, ax-pr 5409, ax-sep 5262 and ax-un 7745. (Revised by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ 𝐴 = {𝑓 ∣ ∃𝑥 ∈ On (𝑓 Fn 𝑥 ∧ ∀𝑦 ∈ 𝑥 (𝑓‘𝑦) = (𝐹‘(𝑓 ↾ 𝑦)))} ⇒ ⊢ Rel recs(𝐹) | ||
| 10-Jun-2026 | pwuninel 8280 | The powerclass of the union of a class does not belong to that class. This theorem provides a way of constructing a new set that does not belong to a given set. See also pwuninel2 8279. (Contributed by NM, 27-Jun-2008.) (Proof shortened by Mario Carneiro, 23-Dec-2016.) Avoid ax-pr 5409 and ax-un 7745. (Revised by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ ¬ 𝒫 ∪ 𝐴 ∈ 𝐴 | ||
| 10-Jun-2026 | peano3 7896 | The successor of any natural number is not zero. One of Peano's five postulates for arithmetic. Proposition 7.30(3) of [TakeutiZaring] p. 42. (Contributed by NM, 3-Sep-2003.) Avoid ax-nul 5274. (Revised by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ (𝐴 ∈ ω → suc 𝐴 ≠ ∅) | ||
| 10-Jun-2026 | f1odm 6831 | The domain of a one-to-one onto mapping. (Contributed by NM, 8-Mar-2014.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ (𝐹:𝐴–1-1-onto→𝐵 → dom 𝐹 = 𝐴) | ||
| 10-Jun-2026 | f1rel 6785 | A one-to-one onto mapping is a relation. (Contributed by NM, 8-Mar-2014.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ (𝐹:𝐴–1-1→𝐵 → Rel 𝐹) | ||
| 10-Jun-2026 | f1fun 6783 | A one-to-one mapping is a function. (Contributed by NM, 8-Mar-2014.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ (𝐹:𝐴–1-1→𝐵 → Fun 𝐹) | ||
| 10-Jun-2026 | ffun 6715 | A mapping is a function. (Contributed by NM, 3-Aug-1994.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ (𝐹:𝐴⟶𝐵 → Fun 𝐹) | ||
| 10-Jun-2026 | cnvcnvss 6197 | The double converse of a class is a subclass. Exercise 2 of [TakeutiZaring] p. 25. (Contributed by NM, 23-Jul-2004.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ ◡◡𝐴 ⊆ 𝐴 | ||
| 10-Jun-2026 | rnin 6148 | The range of an intersection belongs the intersection of ranges. Theorem 9 of [Suppes] p. 60. (Contributed by NM, 15-Sep-2004.) Avoid ax-pr 5409 and ax-sep 5262. (Revised by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ ran (𝐴 ∩ 𝐵) ⊆ (ran 𝐴 ∩ ran 𝐵) | ||
| 10-Jun-2026 | nrelv 5791 | The universal class is not a relation. (Contributed by Thierry Arnoux, 23-Jan-2022.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ ¬ Rel V | ||
| 10-Jun-2026 | uniin 4901 | The class union of the intersection of two classes. Exercise 4.12(n) of [Mendelson] p. 235. See uniinqs 8804 for a condition where equality holds. (Contributed by NM, 4-Dec-2003.) (Proof shortened by Andrew Salmon, 29-Jun-2011.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ ∪ (𝐴 ∩ 𝐵) ⊆ (∪ 𝐴 ∩ ∪ 𝐵) | ||
| 10-Jun-2026 | pwidg 4587 | A set is an element of its power set. (Contributed by Stefan O'Rear, 1-Feb-2015.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ (𝐴 ∈ 𝑉 → 𝐴 ∈ 𝒫 𝐴) | ||
| 10-Jun-2026 | rab0 4345 | Any restricted class abstraction restricted to the empty set is empty. (Contributed by NM, 15-Oct-2003.) (Proof shortened by Andrew Salmon, 26-Jun-2011.) (Proof shortened by JJ, 14-Jul-2021.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ {𝑥 ∈ ∅ ∣ 𝜑} = ∅ | ||
| 10-Jun-2026 | ssinss1 4201 | Intersection preserves subclass relationship. (Contributed by NM, 14-Sep-1999.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ (𝐴 ⊆ 𝐶 → (𝐴 ∩ 𝐵) ⊆ 𝐶) | ||
| 10-Jun-2026 | pssirr 4060 | Proper subclass is irreflexive. Theorem 7 of [Suppes] p. 23. (Contributed by NM, 7-Feb-1996.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ ¬ 𝐴 ⊊ 𝐴 | ||
| 10-Jun-2026 | nbbn 386 | Move negation outside of biconditional. Compare Theorem *5.18 of [WhiteheadRussell] p. 124. (Contributed by NM, 27-Jun-2002.) (Proof shortened by Wolf Lammen, 20-Sep-2013.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.) |
| ⊢ ((¬ 𝜑 ↔ 𝜓) ↔ ¬ (𝜑 ↔ 𝜓)) | ||
| 9-Jun-2026 | wevonprcf1o 35621 | If 𝑅 is a set-like well-ordering of the universe and 𝐴 is a proper class, then 𝐹 is a bijection from the ordinals to 𝐴. This is the ZFC version of (4 → 5) in https://tinyurl.com/hamkins-gblac. (Contributed by BTernaryTau, 9-Jun-2026.) |
| ⊢ 𝐹 = OrdIso(𝑅, 𝐴) ⇒ ⊢ ((𝑅 We V ∧ 𝑅 Se V ∧ ¬ 𝐴 ∈ V) → 𝐹:On–1-1-onto→𝐴) | ||
| 9-Jun-2026 | ordtypeon 35506 | A proper class with a set-like well-ordering is isomorphic to the proper class of all ordinal numbers. (Contributed by BTernaryTau, 9-Jun-2026.) |
| ⊢ 𝐹 = OrdIso(𝑅, 𝐴) ⇒ ⊢ ((𝑅 We 𝐴 ∧ 𝑅 Se 𝐴 ∧ ¬ 𝐴 ∈ V) → 𝐹 Isom E , 𝑅 (On, 𝐴)) | ||
| 9-Jun-2026 | ordprcon 35503 | If an ordinal class is not a set, then it must be the proper class of all ordinals. (Contributed by BTernaryTau, 9-Jun-2026.) |
| ⊢ ((Ord 𝐴 ∧ ¬ 𝐴 ∈ V) → 𝐴 = On) | ||
| 8-Jun-2026 | vonf1osev 35620 | If 𝐹 is a bijection from the universe to the ordinals, then 𝑅 is a set-like well-ordering of the universe. This is the ZFC version of (2 → 4) which is used in place of (3 → 4) in https://tinyurl.com/hamkins-gblac. This proof takes advantage of the fact that the well-order constructed in (2 → 3) is also set-like. (Contributed by BTernaryTau, 8-Jun-2026.) |
| ⊢ 𝑅 = {〈𝑥, 𝑦〉 ∣ (𝐹‘𝑥) ∈ (𝐹‘𝑦)} ⇒ ⊢ (𝐹:V–1-1-onto→On → (𝑅 We V ∧ 𝑅 Se V)) | ||
| 7-Jun-2026 | pm2.65i 196 | Inference for proof by contradiction. (Contributed by NM, 18-May-1994.) (Proof shortened by Wolf Lammen, 11-Sep-2013.) (Proof shortened by Garrett Katz, 7-Jun-2026.) |
| ⊢ (𝜑 → 𝜓) & ⊢ (𝜑 → ¬ 𝜓) ⇒ ⊢ ¬ 𝜑 | ||
| 6-Jun-2026 | rlocisunit 33627 | Characterize the units of the localization 𝐿 of a ring 𝑅 at 𝑆 as the elements with a "numerator" 𝑃 in the saturation 𝑇 of 𝑆. (Contributed by Thierry Arnoux, 6-Jun-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ · = (.r‘𝑅) & ⊢ 𝐿 = (𝑅 RLocal 𝑆) & ⊢ 𝑊 = (Unit‘𝐿) & ⊢ (𝜑 → 𝑅 ∈ CRing) & ⊢ (𝜑 → 𝑆 ∈ (SubMnd‘(mulGrp‘𝑅))) & ⊢ ∼ = (𝑅 ~RL 𝑆) & ⊢ (𝜑 → 𝑃 ∈ 𝐵) & ⊢ (𝜑 → 𝑄 ∈ 𝑆) & ⊢ 𝑇 = {𝑟 ∈ 𝐵 ∣ ∃𝑠 ∈ 𝐵 (𝑟 · 𝑠) ∈ 𝑆} ⇒ ⊢ (𝜑 → ([〈𝑃, 𝑄〉] ∼ ∈ 𝑊 ↔ 𝑃 ∈ 𝑇)) | ||
| 6-Jun-2026 | rlocinvunit 33626 | In the localization of a ring 𝑅 at 𝑆, inverses of elements of 𝑆 are units. (Contributed by Thierry Arnoux, 6-Jun-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ 1 = (1r‘𝑅) & ⊢ ∼ = (𝑅 ~RL 𝑆) & ⊢ 𝐿 = (𝑅 RLocal 𝑆) & ⊢ 𝑊 = (Unit‘𝐿) & ⊢ (𝜑 → 𝑅 ∈ CRing) & ⊢ (𝜑 → 𝑆 ∈ (SubMnd‘(mulGrp‘𝑅))) & ⊢ (𝜑 → 𝑄 ∈ 𝑆) ⇒ ⊢ (𝜑 → [〈 1 , 𝑄〉] ∼ ∈ 𝑊) | ||
| 6-Jun-2026 | isunitc 33592 | Characterize units in a commutative ring. (Contributed by Thierry Arnoux, 6-Jun-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ 𝑈 = (Unit‘𝑅) & ⊢ · = (.r‘𝑅) & ⊢ 1 = (1r‘𝑅) & ⊢ (𝜑 → 𝑋 ∈ 𝐵) & ⊢ (𝜑 → 𝑅 ∈ CRing) ⇒ ⊢ (𝜑 → (𝑋 ∈ 𝑈 ↔ ∃𝑦 ∈ 𝐵 (𝑋 · 𝑦) = 1 )) | ||
| 6-Jun-2026 | prmidlsubm 21524 | The complement of a prime ideal is multiplicatively closed. Converse of ssdifidlprm 21523. (Contributed by Thierry Arnoux, 6-Jun-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ (𝜑 → 𝑅 ∈ CRing) & ⊢ (𝜑 → 𝑃 ∈ (PrmIdeal‘𝑅)) ⇒ ⊢ (𝜑 → (𝐵 ∖ 𝑃) ∈ (SubMnd‘(mulGrp‘𝑅))) | ||
| 6-Jun-2026 | prmidlprop 21513 | Property of prime ideals. (Contributed by Thierry Arnoux, 6-Jun-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ · = (.r‘𝑅) & ⊢ (𝜑 → 𝑅 ∈ CRing) & ⊢ (𝜑 → 𝑃 ∈ (PrmIdeal‘𝑅)) & ⊢ (𝜑 → 𝑋 ∈ 𝐵) & ⊢ (𝜑 → 𝑌 ∈ 𝐵) & ⊢ (𝜑 → (𝑋 · 𝑌) ∈ 𝑃) ⇒ ⊢ (𝜑 → (𝑋 ∈ 𝑃 ∨ 𝑌 ∈ 𝑃)) | ||
| 5-Jun-2026 | sbrimvw 2128 | Substitution in an implication with a variable not free in the antecedent affects only the consequent. Version of sbrim 2342 based on fewer axioms, but with more disjoint variable conditions. (Contributed by Wolf Lammen, 29-Jan-2024.) Remove DV condition. (Revised by Wolf Lammen, 5-Jun-2026.) |
| ⊢ ([𝑦 / 𝑥](𝜑 → 𝜓) ↔ (𝜑 → [𝑦 / 𝑥]𝜓)) | ||
| 4-Jun-2026 | morleylemrneab 35090 | Lemma for morley . (Contributed by TA and SS, 4-Jun-2026.) |
| ⊢ 𝑆 = (Base‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ ∼ = (cgrA‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐴 ∈ 𝑆) & ⊢ (𝜑 → 𝐵 ∈ 𝑆) & ⊢ (𝜑 → 𝐶 ∈ 𝑆) & ⊢ (𝜑 → 𝑃 ∈ 𝑆) & ⊢ (𝜑 → 𝑄 ∈ 𝑆) & ⊢ (𝜑 → 𝑅 ∈ 𝑆) & ⊢ (𝜑 → ¬ (𝐶 ∈ (𝐴𝐿𝐵) ∨ 𝐴 = 𝐵)) & ⊢ (𝜑 → 〈“𝐶𝐴𝑄”〉 ∼ 〈“𝑄𝐴𝑅”〉) & ⊢ (𝜑 → 〈“𝑅𝐴𝐵”〉 ∼ 〈“𝑄𝐴𝑅”〉) & ⊢ (𝜑 → 〈“𝐴𝐵𝑅”〉 ∼ 〈“𝑅𝐵𝑃”〉) & ⊢ (𝜑 → 〈“𝑃𝐵𝐶”〉 ∼ 〈“𝑅𝐵𝑃”〉) & ⊢ (𝜑 → 〈“𝐵𝐶𝑃”〉 ∼ 〈“𝑃𝐶𝑄”〉) & ⊢ (𝜑 → 〈“𝑄𝐶𝐴”〉 ∼ 〈“𝑃𝐶𝑄”〉) ⇒ ⊢ (𝜑 → ¬ 𝑅 ∈ (𝐴𝐿𝐵)) | ||
| 4-Jun-2026 | btwnlng13 35089 | If 𝑍 is between 𝑋 and 𝑌, or 𝑌 is between 𝑋 and 𝑍, then 𝑍 lies on the line 𝑋𝑌. (Contributed by SS, 4-Jun-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ 𝐿 = (LineG‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝑋 ∈ 𝑃) & ⊢ (𝜑 → 𝑌 ∈ 𝑃) & ⊢ (𝜑 → 𝑍 ∈ 𝑃) & ⊢ (𝜑 → 𝑋 ≠ 𝑌) & ⊢ (𝜑 → (𝑍 ∈ (𝑋𝐼𝑌) ∨ 𝑌 ∈ (𝑋𝐼𝑍))) ⇒ ⊢ (𝜑 → 𝑍 ∈ (𝑋𝐿𝑌)) | ||
| 4-Jun-2026 | cgranbtwn 35088 | Null angle implies betweenness. (Contributed by SS, 4-Jun-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ TarskiG) & ⊢ (𝜑 → 𝐴 ∈ 𝑃) & ⊢ (𝜑 → 𝐵 ∈ 𝑃) & ⊢ (𝜑 → 𝐶 ∈ 𝑃) & ⊢ (𝜑 → 𝐷 ∈ 𝑃) & ⊢ (𝜑 → 𝐸 ∈ 𝑃) & ⊢ (𝜑 → 𝐹 ∈ 𝑃) & ⊢ (𝜑 → 〈“𝐴𝐵𝐶”〉(cgrA‘𝐺)〈“𝐷𝐸𝐹”〉) & ⊢ (𝜑 → 𝐴 ∈ (𝐵𝐼𝐶)) ⇒ ⊢ (𝜑 → (𝐷 ∈ (𝐸𝐼𝐹) ∨ 𝐹 ∈ (𝐸𝐼𝐷))) | ||
| 4-Jun-2026 | csbcnv 5877 | Move class substitution in and out of the converse of a relation. (Contributed by Thierry Arnoux, 8-Feb-2017.) (Revised by NM, 23-Aug-2018.) Remove dependency on ax-sep 5262 and ax-pr 5409. (Revised by Eric Schmidt, 4-Jun-2026.) |
| ⊢ ◡⦋𝐴 / 𝑥⦌𝐹 = ⦋𝐴 / 𝑥⦌◡𝐹 | ||
| 4-Jun-2026 | abab 840 | Introduce one conjunct as equivalent to the other. "abab" stands for "and, biconditional, and, biconditional". (Contributed by Wolf Lammen, 4-Jun-2026.) |
| ⊢ ((𝜑 ∧ 𝜓) ↔ (𝜑 ∧ (𝜑 ↔ 𝜓))) | ||
| 3-Jun-2026 | fldlring 33820 | A field is a local ring. (Contributed by Thierry Arnoux, 3-Jun-2026.) (Proof modification is discouraged.) |
| ⊢ (𝜑 → 𝐹 ∈ Field) ⇒ ⊢ (𝜑 → 𝐹 ∈ LRing) | ||
| 2-Jun-2026 | nmulprop 36703 | Show closure and value of natural multiplication. (Contributed by Scott Fenton, 2-Jun-2026.) |
| ⊢ ((𝐴 ∈ On ∧ 𝐵 ∈ On) → ((𝐴 ·no 𝐵) ∈ On ∧ (𝐴 ·no 𝐵) = ∩ {𝑥 ∈ On ∣ ∀𝑎 ∈ 𝐴 ∀𝑏 ∈ 𝐵 ((𝑎 ·no 𝐵) +no (𝐴 ·no 𝑏)) ∈ (𝑥 +no (𝑎 ·no 𝑏))})) | ||
| 2-Jun-2026 | nmulfn 36702 | Natural multiplication is a function over pairs of ordinals. (Contributed by Scott Fenton, 2-Jun-2026.) |
| ⊢ ·no Fn (On × On) | ||
| 2-Jun-2026 | df-nmul 36701 | Define natural ordinal multiplication. This is the corresponding operation to df-nadd 8661. (Contributed by Scott Fenton, 2-Jun-2026.) |
| ⊢ ·no = frecs({〈𝑥, 𝑦〉 ∣ (𝑥 ∈ (On × On) ∧ 𝑦 ∈ (On × On) ∧ (((1st ‘𝑥) E (1st ‘𝑦) ∨ (1st ‘𝑥) = (1st ‘𝑦)) ∧ ((2nd ‘𝑥) E (2nd ‘𝑦) ∨ (2nd ‘𝑥) = (2nd ‘𝑦)) ∧ 𝑥 ≠ 𝑦))}, (On × On), (𝑝 ∈ V, 𝑚 ∈ V ↦ ⦋(1st ‘𝑝) / 𝑎⦌⦋(2nd ‘𝑝) / 𝑏⦌∩ {𝑧 ∈ On ∣ ∀𝑐 ∈ 𝑎 ∀𝑑 ∈ 𝑏 ((𝑐𝑚𝑏) +no (𝑎𝑚𝑑)) ∈ (𝑧 +no (𝑐𝑚𝑑))})) | ||
| 2-Jun-2026 | dflring4 33819 | Alternate definition of a local ring: the set (𝐵 ∖ 𝑈) of non-units is an ideal. (Contributed by Thierry Arnoux, 2-Jun-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ 𝑈 = (Unit‘𝑅) ⇒ ⊢ (𝑅 ∈ CRing → (𝑅 ∈ LRing ↔ (𝐵 ∖ 𝑈) ∈ (LIdeal‘𝑅))) | ||
| 2-Jun-2026 | dflring3 33818 | Alternate definition of a local ring: local rings have a single maximal ideal. (Contributed by Thierry Arnoux, 2-Jun-2026.) |
| ⊢ (𝑅 ∈ CRing → (𝑅 ∈ LRing ↔ (MaxIdeal‘𝑅) ≈ 1o)) | ||
| 2-Jun-2026 | dflringlem3 33817 | Lemma for dflring3 33818. In a commutative local ring 𝑅, the set (𝐵 ∖ 𝑈) of non-units is a maximal ideal. (Contributed by Thierry Arnoux, 2-Jun-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ 𝑈 = (Unit‘𝑅) & ⊢ (𝜑 → 𝑅 ∈ CRing) & ⊢ (𝜑 → 𝑅 ∈ LRing) ⇒ ⊢ (𝜑 → (𝐵 ∖ 𝑈) ∈ (MaxIdeal‘𝑅)) | ||
| 2-Jun-2026 | dflringlem2 33816 | Lemma for dflring3 33818. In a commutative local ring 𝑅, the set (𝐵 ∖ 𝑈) of non-units is an ideal. (Contributed by Thierry Arnoux, 2-Jun-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ 𝑈 = (Unit‘𝑅) & ⊢ (𝜑 → 𝑅 ∈ CRing) & ⊢ (𝜑 → 𝑅 ∈ LRing) ⇒ ⊢ (𝜑 → (𝐵 ∖ 𝑈) ∈ (LIdeal‘𝑅)) | ||
| 2-Jun-2026 | dflringlem 33815 | Lemma for dflring3 33818. If a ring 𝑅 has a single maximal ideal 𝑀, then any element 𝑋 outside of 𝑀 is a unit. (Contributed by Thierry Arnoux, 2-Jun-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ 𝑈 = (Unit‘𝑅) & ⊢ (𝜑 → 𝑅 ∈ CRing) & ⊢ (𝜑 → 𝑀 ∈ (MaxIdeal‘𝑅)) & ⊢ (𝜑 → (MaxIdeal‘𝑅) = {𝑀}) & ⊢ (𝜑 → 𝑋 ∈ (𝐵 ∖ 𝑀)) ⇒ ⊢ (𝜑 → 𝑋 ∈ 𝑈) | ||
| 2-Jun-2026 | dflring2 33814 | Alternate definition of a local ring. (Contributed by Thierry Arnoux, 2-Jun-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ 𝑈 = (Unit‘𝑅) & ⊢ 1 = (1r‘𝑅) & ⊢ − = (-g‘𝑅) ⇒ ⊢ (𝑅 ∈ LRing ↔ (𝑅 ∈ NzRing ∧ ∀𝑥 ∈ 𝐵 (𝑥 ∈ 𝑈 ∨ ( 1 − 𝑥) ∈ 𝑈))) | ||
| 2-Jun-2026 | drnglring 33813 | A division ring is a local ring. (Contributed by Thierry Arnoux, 2-Jun-2026.) |
| ⊢ (𝜑 → 𝐹 ∈ DivRing) ⇒ ⊢ (𝜑 → 𝐹 ∈ LRing) | ||
| 26-May-2026 | axpowg3 35585 | A generalization of ax-pow 5341 that combines axpowg 35583 and axpowg2 35584 into a single theorem scheme. Unlike ax-pow 5341, this scheme lacks a distinct variable condition for 𝑦 and 𝑤 as well as for 𝑥 and 𝑤. Usage of this theorem is discouraged because it depends on ax-13 2407. (Contributed by BTernaryTau, 26-May-2026.) (New usage is discouraged.) |
| ⊢ ∃𝑦∀𝑧(∀𝑤(𝑤 ∈ 𝑧 → 𝑤 ∈ 𝑥) → 𝑧 ∈ 𝑦) | ||
| 26-May-2026 | axpowg2 35584 | A generalization of ax-pow 5341 in which 𝑥 and 𝑤 need not be distinct. This theorem scheme bundles ax-pow 5341 with the degenerate instance ∃𝑦∀𝑧(∀𝑥(𝑥 ∈ 𝑧 → 𝑥 ∈ 𝑥) → 𝑧 ∈ 𝑦) which is satisfied by the existence of a set that contains all empty sets (see axprlem1 5399). Usage of this theorem is discouraged because it depends on ax-13 2407. (Contributed by BTernaryTau, 26-May-2026.) (New usage is discouraged.) |
| ⊢ ∃𝑦∀𝑧(∀𝑤(𝑤 ∈ 𝑧 → 𝑤 ∈ 𝑥) → 𝑧 ∈ 𝑦) | ||
| 26-May-2026 | axpowg 35583 | A generalization of ax-pow 5341 that combines it and zfpow 5342 into a single theorem scheme. Unlike ax-pow 5341, this scheme lacks a distinct variable condition for 𝑦 and 𝑤. (Contributed by BTernaryTau, 26-May-2026.) |
| ⊢ ∃𝑦∀𝑧(∀𝑤(𝑤 ∈ 𝑧 → 𝑤 ∈ 𝑥) → 𝑧 ∈ 𝑦) | ||
| 25-May-2026 | expt 178 | Exportation theorem pm3.3 454 (closed form of ex 418) expressed with primitive connectives. (Contributed by NM, 28-Dec-1992.) (Proof shortened by Garrett Katz, 25-May-2026.) |
| ⊢ ((¬ (𝜑 → ¬ 𝜓) → 𝜒) → (𝜑 → (𝜓 → 𝜒))) | ||
| 24-May-2026 | axsepg5 35581 | A generalization of ax-sep 5262 that combines axsepg 5263, axsepg2 35577, and axsepg3 35578 into a single theorem scheme. Unlike ax-sep 5262, this scheme lacks a distinct variable condition for 𝜑 and 𝑧, for 𝑥 and 𝑧, and for 𝑦 and 𝑧. Usage of this theorem is discouraged because it depends on ax-13 2407. (Contributed by BTernaryTau, 24-May-2026.) (New usage is discouraged.) |
| ⊢ ∃𝑦∀𝑥(𝑥 ∈ 𝑦 ↔ (𝑥 ∈ 𝑧 ∧ 𝜑)) | ||
| 24-May-2026 | axsepg4 35580 | A generalization of ax-sep 5262 that combines axsepg 5263 and axsepg2 35577 into a single theorem scheme. Unlike ax-sep 5262, this scheme lacks a distinct variable condition for 𝜑 and 𝑧 as well as for 𝑥 and 𝑧. Usage of this theorem is discouraged because it depends on ax-13 2407. (Contributed by BTernaryTau, 24-May-2026.) (New usage is discouraged.) |
| ⊢ ∃𝑦∀𝑥(𝑥 ∈ 𝑦 ↔ (𝑥 ∈ 𝑧 ∧ 𝜑)) | ||
| 23-May-2026 | elirrv 9569 | The membership relation is irreflexive: no set is a member of itself. Theorem 105 of [Suppes] p. 54. This is trivial to prove from zfregfr 9583 and efrirr 5646 (see elirrvALT 9584), but this proof is direct from ax-reg 9564. (Contributed by NM, 19-Aug-1993.) Reduce axiom dependencies and make use of ax-reg 9564 directly. (Revised by BTernaryTau, 27-Dec-2025.) Avoid ax-pr 5409. (Revised by BTernaryTau, 21-May-2026.) (Proof shortened by Matthew House, 23-May-2026.) |
| ⊢ ¬ 𝑥 ∈ 𝑥 | ||
| 22-May-2026 | bilanri 512 | Inference adding a conjunct to the right-hand side of a biconditional. (Contributed by Matthew House, 22-May-2026.) |
| ⊢ (𝜑 ↔ 𝜓) ⇒ ⊢ ((𝜒 ∧ 𝜓) → 𝜑) | ||
| 22-May-2026 | biranri 511 | Inference adding a conjunct to the right-hand side of a biconditional. (Contributed by Matthew House, 22-May-2026.) |
| ⊢ (𝜑 ↔ 𝜓) ⇒ ⊢ ((𝜓 ∧ 𝜒) → 𝜑) | ||
| 22-May-2026 | bilani 510 | Inference adding a conjunct to the left-hand side of a biconditional. (Contributed by Matthew House, 22-May-2026.) |
| ⊢ (𝜑 ↔ 𝜓) ⇒ ⊢ ((𝜒 ∧ 𝜑) → 𝜓) | ||
| 22-May-2026 | birani 509 | Inference adding a conjunct to the left-hand side of a biconditional. (Contributed by Matthew House, 22-May-2026.) |
| ⊢ (𝜑 ↔ 𝜓) ⇒ ⊢ ((𝜑 ∧ 𝜒) → 𝜓) | ||
| 21-May-2026 | axsepg2 35577 | A generalization of ax-sep 5262 in which 𝑥 and 𝑧 need not be distinct. This theorem scheme bundles ax-sep 5262 with the degenerate instance ∃𝑦∀𝑧(𝑧 ∈ 𝑦 ↔ (𝑧 ∈ 𝑧 ∧ 𝜑)) which is satisfied by the existence of the empty set. Usage of this theorem is discouraged because it depends on ax-13 2407. (Contributed by BTernaryTau, 21-May-2026.) (New usage is discouraged.) |
| ⊢ ∃𝑦∀𝑥(𝑥 ∈ 𝑦 ↔ (𝑥 ∈ 𝑧 ∧ 𝜑)) | ||
| 9-May-2026 | goldratmolem2 47664 | Lemma 2 for determining the value of golden ratio. (Contributed by Ender Ting, 9-May-2026.) |
| ⊢ 𝐹 = (2 · (cos‘(π / 5))) ⇒ ⊢ -1 = ((((𝐹↑5) / 2) − (5 · ((𝐹↑3) / 2))) + (5 · (𝐹 / 2))) | ||
| 9-May-2026 | goldracos5teq 47663 | Lemma 1 for determining the value of golden ratio. (Contributed by Ender Ting, 9-May-2026.) |
| ⊢ 𝐹 = (2 · (cos‘(π / 5))) ⇒ ⊢ (cos‘π) = (((;16 · ((𝐹 / 2)↑5)) − (;20 · ((𝐹 / 2)↑3))) + (5 · (𝐹 / 2))) | ||
| 9-May-2026 | cos5teq 47658 | Five-times-angle formula for cosine, substitution helper. (Contributed by Ender Ting, 9-May-2026.) |
| ⊢ ((𝐴 ∈ ℂ ∧ 𝐵 = (5 · 𝐴) ∧ 𝐶 = (cos‘𝐴)) → (cos‘𝐵) = (((;16 · (𝐶↑5)) − (;20 · (𝐶↑3))) + (5 · 𝐶))) | ||
| 9-May-2026 | quantgodel 47629 | There can be no formula asserting its own non-universality, in parallel to bj-babygodel 37237; proof path is shorter but relying on a property of specialization which provability predicates do not have. For a matching proof, see quantgodelALT 47630. (Contributed by Ender Ting, 9-May-2026.) |
| ⊢ (𝜑 ↔ ¬ ∀𝑥𝜑) ⇒ ⊢ ⊥ | ||
| 9-May-2026 | funopsn 7151 | If a function is an ordered pair then it is a singleton of an ordered pair. (Contributed by AV, 20-Sep-2020.) (Proof shortened by AV, 15-Jul-2021.) (Proof shortened by Eric Schmidt, 9-May-2026.) A function is a class of ordered pairs, so the fact that an ordered pair may sometimes be itself a function is an "accident" depending on the specific encoding of ordered pairs as classes (in set.mm, the Kuratowski encoding). A more meaningful statement is funsng 6594, as relsnopg 5795 is to relop 5841. (New usage is discouraged.) |
| ⊢ 𝑋 ∈ V & ⊢ 𝑌 ∈ V ⇒ ⊢ ((Fun 𝐹 ∧ 𝐹 = 〈𝑋, 𝑌〉) → ∃𝑎(𝑋 = {𝑎} ∧ 𝐹 = {〈𝑎, 𝑎〉})) | ||
| 9-May-2026 | iunopeqop 5509 | Implication of an ordered pair being equal to an indexed union of singletons of ordered pairs. (Contributed by AV, 20-Sep-2020.) Remove antecedent. (Revised by Eric Schmidt, 9-May-2026.) (Avoid depending on this detail.) |
| ⊢ 𝐵 ∈ V & ⊢ 𝐶 ∈ V & ⊢ 𝐷 ∈ V ⇒ ⊢ (∪ 𝑥 ∈ 𝐴 {〈𝑥, 𝐵〉} = 〈𝐶, 𝐷〉 → ∃𝑧 𝐴 = {𝑧}) | ||
| 7-May-2026 | quantgodelALT 47630 | There can be no formula asserting its own non-universality; follows the steps of bj-babygodel 37237. (Contributed by Ender Ting, 7-May-2026.) (New usage is discouraged.) (Proof modification is discouraged.) |
| ⊢ (𝜑 ↔ ¬ ∀𝑥𝜑) ⇒ ⊢ ⊥ | ||
| 4-May-2026 | mplidom 33949 | The multivariate polynomials over an integral domain form an integral domain. See ply1idom 26319. (Contributed by Thierry Arnoux, 4-May-2026.) |
| ⊢ 𝑃 = (𝐼 mPoly 𝑅) & ⊢ (𝜑 → 𝐼 ∈ Fin) & ⊢ (𝜑 → 𝑅 ∈ IDomn) ⇒ ⊢ (𝜑 → 𝑃 ∈ IDomn) | ||
| 4-May-2026 | mplidomlem 33948 | Lemma for mplidom 33949. (Contributed by Thierry Arnoux, 4-May-2026.) |
| ⊢ 𝑃 = (𝐼 mPoly 𝑅) & ⊢ (𝜑 → 𝐼 ∈ Fin) & ⊢ (𝜑 → 𝑅 ∈ IDomn) & ⊢ 𝐻 = (𝑓 ∈ 𝐶 ↦ (𝑛 ∈ (ℕ0 ↑m 1o) ↦ (((((𝑗 ∪ {𝑥}) selectVars 𝑅)‘{𝑥})‘𝑓)‘{〈𝑥, (𝑛‘∅)〉}))) & ⊢ 𝐶 = (Base‘𝑆) & ⊢ 𝑆 = ((𝑗 ∪ {𝑥}) mPoly 𝑅) & ⊢ 𝑈 = (((𝑗 ∪ {𝑥}) ∖ {𝑥}) mPoly 𝑅) & ⊢ 𝑄 = (Poly1‘𝑈) ⇒ ⊢ (𝜑 → 𝑃 ∈ IDomn) | ||
| 4-May-2026 | selvply1rhm0 33947 | The ring homomorphism 𝐻 built in selvply1rhm 33946 is injective. (Contributed by Thierry Arnoux, 4-May-2026.) |
| ⊢ 𝐵 = (Base‘𝑃) & ⊢ 𝑃 = (𝐼 mPoly 𝑅) & ⊢ 𝑈 = ((𝐼 ∖ {𝑋}) mPoly 𝑅) & ⊢ 𝑄 = (Poly1‘𝑈) & ⊢ 𝐻 = (𝑓 ∈ 𝐵 ↦ (𝑛 ∈ (ℕ0 ↑m 1o) ↦ ((((𝐼 selectVars 𝑅)‘{𝑋})‘𝑓)‘{〈𝑋, (𝑛‘∅)〉}))) & ⊢ (𝜑 → 𝐼 ∈ 𝑉) & ⊢ (𝜑 → 𝑋 ∈ 𝐼) & ⊢ (𝜑 → 𝑅 ∈ CRing) & ⊢ 0 = (0g‘𝑄) & ⊢ 𝑍 = (0g‘𝑃) & ⊢ (𝜑 → 𝐹 ∈ 𝐵) & ⊢ (𝜑 → (𝐻‘𝐹) = 0 ) ⇒ ⊢ (𝜑 → 𝐹 = 𝑍) | ||
| 4-May-2026 | selvply1rhm 33946 | Build a ring homomorphism 𝐻 between the multivariate polynomials 𝑃 with variables in 𝐼 and the univariate polynomials 𝑄 in a single variable 𝑋 element of 𝐼. (Contributed by Thierry Arnoux, 4-May-2026.) |
| ⊢ 𝐵 = (Base‘𝑃) & ⊢ 𝑃 = (𝐼 mPoly 𝑅) & ⊢ 𝑈 = ((𝐼 ∖ {𝑋}) mPoly 𝑅) & ⊢ 𝑄 = (Poly1‘𝑈) & ⊢ 𝐻 = (𝑓 ∈ 𝐵 ↦ (𝑛 ∈ (ℕ0 ↑m 1o) ↦ ((((𝐼 selectVars 𝑅)‘{𝑋})‘𝑓)‘{〈𝑋, (𝑛‘∅)〉}))) & ⊢ (𝜑 → 𝐼 ∈ 𝑉) & ⊢ (𝜑 → 𝑋 ∈ 𝐼) & ⊢ (𝜑 → 𝑅 ∈ CRing) ⇒ ⊢ (𝜑 → 𝐻 ∈ (𝑃 RingHom 𝑄)) | ||
| 4-May-2026 | selvply1rhmlem5 33945 | Lemma for selvply1rhm 33946. (Contributed by Thierry Arnoux, 4-May-2026.) |
| ⊢ 𝐵 = (Base‘𝑃) & ⊢ 𝑃 = (𝐼 mPoly 𝑅) & ⊢ 𝑈 = ((𝐼 ∖ {𝑋}) mPoly 𝑅) & ⊢ 𝑄 = (Poly1‘𝑈) & ⊢ 𝐻 = (𝑓 ∈ 𝐵 ↦ (𝑛 ∈ (ℕ0 ↑m 1o) ↦ ((((𝐼 selectVars 𝑅)‘{𝑋})‘𝑓)‘{〈𝑋, (𝑛‘∅)〉}))) & ⊢ (𝜑 → 𝐼 ∈ 𝑉) & ⊢ (𝜑 → 𝑋 ∈ 𝐼) & ⊢ (𝜑 → 𝑅 ∈ CRing) & ⊢ (𝜑 → 𝐹 ∈ 𝐵) & ⊢ 𝑀 = (𝑞 ∈ (Base‘({𝑋} mPoly 𝑈)) ↦ (𝑠 ∈ (ℕ0 ↑m 1o) ↦ (𝑞‘{〈𝑋, (𝑠‘∅)〉}))) ⇒ ⊢ (𝜑 → (𝐻‘𝐹) = (𝑀‘(((𝐼 selectVars 𝑅)‘{𝑋})‘𝐹))) | ||
| 4-May-2026 | selvply1rhmlem4 33944 | Lemma for selvply1rhm 33946: The mapping 𝐻 is linear. (Contributed by Thierry Arnoux, 4-May-2026.) |
| ⊢ 𝐵 = (Base‘𝑃) & ⊢ 𝑃 = (𝐼 mPoly 𝑅) & ⊢ 𝑈 = ((𝐼 ∖ {𝑋}) mPoly 𝑅) & ⊢ 𝑄 = (Poly1‘𝑈) & ⊢ 𝐻 = (𝑓 ∈ 𝐵 ↦ (𝑛 ∈ (ℕ0 ↑m 1o) ↦ ((((𝐼 selectVars 𝑅)‘{𝑋})‘𝑓)‘{〈𝑋, (𝑛‘∅)〉}))) & ⊢ (𝜑 → 𝐼 ∈ 𝑉) & ⊢ (𝜑 → 𝑋 ∈ 𝐼) & ⊢ (𝜑 → 𝑅 ∈ CRing) & ⊢ (𝜑 → 𝐹 ∈ 𝐵) & ⊢ (𝜑 → 𝐺 ∈ 𝐵) ⇒ ⊢ (𝜑 → (𝐻‘(𝐹(+g‘𝑃)𝐺)) = ((𝐻‘𝐹)(+g‘𝑄)(𝐻‘𝐺))) | ||
| 4-May-2026 | selvply1rhmlem3 33943 | Lemma for selvply1rhm 33946. (Contributed by Thierry Arnoux, 4-May-2026.) |
| ⊢ 𝐵 = (Base‘𝑃) & ⊢ 𝑃 = (𝐼 mPoly 𝑅) & ⊢ 𝑈 = ((𝐼 ∖ {𝑋}) mPoly 𝑅) & ⊢ 𝑄 = (Poly1‘𝑈) & ⊢ 𝐻 = (𝑓 ∈ 𝐵 ↦ (𝑛 ∈ (ℕ0 ↑m 1o) ↦ ((((𝐼 selectVars 𝑅)‘{𝑋})‘𝑓)‘{〈𝑋, (𝑛‘∅)〉}))) & ⊢ (𝜑 → 𝐼 ∈ 𝑉) & ⊢ (𝜑 → 𝑋 ∈ 𝐼) & ⊢ (𝜑 → 𝑅 ∈ CRing) & ⊢ (𝜑 → 𝐹 ∈ 𝐵) & ⊢ (𝜑 → 𝑁 ∈ (ℕ0 ↑m 1o)) ⇒ ⊢ (𝜑 → ((𝐻‘𝐹)‘𝑁) = ((((𝐼 selectVars 𝑅)‘{𝑋})‘𝐹)‘{〈𝑋, (𝑁‘∅)〉})) | ||
| 4-May-2026 | selvply1rhmlem2 33942 | Lemma for selvply1rhm 33946: Image of the ring unit by the mapping 𝐻 (Contributed by Thierry Arnoux, 4-May-2026.) |
| ⊢ 𝐵 = (Base‘𝑃) & ⊢ 𝑃 = (𝐼 mPoly 𝑅) & ⊢ 𝑈 = ((𝐼 ∖ {𝑋}) mPoly 𝑅) & ⊢ 𝑄 = (Poly1‘𝑈) & ⊢ 𝐻 = (𝑓 ∈ 𝐵 ↦ (𝑛 ∈ (ℕ0 ↑m 1o) ↦ ((((𝐼 selectVars 𝑅)‘{𝑋})‘𝑓)‘{〈𝑋, (𝑛‘∅)〉}))) & ⊢ (𝜑 → 𝐼 ∈ 𝑉) & ⊢ (𝜑 → 𝑋 ∈ 𝐼) & ⊢ (𝜑 → 𝑅 ∈ CRing) ⇒ ⊢ (𝜑 → (𝐻‘(1r‘𝑃)) = (1r‘𝑄)) | ||
| 4-May-2026 | selvply1rhmlem1 33941 | Lemma for selvply1rhm 33946. (Contributed by Thierry Arnoux, 4-May-2026.) |
| ⊢ 𝐵 = (Base‘𝑃) & ⊢ 𝑃 = (𝐼 mPoly 𝑅) & ⊢ 𝑈 = ((𝐼 ∖ {𝑋}) mPoly 𝑅) & ⊢ 𝑄 = (Poly1‘𝑈) & ⊢ 𝐻 = (𝑓 ∈ 𝐵 ↦ (𝑛 ∈ (ℕ0 ↑m 1o) ↦ ((((𝐼 selectVars 𝑅)‘{𝑋})‘𝑓)‘{〈𝑋, (𝑛‘∅)〉}))) & ⊢ (𝜑 → 𝐼 ∈ 𝑉) & ⊢ (𝜑 → 𝑋 ∈ 𝐼) & ⊢ (𝜑 → 𝑅 ∈ CRing) ⇒ ⊢ (𝜑 → 𝐻:𝐵⟶(Base‘𝑄)) | ||
| 4-May-2026 | selvply1rhmlemb 33940 | Lemma for selvply1rhm 33946. (Contributed by Thierry Arnoux, 4-May-2026.) |
| ⊢ 𝐵 = (Base‘𝑃) & ⊢ 𝑃 = ({𝑋} mPoly 𝑅) & ⊢ · = (.r‘𝑃) & ⊢ × = (.r‘𝑄) & ⊢ 𝑄 = (Poly1‘𝑅) & ⊢ 𝑀 = (𝑓 ∈ 𝐵 ↦ (𝑛 ∈ (ℕ0 ↑m 1o) ↦ (𝑓‘{〈𝑋, (𝑛‘∅)〉}))) & ⊢ (𝜑 → 𝑋 ∈ 𝑉) & ⊢ (𝜑 → 𝑅 ∈ Ring) & ⊢ (𝜑 → 𝐹 ∈ 𝐵) & ⊢ (𝜑 → 𝐺 ∈ 𝐵) ⇒ ⊢ (𝜑 → (𝑀‘(𝐹 · 𝐺)) = ((𝑀‘𝐹) × (𝑀‘𝐺))) | ||
| 4-May-2026 | selvply1rhmlema 33939 | Lemma for selvply1rhm 33946. (Contributed by Thierry Arnoux, 4-May-2026.) |
| ⊢ 𝐵 = (Base‘𝑃) & ⊢ 𝑃 = ({𝑋} mPoly 𝑅) & ⊢ · = (.r‘𝑃) & ⊢ × = (.r‘𝑄) & ⊢ 𝑄 = (Poly1‘𝑅) & ⊢ 𝑀 = (𝑓 ∈ 𝐵 ↦ (𝑛 ∈ (ℕ0 ↑m 1o) ↦ (𝑓‘{〈𝑋, (𝑛‘∅)〉}))) & ⊢ (𝜑 → 𝑋 ∈ 𝑉) & ⊢ (𝜑 → 𝑅 ∈ Ring) & ⊢ (𝜑 → 𝐹 ∈ 𝐵) ⇒ ⊢ (𝜑 → (𝑀‘𝐹) ∈ (Base‘𝑄)) | ||
| 4-May-2026 | selvascl 33938 | The "variable selection" function evaluated at a scalar. (Contributed by Thierry Arnoux, 4-May-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ 𝑃 = (𝐼 mPoly 𝑅) & ⊢ 𝐴 = (algSc‘𝑃) & ⊢ 𝐶 = (algSc‘𝑇) & ⊢ (𝜑 → 𝐼 ∈ 𝑉) & ⊢ (𝜑 → 𝑋 ∈ 𝐵) & ⊢ 𝑈 = ((𝐼 ∖ 𝐽) mPoly 𝑅) & ⊢ 𝑇 = (𝐽 mPoly 𝑈) & ⊢ 𝐷 = (𝐶 ∘ (algSc‘𝑈)) & ⊢ (𝜑 → 𝑅 ∈ CRing) & ⊢ (𝜑 → 𝐽 ⊆ 𝐼) ⇒ ⊢ (𝜑 → (((𝐼 selectVars 𝑅)‘𝐽)‘(𝐴‘𝑋)) = (𝐷‘𝑋)) | ||
| 4-May-2026 | mplasclco 33937 | Case where composing an algebra scalar lifting functions with a scalar leads to a scalar. This is useful when working with selectVars. (Contributed by Thierry Arnoux, 4-May-2026.) |
| ⊢ 𝑆 = (Base‘𝑅) & ⊢ 𝑂 = (𝐽 mPoly 𝑅) & ⊢ 𝑃 = (𝐼 mPoly 𝑅) & ⊢ 𝑄 = (𝐼 mPoly 𝑂) & ⊢ 𝐴 = (algSc‘𝑂) & ⊢ 𝐵 = (algSc‘𝑃) & ⊢ 𝐶 = (algSc‘𝑄) & ⊢ 𝐷 = {ℎ ∈ (ℕ0 ↑m 𝐼) ∣ (◡ℎ “ ℕ) ∈ Fin} & ⊢ 𝐸 = {𝑗 ∈ (ℕ0 ↑m 𝐽) ∣ (◡𝑗 “ ℕ) ∈ Fin} & ⊢ (𝜑 → 𝐼 ∈ 𝑉) & ⊢ (𝜑 → 𝐽 ⊆ 𝐼) & ⊢ (𝜑 → 𝑅 ∈ CRing) & ⊢ (𝜑 → 𝑋 ∈ 𝑆) ⇒ ⊢ (𝜑 → (𝐴 ∘ (𝐵‘𝑋)) = (𝐶‘(𝐴‘𝑋))) | ||
| 4-May-2026 | 0mplric 33936 | Multivariate polynomials with no variables are isomorphic with the underlying ring. (Contributed by Thierry Arnoux, 4-May-2026.) |
| ⊢ 𝐵 = (Base‘𝑃) & ⊢ 𝑃 = (∅ mPoly 𝑅) & ⊢ (𝜑 → 𝑅 ∈ Ring) ⇒ ⊢ (𝜑 → 𝑃 ≃𝑟 𝑅) | ||
| 4-May-2026 | 0mplrim 33935 | Build a ring isomorphism between multivariate polynomials with no variables and the underlying ring. (Contributed by Thierry Arnoux, 4-May-2026.) |
| ⊢ 𝐵 = (Base‘𝑃) & ⊢ 𝑃 = (∅ mPoly 𝑅) & ⊢ (𝜑 → 𝑅 ∈ Ring) & ⊢ 𝐹 = (𝑝 ∈ 𝐵 ↦ (𝑝‘∅)) ⇒ ⊢ (𝜑 → 𝐹 ∈ (𝑃 RingIso 𝑅)) | ||
| 4-May-2026 | mplnzr 33934 | The multivariate polynomials over a nonzero ring form a nonzero ring. (Contributed by Thierry Arnoux, 4-May-2026.) |
| ⊢ 𝑃 = (𝐼 mPoly 𝑅) & ⊢ (𝜑 → 𝐼 ∈ 𝑉) & ⊢ (𝜑 → 𝑅 ∈ NzRing) ⇒ ⊢ (𝜑 → 𝑃 ∈ NzRing) | ||
| 4-May-2026 | psrnzr 33933 | The ring of power series over a nonzero ring form a nonzero ring. (Contributed by Thierry Arnoux, 4-May-2026.) |
| ⊢ 𝑆 = (𝐼 mPwSer 𝑅) & ⊢ (𝜑 → 𝐼 ∈ 𝑉) & ⊢ (𝜑 → 𝑅 ∈ NzRing) ⇒ ⊢ (𝜑 → 𝑆 ∈ NzRing) | ||
| 4-May-2026 | ricdomn 33641 | A ring is a domain if and only if an isomorphic ring is a domain. (Contributed by Thierry Arnoux, 4-May-2026.) |
| ⊢ (𝑅 ≃𝑟 𝑆 → (𝑅 ∈ Domn ↔ 𝑆 ∈ Domn)) | ||
| 4-May-2026 | ricdomn1 33640 | A ring isomorphism maps a domain to a domain. (Contributed by Thierry Arnoux, 4-May-2026.) |
| ⊢ ((𝑅 ≃𝑟 𝑆 ∧ 𝑅 ∈ Domn) → 𝑆 ∈ Domn) | ||
| 4-May-2026 | ricnzr1 33639 | A ring isomorphism maps a nonzero ring to a nonzero ring. (Contributed by Thierry Arnoux, 4-May-2026.) |
| ⊢ ((𝑅 ≃𝑟 𝑆 ∧ 𝑅 ∈ NzRing) → 𝑆 ∈ NzRing) | ||
| 4-May-2026 | grpidcld 33390 | The identity element of a group belongs to the group. (Contributed by Thierry Arnoux, 4-May-2026.) |
| ⊢ 𝐵 = (Base‘𝐺) & ⊢ 0 = (0g‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ Grp) ⇒ ⊢ (𝜑 → 0 ∈ 𝐵) | ||
| 4-May-2026 | ififcom 32933 | Commute two nested conditionals. (Contributed by Thierry Arnoux, 4-May-2026.) |
| ⊢ if(𝜑, if(𝜓, 𝐴, 𝐵), 𝐵) = if(𝜓, if(𝜑, 𝐴, 𝐵), 𝐵) | ||
| 2-May-2026 | copsexgw 5477 | Version of copsexg 5479 with a disjoint variable condition, which does not require ax-13 2407. (Contributed by GG, 26-Jan-2024.) Shorten proof and remove dependency on ax-10 2179. (Revised by Eric Schmidt, 2-May-2026.) |
| ⊢ (𝐴 = 〈𝑥, 𝑦〉 → (𝜑 ↔ ∃𝑥∃𝑦(𝐴 = 〈𝑥, 𝑦〉 ∧ 𝜑))) | ||
| 1-May-2026 | vprc 5288 | The universal class is not a member of itself (and thus is not a set). Proposition 5.21 of [TakeutiZaring] p. 21; our proof, however, does not depend on the Axiom of Regularity. (Contributed by NM, 23-Aug-1993.) (Proof shortened by BJ, 1-May-2026.) |
| ⊢ ¬ V ∈ V | ||
| 1-May-2026 | nvel 5287 | The universal class does not belong to any class. (Contributed by FL, 31-Dec-2006.) Prove it without using vprc 5288, which is then proved as an instance of it. (Revised by BJ, 1-May-2026.) |
| ⊢ ¬ V ∈ 𝐴 | ||
| 27-Apr-2026 | qdiffALT 38013 | Alternate proof of qdiff 38012. This is a proof from irrdiff 38011 using excluded middle in a variety of places. (Contributed by Jim Kingdon, 27-Apr-2026.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ (𝐴 ∈ ℝ → (𝐴 ∈ ℚ ↔ ∃𝑞 ∈ ℚ ∃𝑟 ∈ ℚ (𝑞 ≠ 𝑟 ∧ (abs‘(𝐴 − 𝑞)) = (abs‘(𝐴 − 𝑟))))) | ||
| 25-Apr-2026 | unidif0 5335 | The removal of the empty set from a class does not affect its union. (Contributed by NM, 22-Mar-2004.) (Proof shortened by Eric Schmidt, 25-Apr-2026.) |
| ⊢ ∪ (𝐴 ∖ {∅}) = ∪ 𝐴 | ||
| 25-Apr-2026 | vnex 5285 | The universal class does not exist as a set. (Contributed by NM, 4-Jul-2005.) (Proof shortened by BJ, 25-Apr-2026.) |
| ⊢ ¬ ∃𝑥 𝑥 = V | ||
| 25-Apr-2026 | vneqv 5284 | The universal class is not equal to any setvar. (Contributed by NM, 4-Jul-2005.) Extract from vnex 5285 and shorten proof. (Revised by BJ, 25-Apr-2026.) |
| ⊢ ¬ 𝑥 = V | ||
| 24-Apr-2026 | qdiff 38012 | The rationals are exactly those reals for which there exist two distinct rationals that are the same distance from the original number. Similar to irrdiff 38011 but here proved with a proof which would also work in constructive mathematics. From an online post by Ingo Blechschmidt. For a proof using irrdiff 38011, see qdiffALT 38013. (Contributed by Jim Kingdon, 24-Apr-2026.) |
| ⊢ (𝐴 ∈ ℝ → (𝐴 ∈ ℚ ↔ ∃𝑞 ∈ ℚ ∃𝑟 ∈ ℚ (𝑞 ≠ 𝑟 ∧ (abs‘(𝐴 − 𝑞)) = (abs‘(𝐴 − 𝑟))))) | ||
| 22-Apr-2026 | sucprcreg 9578 | A class is equal to its successor iff it is a proper class (assuming the Axiom of Regularity). (Contributed by NM, 9-Jul-2004.) (Proof shortened by BJ, 16-Apr-2019.) (Proof shortened by SN, 22-Apr-2026.) |
| ⊢ (¬ 𝐴 ∈ V ↔ suc 𝐴 = 𝐴) | ||
| 22-Apr-2026 | nelaneq 9574 | A class is not an element of and equal to a class at the same time. Variant of elneq 9573 analogously to elnotel 9589 and en2lp 9585. (Proposed by BJ, 18-Jun-2022.) (Contributed by AV, 18-Jun-2022.) (Proof shortened by TM, 31-Dec-2025.) (Proof shortened by SN, 22-Apr-2026.) |
| ⊢ ¬ (𝐴 ∈ 𝐵 ∧ 𝐴 = 𝐵) | ||
| 20-Apr-2026 | cos5t 47657 | Five-times-angle formula for cosine, in pure cosine form. (Contributed by Ender Ting, 20-Apr-2026.) |
| ⊢ (𝐴 ∈ ℂ → (cos‘(5 · 𝐴)) = (((;16 · ((cos‘𝐴)↑5)) − (;20 · ((cos‘𝐴)↑3))) + (5 · (cos‘𝐴)))) | ||
| 19-Apr-2026 | trun 5234 | The union of transitive classes is transitive. (Contributed by Eric Schmidt, 19-Apr-2026.) |
| ⊢ ((Tr 𝐴 ∧ Tr 𝐵) → Tr (𝐴 ∪ 𝐵)) | ||
| 17-Apr-2026 | sin5t 47656 | Five-times-angle formula for sine, in pure sine form. (Contributed by Ender Ting, 17-Apr-2026.) |
| ⊢ (𝐴 ∈ ℂ → (sin‘(5 · 𝐴)) = (((;16 · ((sin‘𝐴)↑5)) − (;20 · ((sin‘𝐴)↑3))) + (5 · (sin‘𝐴)))) | ||
| 17-Apr-2026 | sin5tlem5 47655 | Lemma 5 for quintupled angle sine calculation: sine of triple-angle and double-angle sum, as a polynomial in sine straight. (Contributed by Ender Ting, 17-Apr-2026.) |
| ⊢ ((𝑁 ∈ ℂ ∧ 𝑀 ∈ ℂ ∧ (𝑁↑2) = (1 − (𝑀↑2))) → ((((3 · 𝑀) − (4 · (𝑀↑3))) · (1 − (2 · (𝑀↑2)))) + (((4 · (𝑁↑3)) − (3 · 𝑁)) · (2 · (𝑀 · 𝑁)))) = (((;16 · (𝑀↑5)) − (;20 · (𝑀↑3))) + (5 · 𝑀))) | ||
| 17-Apr-2026 | sin5tlem4 47654 | Lemma 4 for quintupled angle sine calculation: expanding lemma 3 result to difference of polynomials. (Contributed by Ender Ting, 17-Apr-2026.) |
| ⊢ ((𝑁 ∈ ℂ ∧ 𝑀 ∈ ℂ ∧ (𝑁↑2) = (1 − (𝑀↑2))) → (((4 · (𝑁↑3)) − (3 · 𝑁)) · (2 · (𝑀 · 𝑁))) = ((((8 · (𝑀↑5)) − (;16 · (𝑀↑3))) + (8 · 𝑀)) − ((6 · 𝑀) − (6 · (𝑀↑3))))) | ||
| 16-Apr-2026 | goldrarp 47662 | The golden ratio is a positive real. (Contributed by Ender Ting, 16-Apr-2026.) |
| ⊢ 𝐹 = (2 · (cos‘(π / 5))) ⇒ ⊢ 𝐹 ∈ ℝ+ | ||
| 16-Apr-2026 | goldrapos 47661 | Golden ratio is positive. (Contributed by Ender Ting, 16-Apr-2026.) |
| ⊢ 𝐹 = (2 · (cos‘(π / 5))) ⇒ ⊢ 0 < 𝐹 | ||
| 16-Apr-2026 | sin5tlem3 47653 | Lemma 3 for quintupled angle sine calculation, multiplicating triple angle cosine by double angle sine. (Contributed by Ender Ting, 16-Apr-2026.) |
| ⊢ ((𝑁 ∈ ℂ ∧ 𝑀 ∈ ℂ ∧ (𝑁↑2) = (1 − (𝑀↑2))) → (((4 · (𝑁↑3)) − (3 · 𝑁)) · (2 · (𝑀 · 𝑁))) = (((4 · ((1 − (2 · (𝑀↑2))) + (𝑀↑4))) − (3 · (1 − (𝑀↑2)))) · (2 · 𝑀))) | ||
| 16-Apr-2026 | sin5tlem2 47652 | Lemma 2 for quintupled angle sine calculation, multiplicating triple angle cosine by cosine straight and converting into sine. (Contributed by Ender Ting, 16-Apr-2026.) |
| ⊢ ((𝑁 ∈ ℂ ∧ 𝑀 ∈ ℂ ∧ (𝑁↑2) = (1 − (𝑀↑2))) → (((4 · (𝑁↑3)) − (3 · 𝑁)) · 𝑁) = ((4 · ((1 − (2 · (𝑀↑2))) + (𝑀↑4))) − (3 · (1 − (𝑀↑2))))) | ||
| 13-Apr-2026 | wl-dfclel 38202 | The defining characterization of class membership. Unlike the forms on which it is based, it is unrestricted. Proven in Tarski's FOL, from the axiom of (set) extensionality (ax-ext 2738), the definitions df-clel 2841 and df-cleq . (Contributed by BJ, 27-Jun-2019.) Base on wl-dfclel.just 38200. (Revised by Wolf Lammen, 13-Apr-2026.) |
| ⊢ (𝐴 ∈ 𝐵 ↔ ∃𝑥(𝑥 = 𝐴 ∧ 𝑥 ∈ 𝐵)) | ||
| 13-Apr-2026 | mh-infprim3bi 37100 | An axiom of infinity in primitive symbols not requiring ax-reg 9564. This version of the axiom was designed by Stefan O'Rear for his zf2.nql program, see https://github.com/sorear/metamath-turing-machines 9564. It directly implies ax-inf 9617, but deriving ax-inf2 9620 requires ax-ext 2738 and ax-rep 5243, see mh-inf3sn 37094. (Contributed by Matthew House, 13-Apr-2026.) |
| ⊢ (∃𝑦(𝑥 ∈ 𝑦 ∧ ∀𝑧 ∈ 𝑦 {𝑧} ∈ 𝑦) ↔ ¬ ∀𝑦 ¬ ¬ (𝑥 ∈ 𝑦 → ¬ ∀𝑥(𝑥 ∈ 𝑦 → ¬ ∀𝑧 ¬ ¬ (𝑧 ∈ 𝑦 → ¬ ∀𝑦 ¬ ((𝑦 ∈ 𝑧 → 𝑦 = 𝑥) → ¬ (𝑦 = 𝑥 → 𝑦 ∈ 𝑧)))))) | ||
| 13-Apr-2026 | mh-infprim2bi 37099 | Shortest possible axiom of infinity in primitive symbols not requiring ax-reg 9564. Deriving ax-inf 9617 or ax-inf2 9620 from this axiom requires ax-ext 2738 and ax-rep 5243, see mh-inf3sn 37094 and inf0 9600. (Contributed by Matthew House, 13-Apr-2026.) |
| ⊢ (∃𝑥(∅ ∈ 𝑥 ∧ ∀𝑦 ∈ 𝑥 {𝑦} ∈ 𝑥) ↔ ¬ ∀𝑥 ¬ ∀𝑦∀𝑧(∀𝑤(𝑤 ∈ 𝑦 → ¬ (𝑤 ∈ 𝑥 → ¬ 𝑤 = 𝑧)) → 𝑦 ∈ 𝑥)) | ||
| 13-Apr-2026 | mh-infprim1bi 37098 | Shortest possible axiom of infinity in primitive symbols. Deriving ax-inf 9617 or ax-inf2 9620 from this axiom requires ax-ext 2738, ax-rep 5243, and ax-reg 9564, see inf3 9614 and inf0 9600. (Contributed by Matthew House, 13-Apr-2026.) |
| ⊢ (∃𝑥(𝑥 ≠ ∅ ∧ 𝑥 ⊆ ∪ 𝑥) ↔ ¬ ∀𝑥 ¬ ∀𝑦 ¬ ∀𝑧((𝑦 ∈ 𝑥 → 𝑦 ∈ 𝑧) → ¬ 𝑧 ∈ 𝑥)) | ||
| 13-Apr-2026 | mh-regprimbi 37097 | Shortest possible version of ax-reg 9564 in primitive symbols. The equivalence is nontrivial, but it still follows solely from the axioms of predicate calculus. (Contributed by Matthew House, 13-Apr-2026.) |
| ⊢ ((∃𝑦 𝑦 ∈ 𝑥 → ∃𝑦(𝑦 ∈ 𝑥 ∧ ∀𝑧(𝑧 ∈ 𝑦 → ¬ 𝑧 ∈ 𝑥))) ↔ ¬ ∀𝑦 ¬ ∀𝑧((𝑦 ∈ 𝑥 → 𝑧 ∈ 𝑦) → ¬ 𝑧 ∈ 𝑥)) | ||
| 13-Apr-2026 | mh-unprimbi 37096 | Shortest possible version of ax-un 7745 in primitive symbols. (Contributed by Matthew House, 13-Apr-2026.) |
| ⊢ (∃𝑦∀𝑧(∃𝑤(𝑧 ∈ 𝑤 ∧ 𝑤 ∈ 𝑥) → 𝑧 ∈ 𝑦) ↔ ¬ ∀𝑦 ¬ ∀𝑧(𝑧 ∈ 𝑥 → ∀𝑤(𝑤 ∈ 𝑧 → 𝑤 ∈ 𝑦))) | ||
| 13-Apr-2026 | mh-prprimbi 37095 | Shortest possible version of ax-pr 5409 in primitive symbols. (Contributed by Matthew House, 13-Apr-2026.) |
| ⊢ (∃𝑧∀𝑤((𝑤 = 𝑥 ∨ 𝑤 = 𝑦) → 𝑤 ∈ 𝑧) ↔ ¬ ∀𝑧(𝑥 ∈ 𝑧 → ¬ 𝑦 ∈ 𝑧)) | ||
| 13-Apr-2026 | mh-inf3sn 37094 | Version of inf3 9614 for the set of Zermelo ordinals ∅, {∅}, {{∅}}, {{{∅}}}, etc., where the successor of 𝑦 is {𝑦}. Unlike inf3 9614, the proof does not require ax-reg 9564, since the singleton properties snnz 4747 and sneqr 4810 are sufficient to guarantee that all elements of the sequence are distinct. (Contributed by Matthew House, 13-Apr-2026.) |
| ⊢ ∃𝑥(∅ ∈ 𝑥 ∧ ∀𝑦 ∈ 𝑥 {𝑦} ∈ 𝑥) ⇒ ⊢ ω ∈ V | ||
| 13-Apr-2026 | mh-inf3f1 37093 | A variant of inf3 9614. If 𝐹 is a one-to-one function from 𝐴 into itself, and there exists an element 𝐵 not in its range, then (rec(𝐹, 𝐵) ↾ ω) is an infinite sequence of distinct elements from 𝐴. If 𝐴 is a set, we can use this theorem to prove ω ∈ V via f1dmex 7963. (Contributed by Matthew House, 13-Apr-2026.) |
| ⊢ (𝜑 → 𝐹:𝐴–1-1→𝐴) & ⊢ (𝜑 → 𝐵 ∈ (𝐴 ∖ ran 𝐹)) ⇒ ⊢ (𝜑 → (rec(𝐹, 𝐵) ↾ ω):ω–1-1→𝐴) | ||
| 12-Apr-2026 | nalset 5282 | No set contains all sets. Theorem 41 of [Suppes] p. 30. (Contributed by NM, 23-Aug-1993.) Extract exnelv 5281. (Revised by Matthew House, 12-Apr-2026.) |
| ⊢ ¬ ∃𝑥∀𝑦 𝑦 ∈ 𝑥 | ||
| 12-Apr-2026 | exnelv 5281 | For any set 𝑥, there is a set not contained in 𝑥. The proof is based on Russell's paradox. (Contributed by NM, 23-Aug-1993.) Remove use of ax-12 2216 and ax-13 2407. (Revised by BJ, 31-May-2019.) Extract from nalset 5282. (Revised by Matthew House, 12-Apr-2026.) |
| ⊢ ∃𝑦 ¬ 𝑦 ∈ 𝑥 | ||
| 11-Apr-2026 | indsum 15906 | Finite sum of a product with the indicator function / Cartesian product with the indicator function. Note: this theorem cannot be efficiently shortened using sumss2 15803, unless there are some additional auxiliary theorems like (if(𝑥 ∈ 𝐴, 1, 0) · 𝐵) = if(𝑥 ∈ 𝐴, 𝐵, 0). (Contributed by Thierry Arnoux, 14-Aug-2017.) (Proof shortened by AV, 11-Apr-2026.) |
| ⊢ (𝜑 → 𝑂 ∈ Fin) & ⊢ (𝜑 → 𝐴 ⊆ 𝑂) & ⊢ ((𝜑 ∧ 𝑥 ∈ 𝑂) → 𝐵 ∈ ℂ) ⇒ ⊢ (𝜑 → Σ𝑥 ∈ 𝑂 ((((𝟭‘𝑂)‘𝐴)‘𝑥) · 𝐵) = Σ𝑥 ∈ 𝐴 𝐵) | ||
| 11-Apr-2026 | indval0 12240 | The indicator function generator does not generate a (meaningful) indicator function for a class which is not a subset of the domain. (Contributed by AV, 11-Apr-2026.) |
| ⊢ (¬ 𝐴 ⊆ 𝑂 → ((𝟭‘𝑂)‘𝐴) = ∅) | ||
| 10-Apr-2026 | ppivalnn 48425 | Value of the prime-counting function pi for positive integers, according to Ján Mináč, see statement in [Ribenboim], p. 181. (Contributed by AV, 10-Apr-2026.) |
| ⊢ (𝑁 ∈ ℕ → (π‘𝑁) = Σ𝑘 ∈ (2...𝑁)(⌊‘((((!‘(𝑘 − 1)) + 1) / 𝑘) − (⌊‘((!‘(𝑘 − 1)) / 𝑘))))) | ||
| 10-Apr-2026 | ppivalnnprm 48418 | Value of a term of the prime-counting function pi for positive integers, according to Ján Mináč, for a prime number. (Contributed by AV, 10-Apr-2026.) |
| ⊢ (𝑃 ∈ ℙ → (⌊‘((((!‘(𝑃 − 1)) + 1) / 𝑃) − (⌊‘((!‘(𝑃 − 1)) / 𝑃)))) = 1) | ||
| 10-Apr-2026 | flmrecm1 48121 | The floor of an integer minus the reciprocal of a positive integer is the integer minus 1. (Contributed by AV, 10-Apr-2026.) |
| ⊢ ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℕ) → (⌊‘(𝑀 − (1 / 𝑁))) = (𝑀 − 1)) | ||
| 10-Apr-2026 | nnge2recfl0 48120 | The floor of the reciprocal of an integer greater than 1 is 0. (Contributed by AV, 10-Apr-2026.) |
| ⊢ (𝑁 ∈ (ℤ≥‘2) → (⌊‘(1 / 𝑁)) = 0) | ||
| 10-Apr-2026 | prmssuz2 16780 | The primes are integers greater than 1. (Contributed by AV, 10-Apr-2026.) |
| ⊢ ℙ ⊆ (ℤ≥‘2) | ||
| 10-Apr-2026 | indsumhash 15907 | The finite sum of the indicator function is the number of elements of the corresponding subset. (Contributed by AV, 10-Apr-2026.) |
| ⊢ 1 = ((𝟭‘𝑂)‘𝐴) ⇒ ⊢ ((𝑂 ∈ Fin ∧ 𝐴 ⊆ 𝑂) → Σ𝑘 ∈ 𝑂 ( 1 ‘𝑘) = (♯‘𝐴)) | ||
| 10-Apr-2026 | fsumconst1 15868 | The sum of 1 over a finite set equals the size of the set. (Contributed by AV, 10-Apr-2026.) |
| ⊢ (𝐴 ∈ Fin → Σ𝑘 ∈ 𝐴 1 = (♯‘𝐴)) | ||
| 10-Apr-2026 | nnge2recico01 13552 | The reciprocal of an integer greater than 1 is in the right open interval between 0 and 1. (Contributed by AV, 10-Apr-2026.) |
| ⊢ (𝑁 ∈ (ℤ≥‘2) → (1 / 𝑁) ∈ (0[,)1)) | ||
| 10-Apr-2026 | fvindre 12244 | The range of the indicator function is a subset of ℝ. (Contributed by AV, 10-Apr-2026.) |
| ⊢ (((𝑂 ∈ Fin ∧ 𝐴 ⊆ 𝑂) ∧ 𝑋 ∈ 𝑂) → (((𝟭‘𝑂)‘𝐴)‘𝑋) ∈ ℝ) | ||
| 9-Apr-2026 | rediv11d 43265 | One-to-one relationship for division. (Contributed by SN, 9-Apr-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ ℝ) & ⊢ (𝜑 → 𝐵 ∈ ℝ) & ⊢ (𝜑 → 𝐶 ∈ ℝ) & ⊢ (𝜑 → 𝐶 ≠ 0) ⇒ ⊢ (𝜑 → ((𝐴 /ℝ 𝐶) = (𝐵 /ℝ 𝐶) ↔ 𝐴 = 𝐵)) | ||
| 9-Apr-2026 | redivdird 43264 | Distribution of division over addition. (Contributed by SN, 9-Apr-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ ℝ) & ⊢ (𝜑 → 𝐵 ∈ ℝ) & ⊢ (𝜑 → 𝐶 ∈ ℝ) & ⊢ (𝜑 → 𝐶 ≠ 0) ⇒ ⊢ (𝜑 → ((𝐴 + 𝐵) /ℝ 𝐶) = ((𝐴 /ℝ 𝐶) + (𝐵 /ℝ 𝐶))) | ||
| 9-Apr-2026 | rediv23d 43263 | A "commutative"/associative law for division. (Contributed by SN, 9-Apr-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ ℝ) & ⊢ (𝜑 → 𝐵 ∈ ℝ) & ⊢ (𝜑 → 𝐶 ∈ ℝ) & ⊢ (𝜑 → 𝐶 ≠ 0) ⇒ ⊢ (𝜑 → ((𝐴 · 𝐵) /ℝ 𝐶) = ((𝐴 /ℝ 𝐶) · 𝐵)) | ||
| 9-Apr-2026 | redivrec2d 43262 | Relationship between division and reciprocal. (Contributed by SN, 9-Apr-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ ℝ) & ⊢ (𝜑 → 𝐵 ∈ ℝ) & ⊢ (𝜑 → 𝐵 ≠ 0) ⇒ ⊢ (𝜑 → (𝐴 /ℝ 𝐵) = ((1 /ℝ 𝐵) · 𝐴)) | ||
| 8-Apr-2026 | ppivalnnnprm 48421 | Value of a term of the prime-counting function pi for positive integers, according to Ján Miná&ccaron, for a non-prime number greater than 1. (Contributed by AV, 8-Apr-2026.) |
| ⊢ ((𝑁 ∈ (ℤ≥‘2) ∧ 𝑁 ∉ ℙ) → (⌊‘((((!‘(𝑁 − 1)) + 1) / 𝑁) − (⌊‘((!‘(𝑁 − 1)) / 𝑁)))) = 0) | ||
| 8-Apr-2026 | ppivalnn4 48420 | Value of the term of the prime-counting function pi for positive integers, according to Ján Mináč, for 4. (Contributed by AV, 8-Apr-2026.) |
| ⊢ (⌊‘((((!‘(4 − 1)) + 1) / 4) − (⌊‘((!‘(4 − 1)) / 4)))) = 0 | ||
| 7-Apr-2026 | nprmdvdsfacm1 48417 | A non-prime integer greater than 5 divides the factorial of the integer decreased by 1 (see remark in [Ribenboim] p. 181). Note: not valid for 𝑁 = 4, but for 𝑁 = 1! (Contributed by AV, 7-Apr-2026.) |
| ⊢ ((𝑁 ∈ (ℤ≥‘6) ∧ 𝑁 ∉ ℙ) → 𝑁 ∥ (!‘(𝑁 − 1))) | ||
| 7-Apr-2026 | nprmdvdsfacm1lem4 48416 | Lemma 4 for nprmdvdsfacm1 48417. (Contributed by AV, 7-Apr-2026.) |
| ⊢ ((𝑁 ∈ (ℤ≥‘6) ∧ 𝐴 ∈ (2..^𝑁) ∧ 𝑁 = (𝐴↑2)) → 𝑁 ∥ (!‘(𝑁 − 1))) | ||
| 7-Apr-2026 | nprmdvdsfacm1lem3 48415 | Lemma 3 for nprmdvdsfacm1 48417. (Contributed by AV, 7-Apr-2026.) |
| ⊢ ((𝑁 ∈ (ℤ≥‘6) ∧ 𝐴 ∈ (2..^𝑁) ∧ 𝑁 = (𝐴↑2)) → (2 · 𝐴) < (𝑁 − 1)) | ||
| 7-Apr-2026 | nprmdvdsfacm1lem2 48414 | Lemma 2 for nprmdvdsfacm1 48417. (Contributed by AV, 7-Apr-2026.) |
| ⊢ ((𝑁 ∈ (ℤ≥‘6) ∧ 𝐴 ∈ (2..^𝑁) ∧ 𝑁 = (𝐴↑2)) → 3 ≤ 𝐴) | ||
| 7-Apr-2026 | nprmdvdsfacm1lem1 48413 | Lemma 1 for nprmdvdsfacm1 48417. (Contributed by AV, 7-Apr-2026.) |
| ⊢ ((𝑁 ∈ (ℤ≥‘6) ∧ 𝐴 ∈ (2..^𝑁) ∧ 𝑁 = (𝐴↑2)) → 𝑁 ∥ (𝐴 · (2 · 𝐴))) | ||
| 7-Apr-2026 | 2timesltsqm1 48157 | Two times an integer greater than 2 is less than the square of the integer minus 1. (Contributed by AV, 7-Apr-2026.) |
| ⊢ (𝐴 ∈ (ℤ≥‘3) → (2 · 𝐴) < ((𝐴↑2) − 1)) | ||
| 7-Apr-2026 | wl-dfcleq 38201 |
The defining characterization of class equality. This version of
df-cleq 2758 has no restrictions, unlike the forms on
which it is based.
It is proved in Tarski's FOL from the axiom of extensionality
(ax-ext 2738), the definition of class equality (df-cleq 2758), and the
definition of class membership (df-clel 2841).
Its forward implication is known as "class extensionality". (Contributed by NM, 15-Sep-1993.) (Revised by BJ, 24-Jun-2019.) Base on wl-dfcleq.just 38197. (Revised by Wolf Lammen, 7-Apr-2026.) |
| ⊢ (𝐴 = 𝐵 ↔ ∀𝑥(𝑥 ∈ 𝐴 ↔ 𝑥 ∈ 𝐵)) | ||
| 7-Apr-2026 | wl-dfclel.just 38200 | Add a hypothesis to wl-dfclel.basic 38199, that permits alpha-renaming. (Contributed by Wolf Lammen, 7-Apr-2026.) |
| ⊢ (∃𝑥(𝑥 = 𝐴 ∧ 𝑥 ∈ 𝐵) ↔ ∃𝑦(𝑦 = 𝐴 ∧ 𝑦 ∈ 𝐵)) ⇒ ⊢ (𝐴 ∈ 𝐵 ↔ ∃𝑥(𝑥 = 𝐴 ∧ 𝑥 ∈ 𝐵)) | ||
| 7-Apr-2026 | wl-dfcleq.just 38197 |
The hypotheses added to this version of df-cleq 2758 address the following:
1. Equality of classes is an equivalence relation, as expected of equality. 2. Equality of classes obeys the Law of Indiscernibles (Leibniz's Law), and is compatible with class membership. 3. Alpha-renaming is explicitly permitted. (Contributed by Wolf Lammen, 7-Apr-2026.) |
| ⊢ (∀𝑥(𝑥 ∈ 𝐴 ↔ 𝑥 ∈ 𝐵) ↔ ∀𝑦(𝑦 ∈ 𝐴 ↔ 𝑦 ∈ 𝐵)) & ⊢ 𝐴 = 𝐴 & ⊢ (𝐴 = 𝐵 → (𝐵 = 𝐶 → 𝐶 = 𝐴)) & ⊢ (𝐴 = 𝐵 → (𝐴 ∈ 𝐶 → 𝐵 ∈ 𝐶)) & ⊢ (𝐴 = 𝐵 → (𝐶 ∈ 𝐴 → 𝐶 ∈ 𝐵)) ⇒ ⊢ (𝐴 = 𝐵 ↔ ∀𝑥(𝑥 ∈ 𝐴 ↔ 𝑥 ∈ 𝐵)) | ||
| 7-Apr-2026 | elALTtco 37033 | Derivation of el 5424 from ax-tco 37024. Use el 5424 instead. (Contributed by Matthew House, 7-Apr-2026.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ ∃𝑦 𝑥 ∈ 𝑦 | ||
| 7-Apr-2026 | axnulregtco 37032 | Derivation of ax-nul 5274 from ax-reg 9564 and ax-tco 37024. Use ax-nul 5274 instead. (Contributed by Matthew House, 7-Apr-2026.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ ∃𝑥∀𝑦 ¬ 𝑦 ∈ 𝑥 | ||
| 7-Apr-2026 | axtco1 37025 | Strong form of the Axiom of Transitive Containment. See ax-tco 37024 for more information. In particular, this theorem generalizes the statement of ax-tco 37024, allowing it to be written with only three variables, since 𝑥 need not be distinct from both 𝑧 and 𝑤. (Contributed by Matthew House, 7-Apr-2026.) |
| ⊢ ∃𝑦(𝑥 ∈ 𝑦 ∧ ∀𝑧(𝑧 ∈ 𝑦 → ∀𝑤(𝑤 ∈ 𝑧 → 𝑤 ∈ 𝑦))) | ||
| 6-Apr-2026 | nprmmul2 48318 | Special factorization of a non-prime integer greater than 3. (Contributed by AV, 6-Apr-2026.) |
| ⊢ (𝑁 ∈ (ℤ≥‘4) → (𝑁 ∉ ℙ ↔ ∃𝑎 ∈ (2..^𝑁)∃𝑏 ∈ (2..^𝑁)(𝑎 ≤ 𝑏 ∧ 𝑁 = (𝑎 · 𝑏)))) | ||
| 6-Apr-2026 | muldvdsfacm1 48165 | The product of two different positive integers less than a third integer divides the factorial of the third integer decreased by 1. By assumption, the third integer must be greater than 3. (Contributed by AV, 6-Apr-2026.) |
| ⊢ ((𝐴 ∈ (1..^𝐵) ∧ 𝐵 ∈ (1..^𝑁)) → (𝐴 · 𝐵) ∥ (!‘(𝑁 − 1))) | ||
| 6-Apr-2026 | muldvdsfacgt 48164 | The product of two different positive integers divides the factorial of the bigger integer. (Contributed by AV, 6-Apr-2026.) |
| ⊢ (𝐴 ∈ (1..^𝐵) → (𝐴 · 𝐵) ∥ (!‘𝐵)) | ||
| 6-Apr-2026 | facnn0dvdsfac 48163 | The factorial of a nonnegative integer divides the factorial of an integer which is greater than or equal to the first integer. (Contributed by AV, 6-Apr-2026.) |
| ⊢ (𝑀 ∈ (0...𝑁) → (!‘𝑀) ∥ (!‘𝑁)) | ||
| 6-Apr-2026 | 2timesltsq 48156 | Two times an integer greater than 2 is less than the square of the integer. (Contributed by AV, 6-Apr-2026.) |
| ⊢ (𝐴 ∈ (ℤ≥‘3) → (2 · 𝐴) < (𝐴↑2)) | ||
| 6-Apr-2026 | ttc0el 37087 | A transitive closure contains ∅ as an element iff it is nonempty, assuming Regularity and Transitive Containment. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ (𝐴 ≠ ∅ ↔ ∅ ∈ TC+ 𝐴) | ||
| 6-Apr-2026 | dfttc3g 37086 | The transitive closure of a set 𝐴 is (TC‘𝐴), assuming Transitive Containment. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ (𝐴 ∈ 𝑉 → TC+ 𝐴 = (TC‘𝐴)) | ||
| 6-Apr-2026 | ttcexbi 37085 | A class is a set iff its transitive closure is a set, assuming Transitive Containment. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ (𝐴 ∈ V ↔ TC+ 𝐴 ∈ V) | ||
| 6-Apr-2026 | ttcexg 37084 | The transitive closure of a set is a set, assuming Transitive Containment. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ (𝐴 ∈ 𝑉 → TC+ 𝐴 ∈ V) | ||
| 6-Apr-2026 | elttcirr 37083 | Irreflexivity of 𝐴 ∈ TC+ 𝐵 relationship. This is a consequence of Regularity, but it does not require Transitive Containment. We use the alternative expression dfttc4 37082 to construct a set in which 𝐴 is both ∈-minimal and not ∈-minimal. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ ¬ 𝐴 ∈ TC+ 𝐴 | ||
| 6-Apr-2026 | dfttc4 37082 | An alternative expression for the transitive closure of a class, assuming Regularity. A set 𝑥 is contained in the transitive closure of 𝐴 iff we can construct an ∈-chain from 𝑥 to an element of 𝐴. This weak definition is primarily useful for proving elttcirr 37083. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ TC+ 𝐴 = {𝑥 ∣ ∃𝑦((𝐴 ∩ 𝑦) ≠ ∅ ∧ ∀𝑧 ∈ 𝑦 ((𝑧 ∩ 𝑦) = ∅ → 𝑧 = 𝑥))} | ||
| 6-Apr-2026 | dfttc4lem2 37081 | Lemma for dfttc4 37082. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ 𝐵 = {𝑥 ∣ ∃𝑦((𝐴 ∩ 𝑦) ≠ ∅ ∧ ∀𝑧 ∈ 𝑦 ((𝑧 ∩ 𝑦) = ∅ → 𝑧 = 𝑥))} ⇒ ⊢ (𝐴 ⊆ 𝐵 ∧ Tr 𝐵) | ||
| 6-Apr-2026 | dfttc4lem1 37080 | Lemma for dfttc4 37082. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ 𝐵 = {𝑥 ∣ ∃𝑦((𝐴 ∩ 𝑦) ≠ ∅ ∧ ∀𝑧 ∈ 𝑦 ((𝑧 ∩ 𝑦) = ∅ → 𝑧 = 𝑥))} & ⊢ 𝐶 ∈ V & ⊢ 𝐷 ∈ V ⇒ ⊢ (((𝐴 ∩ 𝐶) ≠ ∅ ∧ ∀𝑧 ∈ 𝐶 ((𝑧 ∩ 𝐶) = ∅ → 𝑧 = 𝐷)) → 𝐷 ∈ 𝐵) | ||
| 6-Apr-2026 | ttc0elw 37079 | If a transitive closure is a set, then it contains ∅ as an element iff it is nonempty, assuming Regularity. If we also assume Transitive Containment, then we can remove the TC+ 𝐴 ∈ 𝑉 hypothesis, see ttc0el 37087. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ (TC+ 𝐴 ∈ 𝑉 → (𝐴 ≠ ∅ ↔ ∅ ∈ TC+ 𝐴)) | ||
| 6-Apr-2026 | ttcwf3 37078 | The sets whose transitive closures are sets are precisely the well-founded sets, assuming Regularity. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ (TC+ 𝐴 ∈ V ↔ 𝐴 ∈ ∪ (𝑅1 “ On)) | ||
| 6-Apr-2026 | ttcwf2 37077 | If a transitive closure class is a set, then it is well-founded, assuming Regularity. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ (TC+ 𝐴 ∈ V ↔ TC+ 𝐴 ∈ ∪ (𝑅1 “ On)) | ||
| 6-Apr-2026 | ttcwf 37076 | A set is well-founded iff its transitive closure is well-founded. As a corollary, the transitive closure of any well-founded set is a set. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ (𝐴 ∈ ∪ (𝑅1 “ On) ↔ TC+ 𝐴 ∈ ∪ (𝑅1 “ On)) | ||
| 6-Apr-2026 | dfttc3gw 37075 | If the transitive closure of 𝐴 is a set, then its value is (TC‘𝐴). If we assume Transitive Containment, then we can weaken the hypothesis to 𝐴 ∈ 𝑉, see dfttc3g 37086. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ (TC+ 𝐴 ∈ 𝑉 → TC+ 𝐴 = (TC‘𝐴)) | ||
| 6-Apr-2026 | ttcsntrsucg 37074 | The singleton transitive closure of a transitive set is its successor. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ ((𝐴 ∈ 𝑉 ∧ Tr 𝐴) → TC+ {𝐴} = suc 𝐴) | ||
| 6-Apr-2026 | ttcsnexbig 37073 | The transitive closure of a set is a set iff its singleton transitive closure is a set. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ (𝐴 ∈ 𝑉 → (TC+ 𝐴 ∈ V ↔ TC+ {𝐴} ∈ V)) | ||
| 6-Apr-2026 | ttcsnexg 37072 | If the transitive closure of a class is a set, then its singleton transitive closure is a set. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ (TC+ 𝐴 ∈ 𝑉 → TC+ {𝐴} ∈ V) | ||
| 6-Apr-2026 | ttcsng 37071 | Relationship between TC+ {𝐴} and TC+ 𝐴: the former contains the additional element 𝐴. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ (𝐴 ∈ 𝑉 → TC+ {𝐴} = (TC+ 𝐴 ∪ {𝐴})) | ||
| 6-Apr-2026 | ttcsnmin 37070 | The singleton transitive closure is the minimal transitive class containing 𝐴 as an element. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ ((𝐴 ∈ 𝐵 ∧ Tr 𝐵) → TC+ {𝐴} ⊆ 𝐵) | ||
| 6-Apr-2026 | ttcsnidg 37069 | The singleton transitive closure contains its argument 𝐴 as an element. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ (𝐴 ∈ 𝑉 → 𝐴 ∈ TC+ {𝐴}) | ||
| 6-Apr-2026 | ttcsnssg 37068 | The transitive closure is contained in the singleton transitive closure. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ (𝐴 ∈ 𝑉 → TC+ 𝐴 ⊆ TC+ {𝐴}) | ||
| 6-Apr-2026 | ttcpwss 37067 | The transitive closure of a power class is contained in the power class of the transitive closure. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ TC+ 𝒫 𝐴 ⊆ 𝒫 TC+ 𝐴 | ||
| 6-Apr-2026 | ttciun 37066 | Distribute indexed union through a transitive closure. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ TC+ ∪ 𝑥 ∈ 𝐴 𝐵 = ∪ 𝑥 ∈ 𝐴 TC+ 𝐵 | ||
| 6-Apr-2026 | ttcuni 37065 | Distribute union of a class through a transitive closure. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ TC+ ∪ 𝐴 = ∪ TC+ 𝐴 | ||
| 6-Apr-2026 | ttcun 37064 | Distribute union of two classes through a transitive closure. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ TC+ (𝐴 ∪ 𝐵) = (TC+ 𝐴 ∪ TC+ 𝐵) | ||
| 6-Apr-2026 | ttciunun 37063 | Relationship between TC+ 𝐴 and ∪ 𝑥 ∈ 𝐴TC+ 𝑥: we can decompose TC+ 𝐴 into the elements of ∪ 𝑥 ∈ 𝐴TC+ 𝑥 plus the elements of 𝐴 itself. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ TC+ 𝐴 = (∪ 𝑥 ∈ 𝐴 TC+ 𝑥 ∪ 𝐴) | ||
| 6-Apr-2026 | ttcuniun 37062 | Relationship between TC+ 𝐴 and TC+ ∪ 𝐴: we can decompose TC+ 𝐴 into the elements of TC+ ∪ 𝐴 plus the elements of 𝐴 itself. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ TC+ 𝐴 = (TC+ ∪ 𝐴 ∪ 𝐴) | ||
| 6-Apr-2026 | csbttc 37061 | Distribute proper substitution through a transitive closure. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ ⦋𝐴 / 𝑥⦌TC+ 𝐵 = TC+ ⦋𝐴 / 𝑥⦌𝐵 | ||
| 6-Apr-2026 | ttc00 37060 | A class has an empty transitive closure iff it is the empty set. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ (𝐴 = ∅ ↔ TC+ 𝐴 = ∅) | ||
| 6-Apr-2026 | ttc0 37059 | The transitive closure of the empty set is the empty set. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ TC+ ∅ = ∅ | ||
| 6-Apr-2026 | dfttc2g 37058 | A shorter expression for the transitive closure of a set. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ (𝐴 ∈ 𝑉 → TC+ 𝐴 = ∪ (rec((𝑥 ∈ V ↦ ∪ 𝑥), 𝐴) “ ω)) | ||
| 6-Apr-2026 | elttctr 37057 | Transitivity of 𝐴 ∈ TC+ 𝐵 relationship. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ ((𝐴 ∈ TC+ 𝐵 ∧ 𝐵 ∈ TC+ 𝐶) → 𝐴 ∈ TC+ 𝐶) | ||
| 6-Apr-2026 | ssttctr 37056 | Transitivity of 𝐴 ⊆ TC+ 𝐵 relationship. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ ((𝐴 ⊆ TC+ 𝐵 ∧ 𝐵 ⊆ TC+ 𝐶) → 𝐴 ⊆ TC+ 𝐶) | ||
| 6-Apr-2026 | ttcidm 37055 | The transitive closure operation is idempotent. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ TC+ TC+ 𝐴 = TC+ 𝐴 | ||
| 6-Apr-2026 | ttctrid 37054 | The transitive closure of a transitive class is the class itself. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ (Tr 𝐴 → TC+ 𝐴 = 𝐴) | ||
| 6-Apr-2026 | ttcel2 37053 | Elements turn into subclasses upon taking transitive closures. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ (𝐴 ∈ 𝐵 → TC+ 𝐴 ⊆ TC+ 𝐵) | ||
| 6-Apr-2026 | ttcel 37052 | A transitive closure contains the transitive closures of all its elements. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ (𝐴 ∈ TC+ 𝐵 → TC+ 𝐴 ⊆ TC+ 𝐵) | ||
| 6-Apr-2026 | ttcss2 37051 | The subclass relationship is inherited by transitive closures. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ (𝐴 ⊆ 𝐵 → TC+ 𝐴 ⊆ TC+ 𝐵) | ||
| 6-Apr-2026 | ttcss 37050 | A transitive closure contains the transitive closures of all its subclasses. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ (𝐴 ⊆ TC+ 𝐵 → TC+ 𝐴 ⊆ TC+ 𝐵) | ||
| 6-Apr-2026 | ttcexrg 37049 | If the transitive closure of a class is a set, then the class is a set. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ (TC+ 𝐴 ∈ 𝑉 → 𝐴 ∈ V) | ||
| 6-Apr-2026 | ttcmin 37048 | The transitive closure of 𝐴 is a subclass of every transitive class containing 𝐴. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ ((𝐴 ⊆ 𝐵 ∧ Tr 𝐵) → TC+ 𝐴 ⊆ 𝐵) | ||
| 6-Apr-2026 | ttctr3 37047 | The transitive closure of a class is transitive. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ ∪ TC+ 𝐴 ⊆ TC+ 𝐴 | ||
| 6-Apr-2026 | ttctr2 37046 | The transitive closure of a class is transitive. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ (𝐴 ∈ TC+ 𝐵 → 𝐴 ⊆ TC+ 𝐵) | ||
| 6-Apr-2026 | ttctr 37045 | The transitive closure of a class is transitive. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ Tr TC+ 𝐴 | ||
| 6-Apr-2026 | ttcid 37044 | The transitive closure contains its argument as a subclass. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ 𝐴 ⊆ TC+ 𝐴 | ||
| 6-Apr-2026 | nfttc 37043 | Bound-variable hypothesis builder for transitive closure. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ Ⅎ𝑥𝐴 ⇒ ⊢ Ⅎ𝑥TC+ 𝐴 | ||
| 6-Apr-2026 | ttceqd 37042 | Equality deduction for transitive closure. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ (𝜑 → 𝐴 = 𝐵) ⇒ ⊢ (𝜑 → TC+ 𝐴 = TC+ 𝐵) | ||
| 6-Apr-2026 | ttceqi 37041 | Equality inference for transitive closure. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ 𝐴 = 𝐵 ⇒ ⊢ TC+ 𝐴 = TC+ 𝐵 | ||
| 6-Apr-2026 | ttceq 37040 | Equality theorem for transitive closure. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ (𝐴 = 𝐵 → TC+ 𝐴 = TC+ 𝐵) | ||
| 6-Apr-2026 | df-ttc 37039 | Transitive closure of a class. Unlike (TC‘𝐴) (see df-tc 9714), this definition works even if 𝐴 or its transitive closure is a proper class. Note that unless we assume Transitive Containment, the transitive closure of a set may be a proper class. If we only assume Regularity, then the class of sets whose transitive closure is a set is precisely the class of well-founded sets, see ttcwf3 37078. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ TC+ 𝐴 = ∪ 𝑥 ∈ 𝐴 ∪ (rec((𝑦 ∈ V ↦ ∪ 𝑦), {𝑥}) “ ω) | ||
| 6-Apr-2026 | cttc 37038 | Extend class notation with the transitive closure of a class. (Contributed by Matthew House, 6-Apr-2026.) |
| class TC+ 𝐴 | ||
| 6-Apr-2026 | tr0el 37037 | Every nonempty transitive class contains the empty set ∅ as an element, a consequence of Regularity and Transitive Containment. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ ((𝐴 ≠ ∅ ∧ Tr 𝐴) → ∅ ∈ 𝐴) | ||
| 6-Apr-2026 | tr0elw 37036 | Every nonempty transitive set contains the empty set ∅ as an element, a consequence of Regularity. If we assume Transitive Containment, then we can omit the 𝐴 ∈ 𝑉 hypothesis, see tr0el 37037. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ ((𝐴 ∈ 𝑉 ∧ 𝐴 ≠ ∅ ∧ Tr 𝐴) → ∅ ∈ 𝐴) | ||
| 6-Apr-2026 | tz9.1tco 37035 | Version of tz9.1 9708 derived from ax-tco 37024. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ 𝐴 ∈ V ⇒ ⊢ ∃𝑥(𝐴 ⊆ 𝑥 ∧ Tr 𝑥 ∧ ∀𝑦((𝐴 ⊆ 𝑦 ∧ Tr 𝑦) → 𝑥 ⊆ 𝑦)) | ||
| 6-Apr-2026 | tz9.1ctco 37034 | Version of tz9.1c 9709 derived from ax-tco 37024. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ 𝐴 ∈ V ⇒ ⊢ ∩ {𝑥 ∣ (𝐴 ⊆ 𝑥 ∧ Tr 𝑥)} ∈ V | ||
| 6-Apr-2026 | axuntco 37031 | Derivation of ax-un 7745 from ax-tco 37024. Use ax-un 7745 instead. (Contributed by Matthew House, 6-Apr-2026.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ ∃𝑦∀𝑧(∃𝑤(𝑧 ∈ 𝑤 ∧ 𝑤 ∈ 𝑥) → 𝑧 ∈ 𝑦) | ||
| 6-Apr-2026 | axtcond 37030 | A version of the Axiom of Transitive Containment with no distinct variable conditions. Usage of this theorem is discouraged because it depends on ax-13 2407. (Contributed by Matthew House, 6-Apr-2026.) (New usage is discouraged.) |
| ⊢ ∃𝑦∀𝑧((𝑧 = 𝑥 ∨ 𝑧 ∈ 𝑦) → ∀𝑥(𝑥 ∈ 𝑧 → 𝑥 ∈ 𝑦)) | ||
| 6-Apr-2026 | axtco2g 37029 | Weak form of the Axiom of Transitive Containment using class variables and abbreviations. See ax-tco 37024 for more information. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ (𝐴 ∈ 𝑉 → ∃𝑥(𝐴 ⊆ 𝑥 ∧ Tr 𝑥)) | ||
| 6-Apr-2026 | axtco1g 37028 | Strong form of the Axiom of Transitive Containment using class variables and abbreviations. See ax-tco 37024 for more information. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ (𝐴 ∈ 𝑉 → ∃𝑥(𝐴 ∈ 𝑥 ∧ Tr 𝑥)) | ||
| 6-Apr-2026 | axtco1from2 37027 | Strong form axtco1 37025 of the Axiom of Transitive Containment, derived from the weak form axtco2 37026. See ax-tco 37024 for more information. As written, the proof uses ax-pr 5409 via el 5424, but we could alternatively use ax-pow 5341 via elALT2 5345. Use axtco1 37025 instead. (Contributed by Matthew House, 6-Apr-2026.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ ∃𝑦(𝑥 ∈ 𝑦 ∧ ∀𝑧(𝑧 ∈ 𝑦 → ∀𝑤(𝑤 ∈ 𝑧 → 𝑤 ∈ 𝑦))) | ||
| 6-Apr-2026 | axtco2 37026 | Weak form of the Axiom of Transitive Containment. See ax-tco 37024 for more information. In particular, this theorem shows the derivation of the weak form from the strong form. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ ∃𝑦∀𝑧((𝑧 = 𝑥 ∨ 𝑧 ∈ 𝑦) → ∀𝑤(𝑤 ∈ 𝑧 → 𝑤 ∈ 𝑦)) | ||
| 6-Apr-2026 | ax-tco 37024 |
The Axiom of Transitive Containment of ZF set theory. It was derived as
axtco 37023 above and is therefore redundant if we
assume ax-ext 2738,
ax-rep 5243 and ax-inf2 9620, but we state it as a separate axiom here so
that its uses can be identified more easily. It states that a
transitive set 𝑦 exists that contains a given set
𝑥.
In
particular, the transitive closure of 𝑥 is a set, since it is a
subset of 𝑦, see df-tc 9714.
Traditionally, this statement is not counted as an axiom at all, but as a theorem from Replacement and Infinity. In fact, from the transitive closure of 𝑥 we can construct the set of iterated unions of 𝑥 (and vice versa), and Skolem took the existence of the latter set as a motivation for introducing the Axiom of Replacement. But Transitive Containment is strictly weaker than either of those axioms, so many authors identify it as its own axiom when investigating subsystems of ZF, such as Zermelo set theory or finitist set theory. We follow this separation in order to avoid nonessential usage of the stronger axioms. There are two main versions of this axiom that appear in the literature: the strong form ⊢ ∃𝑦(𝑥 ∈ 𝑦 ∧ Tr 𝑦), see axtco1 37025 and axtco1g 37028, and the weak form ⊢ ∃𝑦(𝑥 ⊆ 𝑦 ∧ Tr 𝑦), see axtco2 37026 and axtco2g 37029. The weak form follows directly from the strong form, see axtco2 37026. But the strong form only follows from the weak form if we allow el 5424 or one of its variants, see axtco1from2 37027. We take the strong form here as the axiom, since it is slightly shorter when expanded to primitive symbols. Yet the weak form turns out to be more suitable for axtcond 37030 for reasons of syntax. (Contributed by Matthew House, 6-Apr-2026.) |
| ⊢ ∃𝑦(𝑥 ∈ 𝑦 ∧ ∀𝑧(𝑧 ∈ 𝑦 → ∀𝑤(𝑤 ∈ 𝑧 → 𝑤 ∈ 𝑦))) | ||
| 6-Apr-2026 | axtco 37023 | Axiom of Transitive Containment, derived as a theorem from ax-ext 2738, ax-rep 5243, and ax-inf2 9620. Use ax-tco 37024 instead. (Contributed by Matthew House, 6-Apr-2026.) (New usage is discouraged.) |
| ⊢ ∃𝑦(𝑥 ∈ 𝑦 ∧ ∀𝑧(𝑧 ∈ 𝑦 → ∀𝑤(𝑤 ∈ 𝑧 → 𝑤 ∈ 𝑦))) | ||
| 6-Apr-2026 | el 5424 | Any set is an element of some other set. See elALT 5428 for a shorter proof using more axioms, and see elALT2 5345 for a proof that uses ax-9 2156 and ax-pow 5341 instead of ax-pr 5409. (Contributed by NM, 4-Jan-2002.) (Proof shortened by Andrew Salmon, 25-Jul-2011.) Use ax-pr 5409 instead of ax-9 2156 and ax-pow 5341. (Revised by BTernaryTau, 2-Dec-2024.) (Proof shortened by Matthew House, 6-Apr-2026.) |
| ⊢ ∃𝑦 𝑥 ∈ 𝑦 | ||
| 6-Apr-2026 | axprlem1 5399 | Lemma for axpr 5403. There exists a set to which all empty sets belong. (Contributed by Rohan Ridenour, 10-Aug-2023.) (Revised by BJ, 13-Aug-2023.) (Proof shortened by Matthew House, 6-Apr-2026.) |
| ⊢ ∃𝑥∀𝑦(∀𝑧 ¬ 𝑧 ∈ 𝑦 → 𝑦 ∈ 𝑥) | ||
| 5-Apr-2026 | nprmmul1 48317 | Special factorization of a non-prime integer greater than 3. (Contributed by AV, 5-Apr-2026.) |
| ⊢ (𝑁 ∈ (ℤ≥‘4) → (𝑁 ∉ ℙ ↔ ∃𝑎 ∈ (2..^𝑁)∃𝑏 ∈ (2..^𝑁)𝑁 = (𝑎 · 𝑏))) | ||
| 5-Apr-2026 | nndivides2 48162 | Definition of the divides relation for divisors greater than 1. (Contributed by AV, 5-Apr-2026.) |
| ⊢ ((𝑀 ∈ (2..^𝑁) ∧ 𝑁 ∈ ℕ) → (𝑀 ∥ 𝑁 ↔ ∃𝑛 ∈ (2..^𝑁)(𝑛 · 𝑀) = 𝑁)) | ||
| 5-Apr-2026 | nnmul2b 48109 | A factor of a product of integers is at least 2 and less then the product iff the second factor is at least 2 and less then the product. (Contributed by AV, 5-Apr-2026.) |
| ⊢ ((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ (𝐴 · 𝐵) = 𝑁) → (𝐴 ∈ (2..^𝑁) ↔ 𝐵 ∈ (2..^𝑁))) | ||
| 5-Apr-2026 | nnmul2 48108 | If one factor of a product of integers is at least 2 and less then the product, so is the second factor. (Contributed by AV, 5-Apr-2026.) |
| ⊢ ((𝐴 ∈ (2..^𝑁) ∧ 𝐵 ∈ ℕ ∧ (𝐴 · 𝐵) = 𝑁) → 𝐵 ∈ (2..^𝑁)) | ||
| 5-Apr-2026 | elfzo2nn 48107 | A member of a half-open range of integers starting at 2 is a positive integer. (Contributed by AV, 5-Apr-2026.) |
| ⊢ (𝐾 ∈ (2..^𝑁) → 𝐾 ∈ ℕ) | ||
| 5-Apr-2026 | elfz2nn 48100 | A member of a finite set of sequential integers starting at 2 is a positive integer. (Contributed by AV, 5-Apr-2026.) |
| ⊢ (𝐾 ∈ (2...𝑁) → 𝐾 ∈ ℕ) | ||
| 5-Apr-2026 | bj-alrimdh 37258 | Deduction form of Theorem 19.21 of [Margaris] p. 90, see 19.21 2246 and 19.21h 2325. (Contributed by NM, 10-Feb-1997.) (Proof shortened by Andrew Salmon, 13-May-2011.) State the most general derivable instance. (Revised by BJ, 5-Apr-2026.) |
| ⊢ (𝜑 → ∀𝑥𝜓) & ⊢ (𝜒 → ∀𝑥𝜃) & ⊢ (𝜓 → (𝜃 → 𝜏)) ⇒ ⊢ (𝜑 → (𝜒 → ∀𝑥𝜏)) | ||
| 5-Apr-2026 | bj-alimdh 37257 | General instance of alimdh 1850. (Contributed by NM, 4-Jan-2002.) State the most general derivable instance. (Revised by BJ, 5-Apr-2026.) |
| ⊢ (𝜑 → ∀𝑥𝜓) & ⊢ (𝜓 → (𝜒 → 𝜃)) ⇒ ⊢ (𝜑 → (∀𝑥𝜒 → ∀𝑥𝜃)) | ||
| 5-Apr-2026 | zfrep6 5255 | A version of the Axiom of Replacement. Normally 𝜑 would have free variables 𝑥 and 𝑦. Axiom 6 of [Kunen] p. 12. The Separation Scheme ax-sep 5262 cannot be derived from this version and must be stated as a separate axiom in an axiom system (such as Kunen's) that uses this version in place of our ax-rep 5243. (Contributed by NM, 10-Oct-2003.) Shorten proof and reduce axiom dependencies. (Revised by BJ, 5-Apr-2026.) |
| ⊢ (∀𝑥 ∈ 𝑧 ∃!𝑦𝜑 → ∃𝑤∀𝑥 ∈ 𝑧 ∃𝑦 ∈ 𝑤 𝜑) | ||
| 5-Apr-2026 | replem 5254 | A lemma for variants of the axiom of replacement: if we can form the set of images of the functional relation, then we can also form a set containing all its images. The converse requires the axiom of separation. (Contributed by BJ, 5-Apr-2026.) |
| ⊢ ((∀𝑥 ∈ 𝑧 ∃𝑦𝜑 ∧ ∃𝑤∀𝑦(𝑦 ∈ 𝑤 ↔ ∃𝑥 ∈ 𝑧 𝜑)) → ∃𝑤∀𝑥 ∈ 𝑧 ∃𝑦 ∈ 𝑤 𝜑) | ||
| 4-Apr-2026 | ppi1sum 48424 | Value of the prime-counting function pi for 1, according to Ján Mináč. (Contributed by AV, 4-Apr-2026.) |
| ⊢ (π‘1) = Σ𝑘 ∈ ∅ (⌊‘((((!‘(𝑘 − 1)) + 1) / 𝑘) − (⌊‘((!‘(𝑘 − 1)) / 𝑘)))) | ||
| 4-Apr-2026 | indprmfz 48423 | An indicator function for prime numbers in a finite interval of integers, according to Ján Mináč. (Contributed by AV, 4-Apr-2026.) |
| ⊢ 𝐼 = (2...𝐴) ⇒ ⊢ ((𝟭‘𝐼)‘(𝐼 ∩ ℙ)) = (𝑘 ∈ 𝐼 ↦ (⌊‘((((!‘(𝑘 − 1)) + 1) / 𝑘) − (⌊‘((!‘(𝑘 − 1)) / 𝑘))))) | ||
| 4-Apr-2026 | indprm 48422 | An indicator function for prime numbers, according to Ján Mináč. (Contributed by AV, 4-Apr-2026.) |
| ⊢ ((𝟭‘(ℤ≥‘2))‘ℙ) = (𝑘 ∈ (ℤ≥‘2) ↦ (⌊‘((((!‘(𝑘 − 1)) + 1) / 𝑘) − (⌊‘((!‘(𝑘 − 1)) / 𝑘))))) | ||
| 4-Apr-2026 | ppivalnnnprmge6 48419 | Value of a term of the prime-counting function pi for positive integers, according to Ján Mináč, for a non-prime number greater than 4. (Contributed by AV, 4-Apr-2026.) |
| ⊢ ((𝑁 ∈ (ℤ≥‘6) ∧ 𝑁 ∉ ℙ) → (⌊‘((((!‘(𝑁 − 1)) + 1) / 𝑁) − (⌊‘((!‘(𝑁 − 1)) / 𝑁)))) = 0) | ||
| 4-Apr-2026 | nprmmul3 48319 | Special factorization of a non-prime integer greater than 3. (Contributed by AV, 4-Apr-2026.) |
| ⊢ (𝑁 ∈ (ℤ≥‘4) → (𝑁 ∉ ℙ ↔ (∃𝑎 ∈ (2..^𝑁)∃𝑏 ∈ (2..^𝑁)(𝑎 < 𝑏 ∧ 𝑁 = (𝑎 · 𝑏)) ∨ ∃𝑎 ∈ (2..^𝑁)𝑁 = (𝑎↑2)))) | ||
| 4-Apr-2026 | rerecne0d 43258 | The reciprocal of a nonzero number is nonzero. (Contributed by SN, 4-Apr-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ ℝ) & ⊢ (𝜑 → 𝐴 ≠ 0) ⇒ ⊢ (𝜑 → (1 /ℝ 𝐴) ≠ 0) | ||
| 4-Apr-2026 | bj-nnf-cbval 37446 | Compared with cbvalv1 2376, this saves ax-12 2216. (Contributed by BJ, 4-Apr-2026.) |
| ⊢ (𝜑 → ∀𝑥𝜑) & ⊢ (𝜑 → ∀𝑦𝜑) & ⊢ (𝜑 → Ⅎ'𝑦𝜓) & ⊢ (𝜑 → Ⅎ'𝑥𝜒) & ⊢ ((𝜑 ∧ 𝑥 = 𝑦) → (𝜓 ↔ 𝜒)) ⇒ ⊢ (𝜑 → (∀𝑥𝜓 ↔ ∀𝑦𝜒)) | ||
| 4-Apr-2026 | bj-nnf-cbvali 37445 | Compared with bj-nnf-cbvaliv 37442, replacing the DV condition on 𝑦, 𝜓 with the nonfreeness condition requires ax-11 2195. (Contributed by BJ, 4-Apr-2026.) |
| ⊢ (𝜑 → ∀𝑥𝜑) & ⊢ (𝜑 → ∀𝑦𝜑) & ⊢ (𝜑 → Ⅎ'𝑦𝜓) & ⊢ (𝜑 → Ⅎ'𝑥𝜒) & ⊢ ((𝜑 ∧ 𝑥 = 𝑦) → (𝜓 → 𝜒)) ⇒ ⊢ (𝜑 → (∀𝑥𝜓 → ∀𝑦𝜒)) | ||
| 4-Apr-2026 | bj-nnf-cbvaliv 37442 | The only DV conditions are those saying that 𝑦 is a fresh variable used to construct 𝜒. (Contributed by BJ, 4-Apr-2026.) |
| ⊢ (𝜑 → ∀𝑥𝜑) & ⊢ (𝜑 → Ⅎ'𝑥𝜒) & ⊢ ((𝜑 ∧ 𝑥 = 𝑦) → (𝜓 → 𝜒)) ⇒ ⊢ (𝜑 → (∀𝑥𝜓 → ∀𝑦𝜒)) | ||
| 4-Apr-2026 | bj-nnf-spime 37441 | An existential generalization result in deduction form, from ax-1 6-- ax-6 2000, where the only DV condition is on 𝑥, 𝑦, and where 𝑥 should be nonfree in the new proposition 𝜒 (and in the context 𝜑). (Contributed by BJ, 4-Apr-2026.) |
| ⊢ (𝜑 → ∀𝑥𝜑) & ⊢ (𝜑 → Ⅎ'𝑥𝜓) & ⊢ ((𝜑 ∧ 𝑥 = 𝑦) → (𝜓 → 𝜒)) ⇒ ⊢ (𝜑 → (𝜓 → ∃𝑥𝜒)) | ||
| 4-Apr-2026 | bj-nnf-spim 37440 | A universal specialization result in deduction form, proved from ax-1 6 -- ax-6 2000, where the only DV condition is on 𝑥, 𝑦 and where 𝑥 should be nonfree in the new proposition 𝜒 (and in the context 𝜑). (Contributed by BJ, 4-Apr-2026.) |
| ⊢ (𝜑 → ∀𝑥𝜑) & ⊢ (𝜑 → Ⅎ'𝑥𝜒) & ⊢ ((𝜑 ∧ 𝑥 = 𝑦) → (𝜓 → 𝜒)) ⇒ ⊢ (𝜑 → (∀𝑥𝜓 → 𝜒)) | ||
| 4-Apr-2026 | bj-hbex 37378 | A more general instance of hbex 2361. (Contributed by BJ, 4-Apr-2026.) |
| ⊢ (𝜑 → ∀𝑥𝜓) ⇒ ⊢ (∃𝑦𝜑 → ∀𝑥∃𝑦𝜓) | ||
| 4-Apr-2026 | bj-hbexd 37376 | A more general instance of the deduction form of hbex 2361. (Contributed by BJ, 4-Apr-2026.) |
| ⊢ (𝜑 → ∀𝑦𝜓) & ⊢ (𝜓 → (𝜒 → ∀𝑥𝜃)) ⇒ ⊢ (𝜑 → (∃𝑦𝜒 → ∀𝑥∃𝑦𝜃)) | ||
| 4-Apr-2026 | bj-hbal 37347 | More general instance of hbal 2205. (Contributed by BJ, 4-Apr-2026.) |
| ⊢ (𝜑 → ∀𝑥𝜓) ⇒ ⊢ (∀𝑦𝜑 → ∀𝑥∀𝑦𝜓) | ||
| 4-Apr-2026 | bj-hbald 37345 | General statement that hbald 2206 proves . (Contributed by BJ, 4-Apr-2026.) |
| ⊢ (𝜑 → ∀𝑦𝜓) & ⊢ (𝜓 → (𝜒 → ∀𝑥𝜃)) ⇒ ⊢ (𝜑 → (∀𝑦𝜒 → ∀𝑥∀𝑦𝜃)) | ||
| 4-Apr-2026 | bj-spim0 37332 | A universal specialization result in deduction form, proved from ax-1 6 -- ax-6 2000, where the only DV condition is on 𝑥, 𝑦 and where 𝑥 should be nonfree in the new proposition 𝜒 (and in the context 𝜑). (Contributed by BJ, 4-Apr-2026.) |
| ⊢ (𝜑 → ∀𝑥𝜑) & ⊢ (𝜑 → (∃𝑥𝜒 → 𝜒)) & ⊢ ((𝜑 ∧ 𝑥 = 𝑦) → (𝜓 → 𝜒)) ⇒ ⊢ (𝜑 → (∀𝑥𝜓 → 𝜒)) | ||
| 4-Apr-2026 | bj-cbveximdv 37297 | A lemma for alpha-renaming of variables bound by an existential quantifier. (Contributed by BJ, 4-Apr-2026.) (Proof modification is discouraged.) |
| ⊢ (𝜑 → ∀𝑥𝜑) & ⊢ (𝜑 → ∀𝑦𝜑) & ⊢ (𝜑 → (𝜒 → ∀𝑦𝜒)) & ⊢ (𝜑 → ∀𝑥∃𝑦𝜓) & ⊢ ((𝜑 ∧ 𝜓) → (𝜒 → 𝜃)) ⇒ ⊢ (𝜑 → (∃𝑥𝜒 → ∃𝑦𝜃)) | ||
| 4-Apr-2026 | bj-cbvalimdv 37296 | A lemma for alpha-renaming of variables bound by a universal quantifier. (Contributed by BJ, 4-Apr-2026.) (Proof modification is discouraged.) |
| ⊢ (𝜑 → ∀𝑥𝜑) & ⊢ (𝜑 → ∀𝑦𝜑) & ⊢ (𝜑 → (∃𝑥𝜃 → 𝜃)) & ⊢ (𝜑 → ∀𝑦∃𝑥𝜓) & ⊢ ((𝜑 ∧ 𝜓) → (𝜒 → 𝜃)) ⇒ ⊢ (𝜑 → (∀𝑥𝜒 → ∀𝑦𝜃)) | ||
| 4-Apr-2026 | bj-cbveximd 37295 | A lemma for alpha-renaming of variables bound by an existential quantifier. (Contributed by BJ, 4-Apr-2026.) (Proof modification is discouraged.) |
| ⊢ (𝜑 → ∀𝑥𝜑) & ⊢ (𝜑 → ∀𝑦𝜑) & ⊢ (𝜑 → (𝜒 → ∀𝑦𝜒)) & ⊢ (𝜑 → (∃𝑥𝜃 → 𝜃)) & ⊢ (𝜑 → ∀𝑥∃𝑦𝜓) & ⊢ ((𝜑 ∧ 𝜓) → (𝜒 → 𝜃)) ⇒ ⊢ (𝜑 → (∃𝑥𝜒 → ∃𝑦𝜃)) | ||
| 4-Apr-2026 | bj-cbvalimd 37294 | A lemma for alpha-renaming of variables bound by a universal quantifier. (Contributed by BJ, 4-Apr-2026.) (Proof modification is discouraged.) |
| ⊢ (𝜑 → ∀𝑥𝜑) & ⊢ (𝜑 → ∀𝑦𝜑) & ⊢ (𝜑 → (𝜒 → ∀𝑦𝜒)) & ⊢ (𝜑 → (∃𝑥𝜃 → 𝜃)) & ⊢ (𝜑 → ∀𝑦∃𝑥𝜓) & ⊢ ((𝜑 ∧ 𝜓) → (𝜒 → 𝜃)) ⇒ ⊢ (𝜑 → (∀𝑥𝜒 → ∀𝑦𝜃)) | ||
| 4-Apr-2026 | bj-cbvalimd0 37291 | A lemma for alpha-renaming of variables bound by a universal quantifier. In applications, 𝑥 = 𝑦 will be substituted for 𝜓 and ax6ev 2002 will prove Hypothesis bj-cbvalimd0.denote. When ax6ev 2002 is not available but only its universal closure is, then bj-cbvalimd 37294 or bj-cbvalimdv 37296 should be used (see bj-cbvalimdlem 37292, bj-cbval 37309). (Contributed by BJ, 4-Apr-2026.) |
| ⊢ (𝜑 → ∀𝑥𝜑) & ⊢ (𝜑 → ∀𝑦𝜑) & ⊢ (𝜑 → (𝜒 → ∀𝑦𝜒)) & ⊢ (𝜑 → (∃𝑥𝜃 → 𝜃)) & ⊢ (𝜑 → ∃𝑥𝜓) & ⊢ ((𝜑 ∧ 𝜓) → (𝜒 → 𝜃)) ⇒ ⊢ (𝜑 → (∀𝑥𝜒 → ∀𝑦𝜃)) | ||
| 4-Apr-2026 | bj-spime 37290 | A lemma for existential generalization. In applications, 𝑥 = 𝑦 will be substituted for 𝜓 and ax6ev 2002 will prove Hypothesis bj-spime.denote. (Contributed by BJ, 4-Apr-2026.) |
| ⊢ (𝜑 → ∀𝑥𝜑) & ⊢ (𝜑 → (𝜒 → ∀𝑥𝜒)) & ⊢ (𝜑 → ∃𝑥𝜓) & ⊢ ((𝜑 ∧ 𝜓) → (𝜒 → 𝜃)) ⇒ ⊢ (𝜑 → (𝜒 → ∃𝑥𝜃)) | ||
| 4-Apr-2026 | bj-spim 37289 | A lemma for universal specification. In applications, 𝑥 = 𝑦 will be substituted for 𝜓 and ax6ev 2002 will prove Hypothesis bj-spim.denote. (Contributed by BJ, 4-Apr-2026.) |
| ⊢ (𝜑 → ∀𝑥𝜑) & ⊢ (𝜑 → (∃𝑥𝜃 → 𝜃)) & ⊢ (𝜑 → ∃𝑥𝜓) & ⊢ ((𝜑 ∧ 𝜓) → (𝜒 → 𝜃)) ⇒ ⊢ (𝜑 → (∀𝑥𝜒 → 𝜃)) | ||
| 3-Apr-2026 | bj-spimenfa 37288 | An existential generalization result: if 𝜑 holds and implies 𝜓 for at least one value of 𝑥, and if furthermore 𝑥 is ∀ -weakly nonfree in 𝜑, then 𝜓 holds for at least one value of 𝑥. (Contributed by BJ, 3-Apr-2026.) Proof should not use 19.35 1910. (Proof modification is discouraged.) |
| ⊢ ((𝜑 → ∀𝑥𝜑) → (∃𝑥(𝜑 → 𝜓) → (𝜑 → ∃𝑥𝜓))) | ||
| 3-Apr-2026 | bj-spimnfe 37287 | A universal specification result: if 𝜑 is true for all values of 𝑥 and implies 𝜓 for at least one value, and if furthermore 𝑥 is ∃-weakly nonfree in 𝜓, then 𝜓 follows. An intermediate result on the way to prove 19.36i 2270, bj-19.36im 37429, 19.36imv 1978, spimfw 1998... (Contributed by BJ, 3-Apr-2026.) Proof should not use 19.35 1910. (Proof modification is discouraged.) |
| ⊢ ((∃𝑥𝜓 → 𝜓) → (∃𝑥(𝜑 → 𝜓) → (∀𝑥𝜑 → 𝜓))) | ||
| 3-Apr-2026 | bj-imim11i 37183 | The propositional function ((. → 𝜑) → 𝜓) is increasing. Its associated inference is wl-syls2 38205. (Contributed by BJ, 3-Apr-2026.) |
| ⊢ (𝜑 → 𝜓) ⇒ ⊢ (((𝜑 → 𝜒) → 𝜃) → ((𝜓 → 𝜒) → 𝜃)) | ||
| 3-Apr-2026 | bj-imim11 37182 | The propositional function ((. → 𝜑) → 𝜓) is increasing. (Contributed by BJ, 3-Apr-2026.) |
| ⊢ ((𝜑 → 𝜓) → (((𝜑 → 𝜒) → 𝜃) → ((𝜓 → 𝜒) → 𝜃))) | ||
| 2-Apr-2026 | hoicvr 47303 | 𝐼 is a countable set of half-open intervals that covers the whole multidimensional reals. See Definition 1135 (b) of [Fremlin1] p. 29. (Contributed by Glauco Siliprandi, 11-Oct-2020.) Avoid ax-rep 5243 and shorten proof. (Revised by GG, 2-Apr-2026.) |
| ⊢ 𝐼 = (𝑗 ∈ ℕ ↦ (𝑥 ∈ 𝑋 ↦ 〈-𝑗, 𝑗〉)) & ⊢ (𝜑 → 𝑋 ∈ Fin) ⇒ ⊢ (𝜑 → (ℝ ↑m 𝑋) ⊆ ∪ 𝑗 ∈ ℕ X𝑖 ∈ 𝑋 (([,) ∘ (𝐼‘𝑗))‘𝑖)) | ||
| 2-Apr-2026 | rerecrecd 43261 | A number is equal to the reciprocal of its reciprocal. (Contributed by SN, 2-Apr-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ ℝ) & ⊢ (𝜑 → 𝐴 ≠ 0) ⇒ ⊢ (𝜑 → (1 /ℝ (1 /ℝ 𝐴)) = 𝐴) | ||
| 2-Apr-2026 | sn-redividd 43256 | A number divided by itself is 1. (Contributed by SN, 2-Apr-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ ℝ) & ⊢ (𝜑 → 𝐴 ≠ 0) ⇒ ⊢ (𝜑 → (𝐴 /ℝ 𝐴) = 1) | ||
| 2-Apr-2026 | sn-rediv0d 43255 | Division into zero is zero. (Contributed by SN, 2-Apr-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ ℝ) & ⊢ (𝜑 → 𝐴 ≠ 0) ⇒ ⊢ (𝜑 → (0 /ℝ 𝐴) = 0) | ||
| 2-Apr-2026 | sn-rediv1d 43254 | A number divided by 1 is itself. (Contributed by SN, 2-Apr-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ ℝ) ⇒ ⊢ (𝜑 → (𝐴 /ℝ 1) = 𝐴) | ||
| 2-Apr-2026 | rediveq1d 43253 | Equality in terms of unit ratio. (Contributed by SN, 2-Apr-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ ℝ) & ⊢ (𝜑 → 𝐵 ∈ ℝ) & ⊢ (𝜑 → 𝐵 ≠ 0) ⇒ ⊢ (𝜑 → ((𝐴 /ℝ 𝐵) = 1 ↔ 𝐴 = 𝐵)) | ||
| 2-Apr-2026 | redivne0bd 43252 | The ratio of nonzero numbers is nonzero. (Contributed by SN, 2-Apr-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ ℝ) & ⊢ (𝜑 → 𝐵 ∈ ℝ) & ⊢ (𝜑 → 𝐵 ≠ 0) ⇒ ⊢ (𝜑 → (𝐴 ≠ 0 ↔ (𝐴 /ℝ 𝐵) ≠ 0)) | ||
| 2-Apr-2026 | redivmul2d 43248 | Relationship between division and multiplication. (Contributed by SN, 2-Apr-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ ℝ) & ⊢ (𝜑 → 𝐵 ∈ ℝ) & ⊢ (𝜑 → 𝐶 ∈ ℝ) & ⊢ (𝜑 → 𝐶 ≠ 0) ⇒ ⊢ (𝜑 → ((𝐴 /ℝ 𝐶) = 𝐵 ↔ 𝐴 = (𝐶 · 𝐵))) | ||
| 2-Apr-2026 | padct 33100 | Index a countable set with integers and pad with 𝑍. (Contributed by Thierry Arnoux, 1-Jun-2020.) Avoid ax-rep 5243. (Revised by GG, 2-Apr-2026.) |
| ⊢ ((𝐴 ≼ ω ∧ 𝑍 ∈ 𝑉 ∧ ¬ 𝑍 ∈ 𝐴) → ∃𝑓(𝑓:ℕ⟶(𝐴 ∪ {𝑍}) ∧ 𝐴 ⊆ ran 𝑓 ∧ Fun (◡𝑓 ↾ 𝐴))) | ||
| 2-Apr-2026 | istrkg2ld 28766 | Property of fulfilling the lower dimension 2 axiom. (Contributed by Thierry Arnoux, 20-Nov-2019.) Avoid ax-rep 5243. (Revised by GG, 2-Apr-2026.) |
| ⊢ 𝑃 = (Base‘𝐺) & ⊢ − = (dist‘𝐺) & ⊢ 𝐼 = (Itv‘𝐺) ⇒ ⊢ (𝐺 ∈ 𝑉 → (𝐺DimTarskiG≥2 ↔ ∃𝑥 ∈ 𝑃 ∃𝑦 ∈ 𝑃 ∃𝑧 ∈ 𝑃 ¬ (𝑧 ∈ (𝑥𝐼𝑦) ∨ 𝑥 ∈ (𝑧𝐼𝑦) ∨ 𝑦 ∈ (𝑥𝐼𝑧)))) | ||
| 2-Apr-2026 | smndex1igid 18996 | The composition of the modulo function 𝐼 and a constant function (𝐺‘𝐾) results in (𝐺‘𝐾) itself. (Contributed by AV, 14-Feb-2024.) Avoid ax-rep 5243. (Revised by GG, 2-Apr-2026.) |
| ⊢ 𝑀 = (EndoFMnd‘ℕ0) & ⊢ 𝑁 ∈ ℕ & ⊢ 𝐼 = (𝑥 ∈ ℕ0 ↦ (𝑥 mod 𝑁)) & ⊢ 𝐺 = (𝑛 ∈ (0..^𝑁) ↦ (𝑥 ∈ ℕ0 ↦ 𝑛)) ⇒ ⊢ (𝐾 ∈ (0..^𝑁) → (𝐼 ∘ (𝐺‘𝐾)) = (𝐺‘𝐾)) | ||
| 2-Apr-2026 | smndex1gid 18994 | The composition of a constant function (𝐺‘𝐾) with another endofunction on ℕ0 results in (𝐺‘𝐾) itself. (Contributed by AV, 14-Feb-2024.) Avoid ax-rep 5243. (Revised by GG, 2-Apr-2026.) |
| ⊢ 𝑀 = (EndoFMnd‘ℕ0) & ⊢ 𝑁 ∈ ℕ & ⊢ 𝐼 = (𝑥 ∈ ℕ0 ↦ (𝑥 mod 𝑁)) & ⊢ 𝐺 = (𝑛 ∈ (0..^𝑁) ↦ (𝑥 ∈ ℕ0 ↦ 𝑛)) ⇒ ⊢ ((𝐹 ∈ (Base‘𝑀) ∧ 𝐾 ∈ (0..^𝑁)) → ((𝐺‘𝐾) ∘ 𝐹) = (𝐺‘𝐾)) | ||
| 2-Apr-2026 | smndex1gbas 18992 | The constant functions (𝐺‘𝐾) are endofunctions on ℕ0. (Contributed by AV, 12-Feb-2024.) Avoid ax-rep 5243 and shorten proof. (Revised by GG, 2-Apr-2026.) |
| ⊢ 𝑀 = (EndoFMnd‘ℕ0) & ⊢ 𝑁 ∈ ℕ & ⊢ 𝐼 = (𝑥 ∈ ℕ0 ↦ (𝑥 mod 𝑁)) & ⊢ 𝐺 = (𝑛 ∈ (0..^𝑁) ↦ (𝑥 ∈ ℕ0 ↦ 𝑛)) ⇒ ⊢ (𝐾 ∈ (0..^𝑁) → (𝐺‘𝐾) ∈ (Base‘𝑀)) | ||
| 1-Apr-2026 | nowisdomv 30862 | One's wisdom on matters of the universe can be refuted on April Fool's day. (Contributed by Prof. Loof Lirpa, 1-Apr-2026.) (New usage is discouraged.) |
| ⊢ ¬ 𝑊〈“ I 5”〉dom V | ||
| 28-Mar-2026 | copsex2gd 37823 | Implicit substitution inference for ordered pairs. (Contributed by NM, 28-May-1995.) Use a similar proof to copsex4g 5483 to reduce axiom usage. (Revised by SN, 1-Sep-2024.) Adapt copsex2g 5481 $p to deduction form. (Revised by BJ, 28-Mar-2026.) Do not use copsex2g 5481. (Proof modification is discouraged.) |
| ⊢ ((𝜑 ∧ (𝑥 = 𝐴 ∧ 𝑦 = 𝐵)) → (𝜓 ↔ 𝜒)) ⇒ ⊢ ((𝜑 ∧ (𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊)) → (∃𝑥∃𝑦(〈𝐴, 𝐵〉 = 〈𝑥, 𝑦〉 ∧ 𝜓) ↔ 𝜒)) | ||
| 28-Mar-2026 | cgsex2gd 37822 | Implicit substitution inference for general classes. (Contributed by NM, 26-Jul-1995.) Adapt cgsex2g 3503 to deduction form. (Revised by BJ, 28-Mar-2026.) Do not use cgsex2g 3503. (Proof modification is discouraged.) |
| ⊢ ((𝜑 ∧ (𝑥 = 𝐴 ∧ 𝑦 = 𝐵)) → 𝜓) & ⊢ ((𝜑 ∧ 𝜓) → (𝜒 ↔ 𝜃)) ⇒ ⊢ ((𝜑 ∧ (𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊)) → (∃𝑥∃𝑦(𝜓 ∧ 𝜒) ↔ 𝜃)) | ||
| 28-Mar-2026 | bj-alnnf2 37404 | If a proposition holds, then it holds for all values of a given variable if and only if it does not depend on that variable. (Contributed by BJ, 28-Mar-2026.) |
| ⊢ (𝜑 → (∀𝑥𝜑 ↔ Ⅎ'𝑥𝜑)) | ||
| 28-Mar-2026 | bj-alnnf 37403 | In deduction-style proofs, it is equivalent to assert that the context holds for all values of a variable, or that is does not depend on that variable. (Contributed by BJ, 28-Mar-2026.) |
| ⊢ ((𝜑 → ∀𝑥𝜑) ↔ (𝜑 → Ⅎ'𝑥𝜑)) | ||
| 28-Mar-2026 | bj-alsyl 37255 | Syllogism under the universal quantifier, in the curried form appearing as Theorem *10.3 of [WhiteheadRussell] p. 145. See alsyl 1926 for the uncurried form. (Contributed by BJ, 28-Mar-2026.) |
| ⊢ (∀𝑥(𝜑 → 𝜓) → (∀𝑥(𝜓 → 𝜒) → ∀𝑥(𝜑 → 𝜒))) | ||
| 27-Mar-2026 | axnulALT2 35501 | Alternate proof of axnul 5273, proved from propositional calculus, ax-gen 1828, ax-4 1842, ax-6 2000, and ax-rep 5243. (Proof modification is discouraged.) (New usage is discouraged.) (Contributed by BTernaryTau, 27-Mar-2026.) |
| ⊢ ∃𝑥∀𝑦 ¬ 𝑦 ∈ 𝑥 | ||
| 26-Mar-2026 | axprALT2 35528 | Alternate proof of axpr 5403, proved from predicate calculus, ax-rep 5243, and ax-inf2 9620. (Contributed by BTernaryTau, 26-Mar-2026.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ ∃𝑧∀𝑤((𝑤 = 𝑥 ∨ 𝑤 = 𝑦) → 𝑤 ∈ 𝑧) | ||
| 21-Mar-2026 | bj-nnfbd0 37414 | If two formulas are equivalent, then nonfreeness of a variable in one of them is equivalent to nonfreeness in the other, deduction form. The antecedent of the conclusion is in the "strong necessity" modality of modal logic (see also bj-nnftht 37409) in order not to require sp 2222 (modal T). See bj-nnfbi 37413. (Contributed by BJ, 21-Mar-2026.) |
| ⊢ (𝜑 → (𝜓 ↔ 𝜒)) ⇒ ⊢ ((𝜑 ∧ ∀𝑥𝜑) → (Ⅎ'𝑥𝜓 ↔ Ⅎ'𝑥𝜒)) | ||
| 20-Mar-2026 | bj-bisimpr 37187 | Implication from equivalence with a conjunct. Its associated inference is simprbi 503. (Contributed by BJ, 20-Mar-2026.) |
| ⊢ ((𝜑 ↔ (𝜓 ∧ 𝜒)) → (𝜑 → 𝜒)) | ||
| 20-Mar-2026 | bj-bisimpl 37186 | Implication from equivalence with a conjunct. Its associated inference is simplbi 502. (Contributed by BJ, 20-Mar-2026.) |
| ⊢ ((𝜑 ↔ (𝜓 ∧ 𝜒)) → (𝜑 → 𝜓)) | ||
| 19-Mar-2026 | bj-almpig 37254 | A partially quantified form of mpi 21 similar to bj-almpi 37253. (Contributed by BJ, 19-Mar-2026.) |
| ⊢ (𝜑 → (𝜒 → 𝜓)) & ⊢ ∀𝑥𝜒 ⇒ ⊢ ∀𝑥(𝜑 → 𝜓) | ||
| 19-Mar-2026 | bj-almpi 37253 | A quantified form of mpi 21. See also barbara 2693, bj-ala1i 37252, bj-almp 37245. (Contributed by BJ, 19-Mar-2026.) |
| ⊢ ∀𝑥(𝜑 → (𝜒 → 𝜓)) & ⊢ ∀𝑥𝜒 ⇒ ⊢ ∀𝑥(𝜑 → 𝜓) | ||
| 19-Mar-2026 | bj-alimii 37251 | Inference associated with alimi 1844. Double inference associated with alim 1843. The usual proof of an associated inference (here from alimi 1844 and ax-mp 5) has the same size and same number of steps. (Contributed by BJ, 19-Mar-2026.) |
| ⊢ (𝜓 → 𝜑) & ⊢ ∀𝑥𝜓 ⇒ ⊢ ∀𝑥𝜑 | ||
| 19-Mar-2026 | bj-almp 37245 | A quantified form of ax-mp 5. See also barbara 2693, bj-ala1i 37252, bj-almpi 37253. (Contributed by BJ, 19-Mar-2026.) |
| ⊢ ∀𝑥(𝜓 → 𝜑) & ⊢ ∀𝑥𝜓 ⇒ ⊢ ∀𝑥𝜑 | ||
| 17-Mar-2026 | bj-evalf 37757 | The evaluation at a class is a function from the universal class into the universal class. (Contributed by BJ, 17-Mar-2026.) |
| ⊢ Slot 𝐴:V⟶V | ||
| 16-Mar-2026 | sin5tlem1 47651 | Lemma 1 for quintupled angle sine calculation, expanding triple-angle sine times double-angle cosine. (Contributed by Ender Ting, 16-Mar-2026.) |
| ⊢ (𝑁 ∈ ℂ → (((3 · 𝑁) − (4 · (𝑁↑3))) · (1 − (2 · (𝑁↑2)))) = (((8 · (𝑁↑5)) − (;10 · (𝑁↑3))) + (3 · 𝑁))) | ||
| 16-Mar-2026 | cos3t 47650 | Triple-angle formula for cosine, in pure cosine form. (Contributed by Ender Ting, 16-Mar-2026.) |
| ⊢ (𝐴 ∈ ℂ → (cos‘(3 · 𝐴)) = ((4 · ((cos‘𝐴)↑3)) − (3 · (cos‘𝐴)))) | ||
| 16-Mar-2026 | sin3t 47649 | Triple-angle formula for sine, in pure sine form. (Contributed by Ender Ting, 16-Mar-2026.) |
| ⊢ (𝐴 ∈ ℂ → (sin‘(3 · 𝐴)) = ((3 · (sin‘𝐴)) − (4 · ((sin‘𝐴)↑3)))) | ||
| 16-Mar-2026 | esplyfvaln 33995 | The last elementary symmetric polynomial is the product of all variables. (Contributed by Thierry Arnoux, 16-Mar-2026.) |
| ⊢ 𝑊 = (𝐼 mPoly 𝑅) & ⊢ 𝑉 = (𝐼 mVar 𝑅) & ⊢ 𝐸 = (𝐼eSymPoly𝑅) & ⊢ (𝜑 → 𝐼 ∈ Fin) & ⊢ (𝜑 → 𝑅 ∈ CRing) & ⊢ 𝑁 = (♯‘𝐼) & ⊢ 𝑀 = (mulGrp‘𝑊) ⇒ ⊢ (𝜑 → (𝐸‘𝑁) = (𝑀 Σg 𝑉)) | ||
| 16-Mar-2026 | esplyfval1 33994 | The first elementary symmetric polynomial is the sum of all variables. (Contributed by Thierry Arnoux, 16-Mar-2026.) |
| ⊢ 𝑊 = (𝐼 mPoly 𝑅) & ⊢ 𝑉 = (𝐼 mVar 𝑅) & ⊢ 𝐸 = (𝐼eSymPoly𝑅) & ⊢ (𝜑 → 𝐼 ∈ Fin) & ⊢ (𝜑 → 𝑅 ∈ Ring) ⇒ ⊢ (𝜑 → (𝐸‘1) = (𝑊 Σg 𝑉)) | ||
| 16-Mar-2026 | mplmonprod 33975 | Finite product of monomials. Here the function 𝐺 maps a bag of variables to the corresponding monomial. (Contributed by Thierry Arnoux, 16-Mar-2026.) |
| ⊢ 𝑃 = (𝐼 mPoly 𝑅) & ⊢ 𝐵 = (Base‘𝑃) & ⊢ (𝜑 → 𝑅 ∈ CRing) & ⊢ (𝜑 → 𝐼 ∈ 𝑉) & ⊢ 𝐷 = {ℎ ∈ (ℕ0 ↑m 𝐼) ∣ ℎ finSupp 0} & ⊢ (𝜑 → 𝐴 ∈ Fin) & ⊢ (𝜑 → 𝐹:𝐴⟶𝐷) & ⊢ 1 = (1r‘𝑅) & ⊢ 0 = (0g‘𝑅) & ⊢ 𝑀 = (mulGrp‘𝑃) & ⊢ 𝐺 = (𝑦 ∈ 𝐷 ↦ (𝑧 ∈ 𝐷 ↦ if(𝑧 = 𝑦, 1 , 0 ))) ⇒ ⊢ (𝜑 → (𝑀 Σg (𝐺 ∘ 𝐹)) = (𝐺‘(𝑖 ∈ 𝐼 ↦ (ℂfld Σg (𝑥 ∈ 𝐴 ↦ ((𝐹‘𝑥)‘𝑖)))))) | ||
| 16-Mar-2026 | mplgsum 33974 | Finite commutative sums of polynomials are taken componentwise. (Contributed by Thierry Arnoux, 16-Mar-2026.) |
| ⊢ 𝑃 = (𝐼 mPoly 𝑅) & ⊢ 𝐵 = (Base‘𝑃) & ⊢ (𝜑 → 𝑅 ∈ Ring) & ⊢ (𝜑 → 𝐼 ∈ 𝑉) & ⊢ 𝐷 = {ℎ ∈ (ℕ0 ↑m 𝐼) ∣ ℎ finSupp 0} & ⊢ (𝜑 → 𝐴 ∈ Fin) & ⊢ (𝜑 → 𝐹:𝐴⟶𝐵) ⇒ ⊢ (𝜑 → (𝑃 Σg 𝐹) = (𝑦 ∈ 𝐷 ↦ (𝑅 Σg (𝑘 ∈ 𝐴 ↦ ((𝐹‘𝑘)‘𝑦))))) | ||
| 16-Mar-2026 | psrmonprod 33973 | Finite product of bags of variables in a power series. Here the function 𝐺 maps a bag of variables to the corresponding monomial. (Contributed by Thierry Arnoux, 16-Mar-2026.) |
| ⊢ 𝑆 = (𝐼 mPwSer 𝑅) & ⊢ 𝐵 = (Base‘𝑆) & ⊢ (𝜑 → 𝑅 ∈ CRing) & ⊢ (𝜑 → 𝐼 ∈ 𝑉) & ⊢ 𝐷 = {ℎ ∈ (ℕ0 ↑m 𝐼) ∣ ℎ finSupp 0} & ⊢ (𝜑 → 𝐴 ∈ Fin) & ⊢ (𝜑 → 𝐹:𝐴⟶𝐷) & ⊢ 1 = (1r‘𝑅) & ⊢ 0 = (0g‘𝑅) & ⊢ 𝑀 = (mulGrp‘𝑆) & ⊢ 𝐺 = (𝑦 ∈ 𝐷 ↦ (𝑧 ∈ 𝐷 ↦ if(𝑧 = 𝑦, 1 , 0 ))) ⇒ ⊢ (𝜑 → (𝑀 Σg (𝐺 ∘ 𝐹)) = (𝐺‘(𝑖 ∈ 𝐼 ↦ (ℂfld Σg (𝑥 ∈ 𝐴 ↦ ((𝐹‘𝑥)‘𝑖)))))) | ||
| 16-Mar-2026 | psrmonmul2 33972 | The product of two power series monomials adds the exponent vectors together. Here, the function 𝐺 is a monomial builder, which maps a bag of variables with the monic monomial with only those variables. (Contributed by Thierry Arnoux, 16-Mar-2026.) |
| ⊢ 𝑆 = (𝐼 mPwSer 𝑅) & ⊢ 𝐵 = (Base‘𝑆) & ⊢ 0 = (0g‘𝑅) & ⊢ 1 = (1r‘𝑅) & ⊢ 𝐷 = {ℎ ∈ (ℕ0 ↑m 𝐼) ∣ ℎ finSupp 0} & ⊢ (𝜑 → 𝐼 ∈ 𝑊) & ⊢ (𝜑 → 𝑅 ∈ Ring) & ⊢ (𝜑 → 𝑋 ∈ 𝐷) & ⊢ · = (.r‘𝑆) & ⊢ (𝜑 → 𝑌 ∈ 𝐷) & ⊢ 𝐺 = (𝑦 ∈ 𝐷 ↦ (𝑧 ∈ 𝐷 ↦ if(𝑧 = 𝑦, 1 , 0 ))) ⇒ ⊢ (𝜑 → ((𝐺‘𝑋) · (𝐺‘𝑌)) = (𝐺‘(𝑋 ∘f + 𝑌))) | ||
| 16-Mar-2026 | psrmonmul 33971 | The product of two power series monomials adds the exponent vectors together. For example, the product of (𝑥↑2)(𝑦↑2) with (𝑦↑1)(𝑧↑3) is (𝑥↑2)(𝑦↑3)(𝑧↑3), where the exponent vectors 〈2, 2, 0〉 and 〈0, 1, 3〉 are added to give 〈2, 3, 3〉. (Contributed by Thierry Arnoux, 16-Mar-2026.) |
| ⊢ 𝑆 = (𝐼 mPwSer 𝑅) & ⊢ 𝐵 = (Base‘𝑆) & ⊢ 0 = (0g‘𝑅) & ⊢ 1 = (1r‘𝑅) & ⊢ 𝐷 = {ℎ ∈ (ℕ0 ↑m 𝐼) ∣ ℎ finSupp 0} & ⊢ (𝜑 → 𝐼 ∈ 𝑊) & ⊢ (𝜑 → 𝑅 ∈ Ring) & ⊢ (𝜑 → 𝑋 ∈ 𝐷) & ⊢ · = (.r‘𝑆) & ⊢ (𝜑 → 𝑌 ∈ 𝐷) ⇒ ⊢ (𝜑 → ((𝑦 ∈ 𝐷 ↦ if(𝑦 = 𝑋, 1 , 0 )) · (𝑦 ∈ 𝐷 ↦ if(𝑦 = 𝑌, 1 , 0 ))) = (𝑦 ∈ 𝐷 ↦ if(𝑦 = (𝑋 ∘f + 𝑌), 1 , 0 ))) | ||
| 16-Mar-2026 | psrmon 33970 | A monomial is a power series. (Contributed by Thierry Arnoux, 16-Mar-2026.) |
| ⊢ 𝑆 = (𝐼 mPwSer 𝑅) & ⊢ 𝐵 = (Base‘𝑆) & ⊢ 0 = (0g‘𝑅) & ⊢ 1 = (1r‘𝑅) & ⊢ 𝐷 = {ℎ ∈ (ℕ0 ↑m 𝐼) ∣ ℎ finSupp 0} & ⊢ (𝜑 → 𝐼 ∈ 𝑊) & ⊢ (𝜑 → 𝑅 ∈ Ring) & ⊢ (𝜑 → 𝑋 ∈ 𝐷) ⇒ ⊢ (𝜑 → (𝑦 ∈ 𝐷 ↦ if(𝑦 = 𝑋, 1 , 0 )) ∈ 𝐵) | ||
| 16-Mar-2026 | psrgsum 33969 | Finite commutative sums of power series are taken componentwise. (Contributed by Thierry Arnoux, 16-Mar-2026.) |
| ⊢ 𝑆 = (𝐼 mPwSer 𝑅) & ⊢ 𝐵 = (Base‘𝑆) & ⊢ (𝜑 → 𝑅 ∈ Ring) & ⊢ (𝜑 → 𝐼 ∈ 𝑉) & ⊢ 𝐷 = {ℎ ∈ (ℕ0 ↑m 𝐼) ∣ ℎ finSupp 0} & ⊢ (𝜑 → 𝐴 ∈ Fin) & ⊢ (𝜑 → 𝐹:𝐴⟶𝐵) ⇒ ⊢ (𝜑 → (𝑆 Σg 𝐹) = (𝑦 ∈ 𝐷 ↦ (𝑅 Σg (𝑘 ∈ 𝐴 ↦ ((𝐹‘𝑘)‘𝑦))))) | ||
| 16-Mar-2026 | suppgsumssiun 33423 | The support of a function defined as a group sum is a subset of the indexed union of the supports. (Contributed by Thierry Arnoux, 16-Mar-2026.) |
| ⊢ 𝑍 = (0g‘𝑀) & ⊢ (𝜑 → 𝑀 ∈ Mnd) & ⊢ (𝜑 → 𝐵 ∈ 𝑊) & ⊢ (𝜑 → 𝐴 ∈ 𝑉) & ⊢ (((𝜑 ∧ 𝑥 ∈ 𝐴) ∧ 𝑦 ∈ 𝐵) → 𝐶 ∈ 𝑋) ⇒ ⊢ (𝜑 → ((𝑥 ∈ 𝐴 ↦ (𝑀 Σg (𝑦 ∈ 𝐵 ↦ 𝐶))) supp 𝑍) ⊆ ∪ 𝑦 ∈ 𝐵 ((𝑥 ∈ 𝐴 ↦ 𝐶) supp 𝑍)) | ||
| 15-Mar-2026 | goldrasin 47660 | Alternative trigonometric formula for the golden ratio. (Contributed by Ender Ting, 15-Mar-2026.) |
| ⊢ 𝐹 = (2 · (cos‘(π / 5))) ⇒ ⊢ 𝐹 = (2 · (sin‘(π · (3 / ;10)))) | ||
| 15-Mar-2026 | goldrarr 47659 | The golden ratio is a real value. (Contributed by Ender Ting, 15-Mar-2026.) |
| ⊢ 𝐹 = (2 · (cos‘(π / 5))) ⇒ ⊢ 𝐹 ∈ ℝ | ||
| 14-Mar-2026 | bj-axreprepsep 37753 |
Strong axiom of replacement (universal closure of ax-rep 5243) from the
axioms of separation and replacement as written in the theorem's
hypotheses.
The statement does not require a nonempty universe; most of the proof does not either, except for the use of 19.8a 2220, which could be removed by reworking the proof, since it is applied in a subexpression bound by the variable it introduces. Proof modifications should not introduce steps relying on a nonempty universe, like alrimiv 1960. (Contributed by BJ, 14-Mar-2026.) (Proof modification is discouraged.) |
| ⊢ ∀𝑥∃𝑠∀𝑦(𝑦 ∈ 𝑠 ↔ (𝑦 ∈ 𝑥 ∧ ∃𝑧𝜑)) & ⊢ ∀𝑠(∀𝑦 ∈ 𝑠 ∃!𝑧𝜑 → ∃𝑡∀𝑧(𝑧 ∈ 𝑡 ↔ ∃𝑦 ∈ 𝑠 𝜑)) ⇒ ⊢ ∀𝑥(∀𝑦 ∈ 𝑥 ∃*𝑧𝜑 → ∃𝑡∀𝑧(𝑧 ∈ 𝑡 ↔ ∃𝑦 ∈ 𝑥 𝜑)) | ||
| 14-Mar-2026 | bj-axseprep 37752 |
Axiom of separation (universal closure of ax-sep 5262) from a weak form of
the axiom of replacement requiring that the functional relation in it be
a (total) function and the weak emptyset axiom (existence of an empty
set provided existence of a set), as written in the theorem's
hypotheses.
This result shows that the weak emptyset axiom is not only the result of a cheap way to avoid an axiom redundancy (in this case, the existence axiom extru 2008) by adding it as an antecedent, but also permits to prove nontrivial results that hold in nonnecessarily nonempty universes. This proof is by cases so is not intuitionistic. The statement does not require a nonempty universe; most of the proof does not either, and the parts that do (e.g., near sb8ef 2390 and sbequ12r 2291 and eueq2 3676) could be reworked to avoid it. Proof modifications should not introduce steps relying on a nonempty universe, like alrimiv 1960. (Contributed by BJ, 14-Mar-2026.) (Proof modification is discouraged.) |
| ⊢ (∃𝑥⊤ → ∃𝑦∀𝑧 ∈ 𝑦 ⊥) & ⊢ ∀𝑥(∀𝑧 ∈ 𝑥 ∃!𝑡𝜓 → ∃𝑦∀𝑡(𝑡 ∈ 𝑦 ↔ ∃𝑧 ∈ 𝑥 𝜓)) & ⊢ (𝜓 ↔ ((𝜑 ∧ 𝑡 = 𝑧) ∨ (¬ 𝜑 ∧ 𝑡 = 𝑎))) ⇒ ⊢ ∀𝑥∃𝑦∀𝑧(𝑧 ∈ 𝑦 ↔ (𝑧 ∈ 𝑥 ∧ 𝜑)) | ||
| 14-Mar-2026 | bj-rep 37751 | Version of the axiom of replacement requiring the functional relation in the axiom to be a (total) function from ax-rep 5243 (in the form of axrep6 5252). (Contributed by BJ, 14-Mar-2026.) The proof proves the statement without the DV condition on 𝑥, 𝜑, but the DV condition is added to this statement to show that this weaker version is sufficient. (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ ∀𝑥(∀𝑦 ∈ 𝑥 ∃!𝑧𝜑 → ∃𝑡∀𝑧(𝑧 ∈ 𝑡 ↔ ∃𝑦 ∈ 𝑥 𝜑)) | ||
| 14-Mar-2026 | bj-cbvaew 37307 | Exixtentially quantifying over a non-occurring variable is independent from the variable, under a weaker condition than in bj-cbvexvv 37303. (Contributed by BJ, 14-Mar-2026.) (Proof modification is discouraged.) |
| ⊢ ((∀𝑥𝜑 → ∀𝑦⊥) → (∃𝑦𝜓 → ∃𝑥𝜓)) | ||
| 14-Mar-2026 | bj-cbveaw 37306 | Universally quantifying over a non-occurring variable is independent from the variable, under a weaker condition than in bj-cbvalvv 37302. (Contributed by BJ, 14-Mar-2026.) (Proof modification is discouraged.) |
| ⊢ ((∃𝑥⊤ → ∃𝑦𝜑) → (∀𝑦𝜓 → ∀𝑥𝜓)) | ||
| 14-Mar-2026 | bj-cbvew 37305 | Existentially quantifying over a non-occurring variable is independent from the variable, under a weaker condition than in bj-cbvexvv 37303. If ⊤ is substituted for 𝜑, then the statement reads: "existentially quantifying over a non-occurring variable is independent from the variable as soon as that result is true for the True truth constant. The label "cbvew" means "'change bound variable' theorem, 'exists' quantifier, weak version". (Contributed by BJ, 14-Mar-2026.) This proof is intuitionistic. (Proof modification is discouraged.) |
| ⊢ ((∃𝑥⊤ → ∃𝑦𝜑) → (∃𝑥𝜓 → ∃𝑦𝜓)) | ||
| 14-Mar-2026 | bj-cbvaw 37304 | Universally quantifying over a non-occurring variable is independent from the variable, under a weaker condition than in bj-cbvalvv 37302. If ⊥ is substituted for 𝜑, then the statement reads: "universally quantifying over a non-occurring variable is independent from the variable as soon as that result is true for the False truth constant". The label "cbvaw" means "'change bound variable' theorem, 'all' quantifier, weak version". (Contributed by BJ, 14-Mar-2026.) This proof is not intuitionistic (it uses ja 188); an intuitionistically valid statement is obtained by expressing the antecedent as a disjunction (classically equivalent through imor 867). (Proof modification is discouraged.) |
| ⊢ ((∀𝑥𝜑 → ∀𝑦⊥) → (∀𝑥𝜓 → ∀𝑦𝜓)) | ||
| 14-Mar-2026 | bj-exextruan 37301 |
An equivalent expression for existential quantification over a
non-occurring variable proved over ax-1 6--
ax-5 1943. The forward
implication can be seen as a strengthening of ax-5 1943
(a conjunct is
added to the consequent of the implication). The reverse implication
can be strengthened when ax-6 2000 is posited (which implies that models
are non-empty), see 19.8v 2016. See bj-alextruim 37300 for a dual statement.
An approximate meaning is: the existential quantification of a proposition over a non-occurring variable holds if and only if the proposition holds and the universe is nonempty. (Contributed by BJ, 14-Mar-2026.) (Proof modification is discouraged.) |
| ⊢ (∃𝑥𝜑 ↔ (∃𝑥⊤ ∧ 𝜑)) | ||
| 14-Mar-2026 | bj-alextruim 37300 |
An equivalent expression for universal quantification over a
non-occurring variable proved over ax-1 6--
ax-5 1943. The forward
implication can be strengthened when ax-6 2000
is posited (which implies
that models are non-empty), see spvw 2014. The reverse implication can be
seen as a strengthening of ax-5 1943 (since the antecedent of the
implication is weakened). See bj-exextruan 37301 for a dual statement.
An approximate meaning is: the universal quantification of a proposition over a non-occurring variable holds if and only if the proposition holds in nonempty universes. (Contributed by BJ, 14-Mar-2026.) (Proof modification is discouraged.) |
| ⊢ (∀𝑥𝜑 ↔ (∃𝑥⊤ → 𝜑)) | ||
| 14-Mar-2026 | bj-exexalal 37240 | A lemma for changing bound variables. Only the forward implication is intuitionistic. (Contributed by BJ, 14-Mar-2026.) |
| ⊢ ((∃𝑥𝜑 → ∃𝑦𝜓) ↔ (∀𝑦 ¬ 𝜓 → ∀𝑥 ¬ 𝜑)) | ||
| 11-Mar-2026 | axprglem 5412 | Lemma for axprg 5413. (Contributed by GG, 11-Mar-2026.) |
| ⊢ (𝑥 = 𝐴 → ∃𝑧∀𝑤((𝑤 = 𝐴 ∨ 𝑤 = 𝐵) → 𝑤 ∈ 𝑧)) | ||
| 8-Mar-2026 | bj-axnul 37750 |
Over the base theory ax-1 6-- ax-5 1943, the axiom of separation implies
the weak emptyset axiom.
By "weak emptyset axiom", we mean the axiom asserting existence of an empty set (which can be called "the" empty set when the axiom of extensionality ax-ext 2738 is posited) provided existence of a set (the True truth constant existentially quantified over a fresh variable, extru 2008). This is the conclusion of bj-axnul 37750. Note that the weak emptyset axiom implies ⊢ (∃𝑥⊤ → ∃𝑦⊤) without DV conditions hence also the same statement as the weak emptyset axiom without DV conditions on 𝑥, but only on 𝑦, 𝑧. By "axiom of separation", we mean the universal closure of ax-sep 5262, simulated here by its instance with ⊥ substituted for 𝜑 (and with the variable used to assert existence in the weak emptyset axiom substituted for the containing set) as the hypothesis of bj-axnul 37750. In particular, the axiom of existence extru 2008 and the axiom of separation together imply the emptyset axiom (and conversely, the emptyset axiom implies the axiom of existence). Note: this theorem does not require a disjointness condition on 𝑦, 𝑧, although both axioms should be stated with all variables disjoint. This proof only uses an instance of the axiom of separation with a bounded formula, so is valid in a constructive setting (see the CZF section in the "Intuitionistic Logic Explorer" iset.mm). (Contributed by BJ, 8-Mar-2026.) (Proof modification is discouraged.) |
| ⊢ ∀𝑥∃𝑦∀𝑧(𝑧 ∈ 𝑦 ↔ (𝑧 ∈ 𝑥 ∧ ⊥)) ⇒ ⊢ (∃𝑥⊤ → ∃𝑦∀𝑧 ∈ 𝑦 ⊥) | ||
| 8-Mar-2026 | bj-cbvexvv 37303 | Existentially quantifying over a non-occurring variable is independent of that variable, over ax-1 6-- ax-5 1943 and the existence axiom extru 2008. See bj-cbvew 37305 for a strengthening. (Contributed by BJ, 8-Mar-2026.) (Proof modification is discouraged.) |
| ⊢ (∃𝑥𝜑 → (∃𝑦𝜓 → ∃𝑥𝜓)) | ||
| 8-Mar-2026 | bj-cbvalvv 37302 | Universally quantifying over a non-occurring variable is independent of that variable, over ax-1 6-- ax-5 1943 and the existence axiom extru 2008. See bj-cbvaw 37304 for a strengthening. (Contributed by BJ, 8-Mar-2026.) (Proof modification is discouraged.) |
| ⊢ (∃𝑥𝜑 → (∀𝑥𝜓 → ∀𝑦𝜓)) | ||
| 8-Mar-2026 | bj-spvew 37299 | Version of 19.8v 2016 and 19.9v 2017 proved from ax-1 6-- ax-5 1943. The antecedent can for instance be proved with the existence axiom extru 2008. (Contributed by BJ, 8-Mar-2026.) This could also be proved from bj-spvw 37298 using duality, but that proof would not be intuitionistic, contrary to the present one. (Proof modification is discouraged.) |
| ⊢ (∃𝑥𝜑 → (𝜓 ↔ ∃𝑥𝜓)) | ||
| 8-Mar-2026 | bj-spvw 37298 | Version of spvw 2014 and 19.3v 2015 proved from ax-1 6-- ax-5 1943. The antecedent can for instance be proved with the existence axiom extru 2008. (Contributed by BJ, 8-Mar-2026.) (Proof modification is discouraged.) |
| ⊢ (∃𝑥𝜑 → (𝜓 ↔ ∀𝑥𝜓)) | ||
| 8-Mar-2026 | bj-axdd2ALT 37283 | Alternate proof of bj-axdd2 37226 (this should replace bj-axdd2 37226 when bj-exalimi 37279 is moved to the main section). (Contributed by BJ, 8-Mar-2026.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ (∃𝑥𝜑 → (∀𝑥𝜓 → ∃𝑥𝜓)) | ||
| 6-Mar-2026 | opex 5450 | An ordered pair of classes is a set. Exercise 7 of [TakeutiZaring] p. 16. (Contributed by NM, 18-Aug-1993.) (Revised by Mario Carneiro, 26-Apr-2015.) Avoid ax-nul 5274. (Revised by GG, 6-Mar-2026.) |
| ⊢ 〈𝐴, 𝐵〉 ∈ V | ||
| 6-Mar-2026 | snexg 5416 | A singleton built on a set is a set. Special case of snex 5415 which is intuitionistically valid. (Contributed by NM, 7-Aug-1994.) (Revised by Mario Carneiro, 19-May-2013.) Extract from snex 5415 and shorten proof. (Revised by BJ, 15-Jan-2025.) (Proof shortened by GG, 6-Mar-2026.) |
| ⊢ (𝐴 ∈ 𝑉 → {𝐴} ∈ V) | ||
| 6-Mar-2026 | snex 5415 | A singleton is a set. Theorem 7.12 of [Quine] p. 51, proved using Extensionality, Separation and Pairing. See also snexALT 5359. (Contributed by NM, 7-Aug-1994.) (Revised by Mario Carneiro, 19-May-2013.) Avoid ax-nul 5274 and shorten proof. (Revised by GG, 6-Mar-2026.) |
| ⊢ {𝐴} ∈ V | ||
| 6-Mar-2026 | prex 5414 | The Axiom of Pairing using class variables. Theorem 7.13 of [Quine] p. 51. By virtue of its definition, an unordered pair remains a set (even though no longer a pair) even when its components are proper classes (see prprc 4738), so we can dispense with hypotheses requiring them to be sets. (Contributed by NM, 15-Jul-1993.) Avoid ax-nul 5274 and shorten proof. (Revised by GG, 6-Mar-2026.) |
| ⊢ {𝐴, 𝐵} ∈ V | ||
| 6-Mar-2026 | axprg 5413 | Derive The Axiom of Pairing with class variables. (Contributed by GG, 6-Mar-2026.) |
| ⊢ ∃𝑧∀𝑤((𝑤 = 𝐴 ∨ 𝑤 = 𝐵) → 𝑤 ∈ 𝑧) | ||
| 5-Mar-2026 | mh-setindnd 37089 | A version of mh-setind 37088 with no distinct variable conditions. (Contributed by Matthew House, 5-Mar-2026.) (New usage is discouraged.) |
| ⊢ (∀𝑦(∀𝑥(𝑥 ∈ 𝑦 → 𝜑) → ∀𝑥(𝑥 = 𝑦 → ∀𝑦𝜑)) → 𝜑) | ||
| 4-Mar-2026 | regsfromunir1 37092 | Derivation of ax-regs 35563 from unir1 9795. (Contributed by Matthew House, 4-Mar-2026.) |
| ⊢ ∪ (𝑅1 “ On) = V ⇒ ⊢ (∃𝑥𝜑 → ∃𝑦(∀𝑥(𝑥 = 𝑦 → 𝜑) ∧ ∀𝑧(𝑧 ∈ 𝑦 → ¬ ∀𝑥(𝑥 = 𝑧 → 𝜑)))) | ||
| 4-Mar-2026 | regsfromsetind 37091 | Derivation of ax-regs 35563 from mh-setind 37088. (Contributed by Matthew House, 4-Mar-2026.) |
| ⊢ (∀𝑦(∀𝑥(𝑥 ∈ 𝑦 → ¬ 𝜑) → ∀𝑥(𝑥 = 𝑦 → ¬ 𝜑)) → ¬ 𝜑) ⇒ ⊢ (∃𝑥𝜑 → ∃𝑦(∀𝑥(𝑥 = 𝑦 → 𝜑) ∧ ∀𝑧(𝑧 ∈ 𝑦 → ¬ ∀𝑥(𝑥 = 𝑧 → 𝜑)))) | ||
| 4-Mar-2026 | regsfromregtco 37090 | Derivation of ax-regs 35563 from ax-reg 9564 + ax-tco 37024. (Contributed by Matthew House, 4-Mar-2026.) |
| ⊢ (∃𝑦 𝑦 ∈ 𝑤 → ∃𝑦(𝑦 ∈ 𝑤 ∧ ∀𝑧(𝑧 ∈ 𝑦 → ¬ 𝑧 ∈ 𝑤))) & ⊢ ∃𝑢(𝑣 ∈ 𝑢 ∧ ∀𝑡(𝑡 ∈ 𝑢 → ∀𝑠(𝑠 ∈ 𝑡 → 𝑠 ∈ 𝑢))) ⇒ ⊢ (∃𝑥𝜑 → ∃𝑦(∀𝑥(𝑥 = 𝑦 → 𝜑) ∧ ∀𝑧(𝑧 ∈ 𝑦 → ¬ ∀𝑥(𝑥 = 𝑧 → 𝜑)))) | ||
| 4-Mar-2026 | mh-setind 37088 | Principle of set induction setind 9726, written with primitive symbols. (Contributed by Matthew House, 4-Mar-2026.) |
| ⊢ (∀𝑦(∀𝑥(𝑥 ∈ 𝑦 → 𝜑) → ∀𝑥(𝑥 = 𝑦 → 𝜑)) → 𝜑) | ||
| 27-Feb-2026 | eln0s2 28587 | A non-negative surreal integer is a surreal ordinal with a finite birthday. (Contributed by Scott Fenton, 27-Feb-2026.) |
| ⊢ (𝐴 ∈ ℕ0s ↔ (𝐴 ∈ Ons ∧ ( bday ‘𝐴) ∈ ω)) | ||
| 27-Feb-2026 | peano2n0sd 28561 | Peano postulate: the successor of a non-negative surreal integer is a non-negative surreal integer. Deduction form. (Contributed by Scott Fenton, 27-Feb-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ ℕ0s) ⇒ ⊢ (𝜑 → (𝐴 +s 1s ) ∈ ℕ0s) | ||
| 27-Feb-2026 | divs1d 28435 | A surreal divided by one is itself. Deduction version. (Contributed by Scott Fenton, 27-Feb-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ No ) ⇒ ⊢ (𝜑 → (𝐴 /su 1s ) = 𝐴) | ||
| 27-Feb-2026 | rightnod 28112 | An element of a right set is a surreal. (Contributed by Scott Fenton, 27-Feb-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ ( R ‘𝐵)) ⇒ ⊢ (𝜑 → 𝐴 ∈ No ) | ||
| 27-Feb-2026 | rightoldd 28111 | An element of a right set is an element of the old set. (Contributed by Scott Fenton, 27-Feb-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ ( R ‘𝐵)) ⇒ ⊢ (𝜑 → 𝐴 ∈ ( O ‘( bday ‘𝐵))) | ||
| 27-Feb-2026 | leftnod 28110 | An element of a left set is a surreal. (Contributed by Scott Fenton, 27-Feb-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ ( L ‘𝐵)) ⇒ ⊢ (𝜑 → 𝐴 ∈ No ) | ||
| 27-Feb-2026 | leftoldd 28109 | An element of a left set is an element of the old set. (Contributed by Scott Fenton, 27-Feb-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ ( L ‘𝐵)) ⇒ ⊢ (𝜑 → 𝐴 ∈ ( O ‘( bday ‘𝐵))) | ||
| 27-Feb-2026 | rightno 28108 | An element of a right set is a surreal. (Contributed by Scott Fenton, 27-Feb-2026.) |
| ⊢ (𝐴 ∈ ( R ‘𝐵) → 𝐴 ∈ No ) | ||
| 27-Feb-2026 | leftno 28107 | An element of a left set is a surreal. (Contributed by Scott Fenton, 27-Feb-2026.) |
| ⊢ (𝐴 ∈ ( L ‘𝐵) → 𝐴 ∈ No ) | ||
| 27-Feb-2026 | rightold 28106 | An element of a right set is an element of the old set. (Contributed by Scott Fenton, 27-Feb-2026.) |
| ⊢ (𝐴 ∈ ( R ‘𝐵) → 𝐴 ∈ ( O ‘( bday ‘𝐵))) | ||
| 27-Feb-2026 | leftold 28105 | An element of a left set is an element of the old set. (Contributed by Scott Fenton, 27-Feb-2026.) |
| ⊢ (𝐴 ∈ ( L ‘𝐵) → 𝐴 ∈ ( O ‘( bday ‘𝐵))) | ||
| 27-Feb-2026 | oldmaded 28099 | An element of an old set is an element of a made set. (Contributed by Scott Fenton, 27-Feb-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ ( O ‘𝐵)) ⇒ ⊢ (𝜑 → 𝐴 ∈ ( M ‘𝐵)) | ||
| 27-Feb-2026 | oldmade 28098 | An element of an old set is an element of a made set. (Contributed by Scott Fenton, 27-Feb-2026.) |
| ⊢ (𝐴 ∈ ( O ‘𝐵) → 𝐴 ∈ ( M ‘𝐵)) | ||
| 27-Feb-2026 | newnod 28078 | An element of a new set is a surreal. (Contributed by Scott Fenton, 27-Feb-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ ( N ‘𝐵)) ⇒ ⊢ (𝜑 → 𝐴 ∈ No ) | ||
| 27-Feb-2026 | oldnod 28077 | An element of an old set is a surreal. (Contributed by Scott Fenton, 27-Feb-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ ( O ‘𝐵)) ⇒ ⊢ (𝜑 → 𝐴 ∈ No ) | ||
| 27-Feb-2026 | madenod 28076 | An element of a made set is a surreal. (Contributed by Scott Fenton, 27-Feb-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ ( M ‘𝐵)) ⇒ ⊢ (𝜑 → 𝐴 ∈ No ) | ||
| 27-Feb-2026 | newno 28075 | An element of a new set is a surreal. (Contributed by Scott Fenton, 27-Feb-2026.) |
| ⊢ (𝐴 ∈ ( N ‘𝐵) → 𝐴 ∈ No ) | ||
| 27-Feb-2026 | oldno 28074 | An element of an old set is a surreal. (Contributed by Scott Fenton, 27-Feb-2026.) |
| ⊢ (𝐴 ∈ ( O ‘𝐵) → 𝐴 ∈ No ) | ||
| 27-Feb-2026 | madeno 28073 | An element of a made set is a surreal. (Contributed by Scott Fenton, 27-Feb-2026.) |
| ⊢ (𝐴 ∈ ( M ‘𝐵) → 𝐴 ∈ No ) | ||
| 27-Feb-2026 | nulsgtsd 28008 | The empty set is greater than any set of surreals. Deduction version. (Contributed by Scott Fenton, 27-Feb-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ 𝑉) & ⊢ (𝜑 → 𝐴 ⊆ No ) ⇒ ⊢ (𝜑 → 𝐴 <<s ∅) | ||
| 27-Feb-2026 | nulsltsd 28007 | The empty set is less-than any set of surreals. Deduction version. (Contributed by Scott Fenton, 27-Feb-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ 𝑉) & ⊢ (𝜑 → 𝐴 ⊆ No ) ⇒ ⊢ (𝜑 → ∅ <<s 𝐴) | ||
| 26-Feb-2026 | dfz12s2 28718 | The set of dyadic fractions is the same as the old set of ω. (Contributed by Scott Fenton, 26-Feb-2026.) |
| ⊢ ℤs[1/2] = ( O ‘ω) | ||
| 26-Feb-2026 | bdayfin 28717 | A surreal has a finite birthday iff it is a dyadic fraction. (Contributed by Scott Fenton, 26-Feb-2026.) |
| ⊢ (𝐴 ∈ No → (𝐴 ∈ ℤs[1/2] ↔ ( bday ‘𝐴) ∈ ω)) | ||
| 26-Feb-2026 | bdayfinlem 28716 | Lemma for bdayfin 28717. Handle the non-negative case. (Contributed by Scott Fenton, 26-Feb-2026.) |
| ⊢ ((𝐴 ∈ No ∧ 0s ≤s 𝐴 ∧ ( bday ‘𝐴) ∈ ω) → 𝐴 ∈ ℤs[1/2]) | ||
| 26-Feb-2026 | bdayfinbnd 28699 | Given a non-negative integer and a non-negative surreal of lesser or equal birthday, show that the surreal can be expressed as a dyadic fraction with an upper bound on the integer and exponent. This proof follows the proof from Mizar at https://mizar.uwb.edu.pl/version/current/html/surrealn.html. (Contributed by Scott Fenton, 26-Feb-2026.) |
| ⊢ (𝜑 → 𝑁 ∈ ℕ0s) & ⊢ (𝜑 → 𝑍 ∈ No ) & ⊢ (𝜑 → ( bday ‘𝑍) ⊆ ( bday ‘𝑁)) & ⊢ (𝜑 → 0s ≤s 𝑍) ⇒ ⊢ (𝜑 → (𝑍 = 𝑁 ∨ ∃𝑥 ∈ ℕ0s ∃𝑦 ∈ ℕ0s ∃𝑝 ∈ ℕ0s (𝑍 = (𝑥 +s (𝑦 /su (2s↑s𝑝))) ∧ 𝑦 <s (2s↑s𝑝) ∧ (𝑥 +s 𝑝) <s 𝑁))) | ||
| 26-Feb-2026 | bdayfinbndlem2 28698 | Lemma for bdayfinbnd 28699. Conduct the induction. (Contributed by Scott Fenton, 26-Feb-2026.) |
| ⊢ (𝑁 ∈ ℕ0s → ∀𝑧 ∈ No ((( bday ‘𝑧) ⊆ ( bday ‘𝑁) ∧ 0s ≤s 𝑧) → (𝑧 = 𝑁 ∨ ∃𝑥 ∈ ℕ0s ∃𝑦 ∈ ℕ0s ∃𝑝 ∈ ℕ0s (𝑧 = (𝑥 +s (𝑦 /su (2s↑s𝑝))) ∧ 𝑦 <s (2s↑s𝑝) ∧ (𝑥 +s 𝑝) <s 𝑁)))) | ||
| 26-Feb-2026 | bdayfinbndlem1 28697 | Lemma for bdayfinbnd 28699. Show the first half of the inductive step. (Contributed by Scott Fenton, 26-Feb-2026.) |
| ⊢ (𝜑 → 𝑁 ∈ ℕ0s) & ⊢ (𝜑 → ∀𝑧 ∈ No ((( bday ‘𝑧) ⊆ ( bday ‘𝑁) ∧ 0s ≤s 𝑧) → (𝑧 = 𝑁 ∨ ∃𝑥 ∈ ℕ0s ∃𝑦 ∈ ℕ0s ∃𝑝 ∈ ℕ0s (𝑧 = (𝑥 +s (𝑦 /su (2s↑s𝑝))) ∧ 𝑦 <s (2s↑s𝑝) ∧ (𝑥 +s 𝑝) <s 𝑁)))) ⇒ ⊢ (𝜑 → ∀𝑤 ∈ No ((( bday ‘𝑤) ⊆ ( bday ‘(𝑁 +s 1s )) ∧ 0s ≤s 𝑤) → (𝑤 = (𝑁 +s 1s ) ∨ ∃𝑎 ∈ ℕ0s ∃𝑏 ∈ ℕ0s ∃𝑞 ∈ ℕ0s (𝑤 = (𝑎 +s (𝑏 /su (2s↑s𝑞))) ∧ 𝑏 <s (2s↑s𝑞) ∧ (𝑎 +s 𝑞) <s (𝑁 +s 1s ))))) | ||
| 25-Feb-2026 | dfpeters2 39664 |
Alternate definition of PetErs in fully modular form.
This expands the Ers 𝑛 predicate into: (i) a typedness module ( Rels × CoMembErs ), (ii) an equivalence module for the coset relation ≀ (𝑟 ⋉ (◡ E ↾ 𝑛)) ∈ EqvRels, (iii) the corresponding quotient-carrier (domain quotient) equation dom ≀ (...) / ≀ (...) = 𝑛. This is the equivalence-side counterpart of the modular decomposition dfpetparts2 39662 on the partition side. (Contributed by Peter Mazsa, 25-Feb-2026.) |
| ⊢ PetErs = ((( Rels × CoMembErs ) ∩ {〈𝑟, 𝑛〉 ∣ ≀ (𝑟 ⋉ (◡ E ↾ 𝑛)) ∈ EqvRels }) ∩ {〈𝑟, 𝑛〉 ∣ (dom ≀ (𝑟 ⋉ (◡ E ↾ 𝑛)) / ≀ (𝑟 ⋉ (◡ E ↾ 𝑛))) = 𝑛}) | ||
| 25-Feb-2026 | dfpet2parts2 39663 |
Grade stability applied to the decomposed PetParts
modules.
Pet2Parts is obtained by applying the grade-stability operator SucMap ShiftStable (see df-shiftstable 39172) to the modular intersection from dfpetparts2 39662. This makes the two orthogonal stability axes explicit: (E) semantic stability / equilibrium: BlockLiftFix, (G) grade stability: SucMap ShiftStable, assembled on top of typedness and disjoint-span base modules. This is the principled "extra level" that does not arise for Disjs: disjoint relations already bundle their internal map/carrier consistency via QMap and ElDisjs (see dfdisjs6 39632 / dfdisjs7 39633), while the present construction has an additional external grading axis imposed by the canonical successor map SucMap. (Contributed by Peter Mazsa, 20-Feb-2026.) (Revised by Peter Mazsa, 25-Feb-2026.) |
| ⊢ Pet2Parts = ( SucMap ShiftStable ((( Rels × MembParts ) ∩ {〈𝑟, 𝑛〉 ∣ (𝑟 ⋉ (◡ E ↾ 𝑛)) ∈ Disjs }) ∩ BlockLiftFix )) | ||
| 25-Feb-2026 | dfpetparts2 39662 |
Alternate definition of PetParts as typedness +
disjoint-span +
block-lift equilibrium.
This theorem is the key modularization step. It decomposes PetParts into the intersection of three orthogonal modules: (T) typedness: 〈𝑟, 𝑛〉 ∈ ( Rels × MembParts ), (D) disjoint-span: (𝑟 ⋉ (◡ E ↾ 𝑛)) ∈ Disjs, (E) semantic equilibrium: 〈𝑟, 𝑛〉 ∈ BlockLiftFix, i.e. the carrier 𝑛 is a fixpoint of the induced block-generation operator. Conceptually, (D) provides the disjointness/quotient discipline for the lifted span, while (E) prevents hidden carrier drift (refinement or coarsening of what counts as a block) by enforcing the fixpoint equation. The point of this theorem is that these constraints can be imposed and reused independently by later constructions, while their intersection recovers the intended Parts-based notion. This mirrors the internal packaging of Disjs (see dfdisjs6 39632 / dfdisjs7 39633): for disjoint relations, the "map layer + carrier layer" decomposition is internal via QMap and ElDisjs; for PetParts, the carrier 𝑛 is an external parameter, so the additional carrier stability must be factored explicitly as BlockLiftFix. (Contributed by Peter Mazsa, 20-Feb-2026.) (Revised by Peter Mazsa, 25-Feb-2026.) |
| ⊢ PetParts = ((( Rels × MembParts ) ∩ {〈𝑟, 𝑛〉 ∣ (𝑟 ⋉ (◡ E ↾ 𝑛)) ∈ Disjs }) ∩ BlockLiftFix ) | ||
| 25-Feb-2026 | df-peters 39659 |
Define the class of equivalence-side general partition-equivalence
spans.
〈𝑟, 𝑛〉 ∈ PetErs means: (1) 𝑟 is a set-relation (𝑟 ∈ Rels), and (2) 𝑛 is a carrier recognized on the equivalence side of membership (𝑛 ∈ CoMembErs), and (3) the coset relation of the lifted span, ≀ (𝑟 ⋉ (◡ E ↾ 𝑛)), is an equivalence relation on its natural quotient with carrier 𝑛 (i.e. ≀ (𝑟 ⋉ (◡ E ↾ 𝑛)) Ers 𝑛). This packages the equivalence-view of the same lifted construction that underlies PetParts. It is designed to be parallel to PetParts so later proofs can freely choose the partition side (Parts) or the equivalence side (Ers) without rebuilding the bridge each time; the identification is provided by petseq 39666 (using typesafepets 39665 and mpets 39646). The explicit typing (𝑟 ∈ Rels ∧ 𝑛 ∈ CoMembErs ) is included for the same reason as in df-petparts 39658: to make typedness a reusable module. (Contributed by Peter Mazsa, 19-Feb-2026.) (Revised by Peter Mazsa, 25-Feb-2026.) |
| ⊢ PetErs = {〈𝑟, 𝑛〉 ∣ ((𝑟 ∈ Rels ∧ 𝑛 ∈ CoMembErs ) ∧ ≀ (𝑟 ⋉ (◡ E ↾ 𝑛)) Ers 𝑛)} | ||
| 25-Feb-2026 | df-petparts 39658 |
Define the class of partition-side general partition-equivalence spans.
〈𝑟, 𝑛〉 ∈ PetParts means: (1) 𝑟 is a set-relation (𝑟 ∈ Rels), and (2) 𝑛 is a membership block-carrier (𝑛 ∈ MembParts), and (3) the block-lift span (𝑟 ⋉ (◡ E ↾ 𝑛)) is a generalized partition on its natural quotient-carrier 𝑛 (i.e. (𝑟 ⋉ (◡ E ↾ 𝑛)) Parts 𝑛). This is the horizontal feasibility base object on the partition side, expressed in the type-safe Parts language. The explicit typing (𝑟 ∈ Rels ∧ 𝑛 ∈ MembParts ) is included at the definition level so later modular refinements can treat typedness as a first-class component (e.g. intersecting a typedness module with disjointness and equilibrium modules) without repeatedly restating it. In particular, it lets decompositions such as dfpetparts2 39662 be written as clean intersections whose first conjunct is exactly the typedness module ( Rels × MembParts ). (Contributed by Peter Mazsa, 19-Feb-2026.) (Revised by Peter Mazsa, 25-Feb-2026.) |
| ⊢ PetParts = {〈𝑟, 𝑛〉 ∣ ((𝑟 ∈ Rels ∧ 𝑛 ∈ MembParts ) ∧ (𝑟 ⋉ (◡ E ↾ 𝑛)) Parts 𝑛)} | ||
| 25-Feb-2026 | bdayfinbndcbv 28696 | Lemma for bdayfinbnd 28699. Change some bound variables. (Contributed by Scott Fenton, 25-Feb-2026.) |
| ⊢ (𝜑 → 𝑁 ∈ ℕ0s) & ⊢ (𝜑 → ∀𝑧 ∈ No ((( bday ‘𝑧) ⊆ ( bday ‘𝑁) ∧ 0s ≤s 𝑧) → (𝑧 = 𝑁 ∨ ∃𝑥 ∈ ℕ0s ∃𝑦 ∈ ℕ0s ∃𝑝 ∈ ℕ0s (𝑧 = (𝑥 +s (𝑦 /su (2s↑s𝑝))) ∧ 𝑦 <s (2s↑s𝑝) ∧ (𝑥 +s 𝑝) <s 𝑁)))) ⇒ ⊢ (𝜑 → ∀𝑤 ∈ No ((( bday ‘𝑤) ⊆ ( bday ‘𝑁) ∧ 0s ≤s 𝑤) → (𝑤 = 𝑁 ∨ ∃𝑎 ∈ ℕ0s ∃𝑏 ∈ ℕ0s ∃𝑞 ∈ ℕ0s (𝑤 = (𝑎 +s (𝑏 /su (2s↑s𝑞))) ∧ 𝑏 <s (2s↑s𝑞) ∧ (𝑎 +s 𝑞) <s 𝑁)))) | ||
| 25-Feb-2026 | bdaypw2bnd 28695 | Birthday bounding rule for non-negative dyadic rationals. (Contributed by Scott Fenton, 25-Feb-2026.) |
| ⊢ (𝜑 → 𝑁 ∈ ℕ0s) & ⊢ (𝜑 → 𝑋 ∈ ℕ0s) & ⊢ (𝜑 → 𝑌 ∈ ℕ0s) & ⊢ (𝜑 → 𝑃 ∈ ℕ0s) & ⊢ (𝜑 → 𝑌 <s (2s↑s𝑃)) & ⊢ (𝜑 → (𝑋 +s 𝑃) <s 𝑁) ⇒ ⊢ (𝜑 → ( bday ‘(𝑋 +s (𝑌 /su (2s↑s𝑃)))) ⊆ ( bday ‘𝑁)) | ||
| 25-Feb-2026 | onlesd 28500 | Less-than or equal is the same as non-strict birthday comparison over surreal ordinals. Deduction version. (Contributed by Scott Fenton, 25-Feb-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ Ons) & ⊢ (𝜑 → 𝐵 ∈ Ons) ⇒ ⊢ (𝜑 → (𝐴 ≤s 𝐵 ↔ ( bday ‘𝐴) ⊆ ( bday ‘𝐵))) | ||
| 25-Feb-2026 | onltsd 28499 | Less-than is the same as birthday comparison over surreal ordinals. Deduction version. (Contributed by Scott Fenton, 25-Feb-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ Ons) & ⊢ (𝜑 → 𝐵 ∈ Ons) ⇒ ⊢ (𝜑 → (𝐴 <s 𝐵 ↔ ( bday ‘𝐴) ∈ ( bday ‘𝐵))) | ||
| 25-Feb-2026 | onles 28498 | Less-than or equal is the same as non-strict birthday comparison over surreal ordinals. (Contributed by Scott Fenton, 25-Feb-2026.) |
| ⊢ ((𝐴 ∈ Ons ∧ 𝐵 ∈ Ons) → (𝐴 ≤s 𝐵 ↔ ( bday ‘𝐴) ⊆ ( bday ‘𝐵))) | ||
| 25-Feb-2026 | lestri3d 27960 | Trichotomy law for surreal less-than or equal. Deduction version. (Contributed by Scott Fenton, 25-Feb-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ No ) & ⊢ (𝜑 → 𝐵 ∈ No ) ⇒ ⊢ (𝜑 → (𝐴 = 𝐵 ↔ (𝐴 ≤s 𝐵 ∧ 𝐵 ≤s 𝐴))) | ||
| 25-Feb-2026 | lesloed 27959 | Surreal less-than or equal in terms of less-than. Deduction version. (Contributed by Scott Fenton, 25-Feb-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ No ) & ⊢ (𝜑 → 𝐵 ∈ No ) ⇒ ⊢ (𝜑 → (𝐴 ≤s 𝐵 ↔ (𝐴 <s 𝐵 ∨ 𝐴 = 𝐵))) | ||
| 25-Feb-2026 | ltsnled 27958 | Surreal less-than in terms of less-than or equal. Deduction version. (Contributed by Scott Fenton, 25-Feb-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ No ) & ⊢ (𝜑 → 𝐵 ∈ No ) ⇒ ⊢ (𝜑 → (𝐴 <s 𝐵 ↔ ¬ 𝐵 ≤s 𝐴)) | ||
| 25-Feb-2026 | lesnltd 27957 | Surreal less-than or equal in terms of less-than. Deduction version. (Contributed by Scott Fenton, 25-Feb-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ No ) & ⊢ (𝜑 → 𝐵 ∈ No ) ⇒ ⊢ (𝜑 → (𝐴 ≤s 𝐵 ↔ ¬ 𝐵 <s 𝐴)) | ||
| 24-Feb-2026 | addsge01d 28246 | A surreal is less-than or equal to itself plus a non-negative surreal. (Contributed by Scott Fenton, 24-Feb-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ No ) & ⊢ (𝜑 → 𝐵 ∈ No ) ⇒ ⊢ (𝜑 → ( 0s ≤s 𝐵 ↔ 𝐴 ≤s (𝐴 +s 𝐵))) | ||
| 24-Feb-2026 | funcnvmpt 6998 | Condition for a function in maps-to notation to be single-rooted. (Contributed by Thierry Arnoux, 28-Feb-2017.) (Proof shortened by Peter Mazsa, 24-Feb-2026.) |
| ⊢ Ⅎ𝑥𝜑 & ⊢ Ⅎ𝑥𝐴 & ⊢ Ⅎ𝑥𝐹 & ⊢ 𝐹 = (𝑥 ∈ 𝐴 ↦ 𝐵) & ⊢ ((𝜑 ∧ 𝑥 ∈ 𝐴) → 𝐵 ∈ 𝑉) ⇒ ⊢ (𝜑 → (Fun ◡𝐹 ↔ ∀𝑦∃*𝑥 ∈ 𝐴 𝑦 = 𝐵)) | ||
| 24-Feb-2026 | bian1d 591 | Adding a superfluous conjunct in a biconditional. (Contributed by Thierry Arnoux, 26-Feb-2017.) (Proof shortened by Hongxiu Chen, 29-Jun-2025.) (Proof shortened by Peter Mazsa, 24-Feb-2026.) |
| ⊢ (𝜑 → (𝜓 ↔ (𝜒 ∧ 𝜃))) ⇒ ⊢ (𝜑 → ((𝜒 ∧ 𝜓) ↔ (𝜒 ∧ 𝜃))) | ||
| 23-Feb-2026 | pw2ltdivmuls2d 28687 | Surreal less-than relationship between division and multiplication for powers of two. (Contributed by Scott Fenton, 23-Feb-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ No ) & ⊢ (𝜑 → 𝐵 ∈ No ) & ⊢ (𝜑 → 𝑁 ∈ ℕ0s) ⇒ ⊢ (𝜑 → ((𝐴 /su (2s↑s𝑁)) <s 𝐵 ↔ 𝐴 <s (𝐵 ·s (2s↑s𝑁)))) | ||
| 23-Feb-2026 | n0lts1e0 28598 | A non-negative surreal integer is less than one iff it is zero. (Contributed by Scott Fenton, 23-Feb-2026.) |
| ⊢ (𝐴 ∈ ℕ0s → (𝐴 <s 1s ↔ 𝐴 = 0s )) | ||
| 23-Feb-2026 | cutminmax 28166 | If the left set of 𝑋 has a maximum and the right set of 𝑋 has a minimum, then 𝑋 is equal to the cut of the maximum and the minimum. (Contributed by Scott Fenton, 23-Feb-2026.) |
| ⊢ (𝜑 → 𝐿 ∈ ( L ‘𝑋)) & ⊢ (𝜑 → ∀𝑥 ∈ ( L ‘𝑋)𝑥 ≤s 𝐿) & ⊢ (𝜑 → 𝑅 ∈ ( R ‘𝑋)) & ⊢ (𝜑 → ∀𝑦 ∈ ( R ‘𝑋)𝑅 ≤s 𝑦) ⇒ ⊢ (𝜑 → 𝑋 = ({𝐿} |s {𝑅})) | ||
| 23-Feb-2026 | sltsbday 28147 | Birthday comparison rule for surreals. (Contributed by Scott Fenton, 23-Feb-2026.) |
| ⊢ (𝜑 → 𝐴 = (𝐿 |s 𝑅)) & ⊢ (𝜑 → 𝐵 ∈ No ) & ⊢ (𝜑 → 𝐿 <<s {𝐵}) & ⊢ (𝜑 → {𝐵} <<s 𝑅) ⇒ ⊢ (𝜑 → ( bday ‘𝐴) ⊆ ( bday ‘𝐵)) | ||
| 22-Feb-2026 | dfblockliftmap 39150 | Alternate definition of the block lift map. (Contributed by Peter Mazsa, 29-Jan-2026.) (Revised by Peter Mazsa, 22-Feb-2026.) |
| ⊢ (𝑅 BlockLiftMap 𝐴) = (𝑚 ∈ dom (𝑅 ⋉ (◡ E ↾ 𝐴)) ↦ [𝑚](𝑅 ⋉ (◡ E ↾ 𝐴))) | ||
| 22-Feb-2026 | df-blockliftmap 39149 |
Define the block lift map. Given a relation 𝑅 and a carrier/set
𝐴, we form the block relation (𝑅 ⋉
◡ E ) (i.e., "follow
both 𝑅 and element"), restricted to
𝐴
(or, equivalently, "follow
both 𝑅 and elements-of-A", cf. xrnres2 39116). Then map each domain
element 𝑚 to its coset [𝑚] under that restricted
block relation.
For 𝑚 in the domain, which requires (𝑚 ∈ 𝐴 ∧ 𝑚 ≠ ∅ ∧ [𝑚]𝑅 ≠ ∅) (cf. eldmxrncnvepres 39124), the fiber has the product form [𝑚](𝑅 ⋉ ◡ E ) = ([𝑚]𝑅 × 𝑚), so the block relation lifts a block 𝑚 to the rectangular grid "external labels × internal members", see dfblockliftmap2 39151. Contrast: while the adjoined lift, via (𝑅 ∪ ◡ E ), attaches neighbors and members in a single relation (see dfadjliftmap2 39147), the block lift labels each internal member by each external neighbor. For the general case and a two-stage construction (first block lift, then adjoin membership), see the comments to df-adjliftmap 39145. For the equilibrium condition, see df-blockliftfix 39171. (Contributed by Peter Mazsa, 24-Jan-2026.) (Revised by Peter Mazsa, 22-Feb-2026.) |
| ⊢ (𝑅 BlockLiftMap 𝐴) = QMap (𝑅 ⋉ (◡ E ↾ 𝐴)) | ||
| 22-Feb-2026 | dfadjliftmap 39146 | Alternate (expanded) definition of the adjoined lift map. (Contributed by Peter Mazsa, 28-Jan-2026.) (Revised by Peter Mazsa, 22-Feb-2026.) |
| ⊢ (𝑅 AdjLiftMap 𝐴) = (𝑚 ∈ dom ((𝑅 ∪ ◡ E ) ↾ 𝐴) ↦ [𝑚]((𝑅 ∪ ◡ E ) ↾ 𝐴)) | ||
| 22-Feb-2026 | df-adjliftmap 39145 |
Define the adjoined lift map. Given a relation 𝑅 and a carrier/set
𝐴, we form the adjoined relation (𝑅 ∪ ◡ E ) (i.e., "follow
𝑅 or follow elements"),
restricted to 𝐴, and map each domain
element 𝑚 to its coset [𝑚] under that restricted
adjoined
relation, see its expanded version dfadjliftmap 39146. Thus, for 𝑚 in
its domain, we have (𝑚 ∪ [𝑚]𝑅), see dfadjliftmap2 39147.
Its key special case is successor: for 𝑅 = I and 𝐴 = dom I, or 𝐴 = V, the adjoined relation is ( I ∪ ◡ E ), and the coset becomes [𝑚]( I ∪ ◡ E ) = (𝑚 ∪ {𝑚}). So ( I AdjLiftMap dom I ) or ( I AdjLiftMap V) (see dfsucmap2 39154 and dfsucmap3 39153) are exactly the successor map 𝑚 ↦ suc 𝑚 (cf. dfsucmap4 39155), which is a prerequisite for accepting the adjoining lift as the right generalization of successor. A maximally generic form would be "( R F LiftMap A )" defined as (𝑚 ∈ dom ((𝑅𝐹◡ E ) ↾ 𝐴) ↦ [𝑚]((𝑅𝐹◡ E ) ↾ 𝐴)) where 𝐹 is an object-level binary operator on relations (used via df-ov 7426). However, ∪ and ⋉ are introduced in set.mm as class constructors (e.g. df-un 3913), not as an object-level binary function symbol 𝐹 that can be passed as a parameter. To make the generic 𝐹-pattern literally usable, we would need to reify union and ⋉ as function-objects, which is additional infrastructure. To avoid introducing operator-as-function objects solely to support 𝐹, we define: AdjLiftMap directly using df-un 3913, and BlockLiftMap directly using the existing ⋉ constructor dfxrn2 39075, so we treat any "generic 𝐹-LiftMap" as optional future generalization, not a dependency. We prefer to avoid defining too many concepts. For this reason, we will not introduce a named "adjoining relation", a named carrier "adjoining lift" "( R AdjLift A )", in place of ran (𝑅 AdjLiftMap 𝐴), which is (dom ((𝑅 ∪ ◡ E ) ↾ 𝐴) / ((𝑅 ∪ ◡ E ) ↾ 𝐴)), cf. dfqs2 8710, or the equilibrium condition "AdjLiftFix" , in place of {〈𝑟, 𝑎〉 ∣ (dom ((𝑅 ∪ ◡ E ) ↾ 𝐴) / ((𝑅 ∪ ◡ E ) ↾ 𝐴)) = 𝑎} (cf. its analog df-blockliftfix 39171). These are definable by simple expansions and/or domain-quotient theorems when needed. A "two-stage" construction is obtained by first forming the block relation (𝑅 ⋉ ◡ E ) and then adjoining elements as "BlockAdj" . Combined, it uses the relation ((𝑅 ⋉ ◡ E ) ∪ ◡ E ), which for 𝑚 in its domain (𝐴 ∖ {∅}) gives (𝑚 ∪ [𝑚](𝑅 ⋉ ◡ E )), yielding "BlockAdjLiftMap" (cf. blockadjliftmap 39148) and "BlockAdjLiftFix". We only introduce these if a downstream theorem actually requires them. (Contributed by Peter Mazsa, 24-Jan-2026.) (Revised by Peter Mazsa, 22-Feb-2026.) |
| ⊢ (𝑅 AdjLiftMap 𝐴) = QMap ((𝑅 ∪ ◡ E ) ↾ 𝐴) | ||
| 22-Feb-2026 | z12bday 28715 | A dyadic fraction has a finite birthday. (Contributed by Scott Fenton, 20-Aug-2025.) (Proof shortened by Scott Fenton, 22-Feb-2026.) |
| ⊢ (𝐴 ∈ ℤs[1/2] → ( bday ‘𝐴) ∈ ω) | ||
| 22-Feb-2026 | z12bdaylem 28714 | Lemma for z12bday 28715. Handle the non-negative case. (Contributed by Scott Fenton, 22-Feb-2026.) |
| ⊢ ((𝐴 ∈ ℤs[1/2] ∧ 0s ≤s 𝐴) → ( bday ‘𝐴) ∈ ω) | ||
| 22-Feb-2026 | z12bdaylem2 28701 | Lemma for z12bday 28715. Show the first half of the equality. (Contributed by Scott Fenton, 22-Feb-2026.) |
| ⊢ (𝜑 → 𝑁 ∈ ℕ0s) & ⊢ (𝜑 → 𝑀 ∈ ℕ0s) & ⊢ (𝜑 → 𝑃 ∈ ℕ0s) & ⊢ (𝜑 → ((2s ·s 𝑀) +s 1s ) <s (2s↑s𝑃)) ⇒ ⊢ (𝜑 → ( bday ‘(𝑁 +s (((2s ·s 𝑀) +s 1s ) /su (2s↑s𝑃)))) ⊆ ( bday ‘((𝑁 +s 𝑃) +s 1s ))) | ||
| 22-Feb-2026 | z12bdaylem1 28700 | Lemma for z12bday 28715. Prove an inequality for birthday ordering. (Contributed by Scott Fenton, 22-Feb-2026.) |
| ⊢ (𝜑 → 𝑁 ∈ ℕ0s) & ⊢ (𝜑 → 𝑀 ∈ ℕ0s) & ⊢ (𝜑 → 𝑃 ∈ ℕ0s) & ⊢ (𝜑 → ((2s ·s 𝑀) +s 1s ) <s (2s↑s𝑃)) ⇒ ⊢ (𝜑 → (𝑁 +s (((2s ·s 𝑀) +s 1s ) /su (2s↑s𝑃))) ≠ (𝑁 +s 𝑃)) | ||
| 22-Feb-2026 | bdaypw2n0bnd 28694 | Upper bound for the birthday of a proper fraction of a power of two. This is actually a strict equality when 𝐴 is odd, but we do not need this for the rest of our development. (Contributed by Scott Fenton, 22-Feb-2026.) |
| ⊢ ((𝐴 ∈ ℕ0s ∧ 𝑁 ∈ ℕ0s ∧ 𝐴 <s (2s↑s𝑁)) → ( bday ‘(𝐴 /su (2s↑s𝑁))) ⊆ suc ( bday ‘𝑁)) | ||
| 22-Feb-2026 | onsbnd2 28512 | The surreals of a given birthday are bounded below by the negative of that ordinal. (Contributed by Scott Fenton, 22-Feb-2026.) |
| ⊢ ((𝐴 ∈ Ons ∧ 𝐵 ∈ ( M ‘( bday ‘𝐴))) → ( -us ‘𝐴) ≤s 𝐵) | ||
| 22-Feb-2026 | onsbnd 28511 | The surreals of a given birthday are bounded above by that ordinal. (Contributed by Scott Fenton, 22-Feb-2026.) |
| ⊢ ((𝐴 ∈ Ons ∧ 𝐵 ∈ ( M ‘( bday ‘𝐴))) → 𝐵 ≤s 𝐴) | ||
| 22-Feb-2026 | addonbday 28509 | The birthday of the sum of two ordinals is the natural sum of their birthdays. (Contributed by Scott Fenton, 22-Feb-2026.) |
| ⊢ ((𝐴 ∈ Ons ∧ 𝐵 ∈ Ons) → ( bday ‘(𝐴 +s 𝐵)) = (( bday ‘𝐴) +no ( bday ‘𝐵))) | ||
| 22-Feb-2026 | ons2ind 28505 | Double induction schema for surreal ordinals. (Contributed by Scott Fenton, 22-Feb-2026.) |
| ⊢ (𝑥 = 𝑥𝑂 → (𝜑 ↔ 𝜓)) & ⊢ (𝑦 = 𝑦𝑂 → (𝜓 ↔ 𝜒)) & ⊢ (𝑥 = 𝑥𝑂 → (𝜃 ↔ 𝜒)) & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜏)) & ⊢ (𝑦 = 𝐵 → (𝜏 ↔ 𝜂)) & ⊢ ((𝑥 ∈ Ons ∧ 𝑦 ∈ Ons) → ((∀𝑥𝑂 ∈ Ons ∀𝑦𝑂 ∈ Ons ((𝑥𝑂 <s 𝑥 ∧ 𝑦𝑂 <s 𝑦) → 𝜒) ∧ ∀𝑥𝑂 ∈ Ons (𝑥𝑂 <s 𝑥 → 𝜓) ∧ ∀𝑦𝑂 ∈ Ons (𝑦𝑂 <s 𝑦 → 𝜃)) → 𝜑)) ⇒ ⊢ ((𝐴 ∈ Ons ∧ 𝐵 ∈ Ons) → 𝜂) | ||
| 21-Feb-2026 | elz12si 28703 | Inference form of membership in the dyadic fractions. (Contributed by Scott Fenton, 21-Feb-2026.) |
| ⊢ ((𝐴 ∈ ℤs ∧ 𝑁 ∈ ℕ0s) → (𝐴 /su (2s↑s𝑁)) ∈ ℤs[1/2]) | ||
| 21-Feb-2026 | bdaypw2n0bndlem 28693 | Lemma for bdaypw2n0bnd 28694. Prove the case with a successor. (Contributed by Scott Fenton, 21-Feb-2026.) |
| ⊢ ((𝐴 ∈ ℕ0s ∧ 𝑁 ∈ ℕ0s ∧ 𝐴 <s (2s↑s(𝑁 +s 1s ))) → ( bday ‘(𝐴 /su (2s↑s(𝑁 +s 1s )))) ⊆ suc ( bday ‘(𝑁 +s 1s ))) | ||
| 21-Feb-2026 | pw2divsidd 28686 | Identity law for division over powers of two. (Contributed by Scott Fenton, 21-Feb-2026.) |
| ⊢ (𝜑 → 𝑁 ∈ ℕ0s) ⇒ ⊢ (𝜑 → ((2s↑s𝑁) /su (2s↑s𝑁)) = 1s ) | ||
| 21-Feb-2026 | pw2divs0d 28685 | Division into zero is zero for a power of two. (Contributed by Scott Fenton, 21-Feb-2026.) |
| ⊢ (𝜑 → 𝑁 ∈ ℕ0s) ⇒ ⊢ (𝜑 → ( 0s /su (2s↑s𝑁)) = 0s ) | ||
| 21-Feb-2026 | zcuts0 28638 | Either the left or right set of a surreal integer is empty. (Contributed by Scott Fenton, 21-Feb-2026.) |
| ⊢ (𝐴 ∈ ℤs → (( L ‘𝐴) = ∅ ∨ ( R ‘𝐴) = ∅)) | ||
| 21-Feb-2026 | negright 28289 | The right set of the negative of a surreal is the set of negatives of its left set. (Contributed by Scott Fenton, 21-Feb-2026.) |
| ⊢ (𝐴 ∈ No → ( R ‘( -us ‘𝐴)) = ( -us “ ( L ‘𝐴))) | ||
| 21-Feb-2026 | negleft 28288 | The left set of the negative of a surreal is the set of negatives of its right set. (Contributed by Scott Fenton, 21-Feb-2026.) |
| ⊢ (𝐴 ∈ No → ( L ‘( -us ‘𝐴)) = ( -us “ ( R ‘𝐴))) | ||
| 20-Feb-2026 | df-blockliftfix 39171 |
Define the equilibrium / fixed-point condition for "block carriers".
Start with a candidate block-family 𝑎 (a set whose elements you intend to treat as blocks). Combine it with a relation 𝑟 by forming the block-lift span 𝑇 = (𝑟 ⋉ (◡ E ↾ 𝑎)). For a block 𝑢 ∈ 𝑎, the fiber [𝑢]𝑇 is the set of all outputs produced from "external targets" of 𝑟 together with "internal members" of 𝑢; in other words, 𝑇 is the mechanism that generates new blocks from old ones. Now apply the standard quotient construction (dom 𝑇 / 𝑇). This produces the family of all T-blocks (the cosets [𝑥]𝑇 of witnesses 𝑥 in the domain of 𝑇). In general, this operation can change your carrier: starting from 𝑎, it may generate a different block-family (dom 𝑇 / 𝑇). The equation (dom (𝑟 ⋉ (◡ E ↾ 𝑎)) / (𝑟 ⋉ (◡ E ↾ 𝑎))) = 𝑎 says exactly: if you generate blocks from 𝑎 using the lift determined by 𝑟 (cf. df-blockliftmap 39149), you get back the same 𝑎. So 𝑎 is stable under the block-generation operator induced by 𝑟. This is why it is a genuine fixpoint/equilibrium condition: one application of the "make-the-blocks" operator causes no carrier drift, i.e. no hidden refinement/coarsening of what counts as a block. Here, the quotient (dom 𝑇 / 𝑇) is the standard carrier of 𝑇 -blocks; see dfqs2 8710 for the quotient-as-range viewpoint. This is an untyped equilibrium predicate on pairs 〈𝑟, 𝑎〉. No hypothesis 𝑟 ∈ Rels is built into the definition, because the fixpoint equation depends only on those ordered pairs 〈𝑥, 𝑦〉 that belong to 𝑟 and hence can witness an atomic instance 𝑥𝑟𝑦; extra non-ordered-pair "junk" elements in 𝑟 are ignored automatically by the relational membership predicate. When later work needs 𝑟 to be relation-typed (e.g. to intersect with ( Rels × V)-style typedness modules, or to apply Rels-based infrastructure uniformly), the additional typing constraint 𝑟 ∈ Rels should be imposed locally as a separate conjunct (rather than being baked into this equilibrium module). (Contributed by Peter Mazsa, 25-Jan-2026.) (Revised by Peter Mazsa, 20-Feb-2026.) |
| ⊢ BlockLiftFix = {〈𝑟, 𝑎〉 ∣ (dom (𝑟 ⋉ (◡ E ↾ 𝑎)) / (𝑟 ⋉ (◡ E ↾ 𝑎))) = 𝑎} | ||
| 20-Feb-2026 | n0ssoldg 28583 | The non-negative surreal integers are a subset of the old set of ω. To avoid the axiom of infinity, we include it as an antecedent. (Contributed by Scott Fenton, 20-Feb-2026.) |
| ⊢ (ω ∈ V → ℕ0s ⊆ ( O ‘ω)) | ||
| 20-Feb-2026 | infinf 10569 | Equivalence between two infiniteness criteria for sets. (Contributed by David Moews, 1-May-2017.) (Proof shortened by Scott Fenton, 20-Feb-2026.) |
| ⊢ (𝐴 ∈ 𝐵 → (¬ 𝐴 ∈ Fin ↔ ω ≼ 𝐴)) | ||
| 20-Feb-2026 | infinfg 10568 | Equivalence between two infiniteness criteria for sets. To avoid the axiom of infinity, we include it as a hypothesis. (Contributed by Scott Fenton, 20-Feb-2026.) |
| ⊢ ((ω ∈ V ∧ 𝐴 ∈ 𝐵) → (¬ 𝐴 ∈ Fin ↔ ω ≼ 𝐴)) | ||
| 19-Feb-2026 | pets2eq 39667 | Grade-stable generalized partition-equivalence identification. After applying the same grade-stability operator (SucMap ShiftStable) to both sides, the grade-stable pet classes still coincide. Confirms that the grade/tower infrastructure is orthogonal to the partition-vs-equivalence viewpoint: stability is preserved under the PetParts = PetErs identification. This is the level at which we can freely work on whichever side is more convenient (Parts for block discipline, Ers for equivalence reasoning), without changing the stable notion of "pet". (Contributed by Peter Mazsa, 19-Feb-2026.) |
| ⊢ Pet2Parts = Pet2Ers | ||
| 19-Feb-2026 | petseq 39666 |
Generalized partition-equivalence identification.
The partition-side scheme PetParts and the equivalence-side scheme PetErs define the same class of spans (pairs 〈𝑟, 𝑛〉). This plays the same organizational role for lifted spans that mpets 39646 plays for carriers: mpets 39646 identifies MembParts with CoMembErs at the membership-carrier level, while petseq 39666 identifies the corresponding span-level predicates built from Parts and Ers. Unlike the earlier broad pets 39656, the bridge used here is the type-safe span theorem typesafepets 39665, which restricts to membership block-carriers. Since typedness (𝑟 ∈ Rels and the appropriate carrier condition) is now built directly into PetParts and PetErs, this theorem can be used downstream without repeatedly re-establishing basic typing premises. (Contributed by Peter Mazsa, 19-Feb-2026.) |
| ⊢ PetParts = PetErs | ||
| 19-Feb-2026 | typesafepets 39665 | Type-safe pets 39656 scheme. On a membership block-carrier 𝐴 ∈ MembParts, the lifted span (𝑅 ⋉ (◡ E ↾ 𝐴)) yields a generalized partition of 𝐴 iff its coset relation yields an equivalence relation on the same carrier 𝐴. This is the type-safe replacement for the earlier broad pets 39656: it explicitly restricts to carriers where 𝐴 is already known to be a block-family (by MembParts). That removes the standard type-safety objection ("are you equating a quotient-carrier of blocks with raw witnesses?") by construction. It is the key bridge used to identify the partition-side and equivalence-side pet classes (petseq 39666), in complete parallel with the membership bridge mpets 39646. This theorem is intentionally not the definition of PetParts; it is the bridge used by petseq 39666 after typedness is enforced by the "Pet*" definitions. (Contributed by Peter Mazsa, 19-Feb-2026.) |
| ⊢ ((𝐴 ∈ MembParts ∧ 𝑅 ∈ 𝑉) → ((𝑅 ⋉ (◡ E ↾ 𝐴)) Parts 𝐴 ↔ ≀ (𝑅 ⋉ (◡ E ↾ 𝐴)) Ers 𝐴)) | ||
| 19-Feb-2026 | df-pet2ers 39661 | Define the class of grade- and blocklift-stable equivalence-side general partition-equivalence spans. The equivalence-side analogue of Pet2Parts: stability of PetErs under one-step grade shift along SucMap. Ensures that the equivalence-side formulation supports the same tower/grade infrastructure as the partition-side formulation. SucMap ShiftStable is the grade axis and does not change the equivalence-vs-partition viewpoint (reinforced by pets2eq 39667). (Contributed by Peter Mazsa, 19-Feb-2026.) |
| ⊢ Pet2Ers = ( SucMap ShiftStable PetErs ) | ||
| 19-Feb-2026 | df-pet2parts 39660 | Define the class of grade- and blocklift-stable partition-side general partition-equivalence spans. It consists of those 〈𝑟, 𝑛〉 ∈ PetParts such that 〈𝑟, 𝑛〉 remains in PetParts after shifting one grade along SucMap (via ShiftStable). Concretely: 〈𝑟, 𝑛〉 ∈ PetParts and there exists a predecessor 𝑚 with suc 𝑚 = 𝑛 such that 〈𝑟, 𝑚〉 ∈ PetParts (encoded by SucMap ∘ PetParts inside ShiftStable). I.e., it introduces the external (tower/grade) stability axis. This is the "4th level" for pet 39655 (see dfpet2parts2 39663): beyond (i) carrier membership partition, (ii) disjointness, and (iii) semantic equilibrium, we require (iv) stability under a canonical grade shift. PetParts already enforces disjointness and the quotient-carrier equation for the lifted span (hence semantic equilibrium via dfpetparts2 39662). Pet2Parts adds the external grade (tower) stability axis via df-shiftstable 39172 with SucMap. This (iv) is why we need explicit second-level Pet2Parts, while Disjs typically does not: Disjs already packages its own internal two-step consistency (carrier + map) by dfdisjs6 39632 / dfdisjs7 39633, whereas pet 39655 has an additional grade axis that must be imposed separately. (Contributed by Peter Mazsa, 19-Feb-2026.) |
| ⊢ Pet2Parts = ( SucMap ShiftStable PetParts ) | ||
| 19-Feb-2026 | shiftstableeq2 39173 | Equality theorem for shift-stability of two classes. (Contributed by Peter Mazsa, 19-Feb-2026.) |
| ⊢ (𝐹 = 𝐺 → (𝑆 ShiftStable 𝐹) = (𝑆 ShiftStable 𝐺)) | ||
| 19-Feb-2026 | ecqmap2 39140 | Fiber of QMap equals singleton quotient: a conceptual bridge between "map fibers" and quotients. (Contributed by Peter Mazsa, 19-Feb-2026.) |
| ⊢ (𝐴 ∈ dom 𝑅 → [𝐴] QMap 𝑅 = ({𝐴} / 𝑅)) | ||
| 19-Feb-2026 | bj-dfsbc 37315 | Proof of df-sbc 3748 when taking bj-df-sb 37313 as definition. (Contributed by BJ, 19-Feb-2026.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ (𝐴 ∈ {𝑥 ∣ 𝜑} ↔ [𝐴 / 𝑥]𝜑) | ||
| 19-Feb-2026 | bj-sbcex 37314 | Proof of sbcex 3757 when taking bj-df-sb 37313 as definition. (Contributed by BJ, 19-Feb-2026.) (Proof modification is discouraged.) (New usage is discouraged.) |
| ⊢ ([𝐴 / 𝑥]𝜑 → 𝐴 ∈ V) | ||
| 19-Feb-2026 | bj-df-sb 37313 | Proposed definition to replace df-sb 2100 and df-sbc 3748. Proof is therefore unimportant. Contrary to df-sb 2100, this definition makes a substituted formula false when one substitutes a non-existent object for a variable: this is better suited to the "Levy-style" treatment of classes as virtual objects adopted by set.mm. That difference is unimportant since as soon as ax6ev 2002 is posited, all variables "exist". (Contributed by BJ, 19-Feb-2026.) |
| ⊢ ([𝐴 / 𝑥]𝜑 ↔ ∃𝑦(𝑦 = 𝐴 ∧ ∀𝑥(𝑥 = 𝑦 → 𝜑))) | ||
| 19-Feb-2026 | renod 28723 | A surreal real is a surreal number. (Contributed by Scott Fenton, 19-Feb-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ ℝs) ⇒ ⊢ (𝜑 → 𝐴 ∈ No ) | ||
| 19-Feb-2026 | reno 28722 | A surreal real is a surreal number. (Contributed by Scott Fenton, 19-Feb-2026.) |
| ⊢ (𝐴 ∈ ℝs → 𝐴 ∈ No ) | ||
| 19-Feb-2026 | oldfib 28607 | The old set of an ordinal is finite iff the ordinal is finite. (Contributed by Scott Fenton, 19-Feb-2026.) |
| ⊢ (𝐴 ∈ On → (𝐴 ∈ ω ↔ ( O ‘𝐴) ∈ Fin)) | ||
| 19-Feb-2026 | ordfin 9210 | A generalization of onfin 9209 to include the class of all ordinals. (Contributed by Scott Fenton, 19-Feb-2026.) |
| ⊢ (Ord 𝐴 → (𝐴 ∈ Fin ↔ 𝐴 ∈ ω)) | ||
| 18-Feb-2026 | suceldisj 39508 | Disjointness of successor enforces element-carrier separation: If 𝐵 is the successor of 𝐴 and 𝐵 is element-disjoint as a family, then no element of 𝐴 can itself be a member of 𝐴 (equivalently, every 𝑥 ∈ 𝐴 has empty intersection with the carrier 𝐴). Provides a clean bridge between "disjoint family at the next grade" and "no block contains a block of the same family" at the previous grade: MembPart alone does not enforce this, see dfmembpart2 39563 (it gives disjoint blocks and excludes the empty block, but does not prevent 𝑢 ∈ 𝑚 from also being a member of the carrier 𝑚). This lemma is used to justify when grade-stability (via successor-shift) supplies the extra separation axioms needed in roof/root-style carrier reasoning. (Contributed by Peter Mazsa, 18-Feb-2026.) |
| ⊢ ((𝐴 ∈ 𝑉 ∧ ElDisj 𝐵 ∧ suc 𝐴 = 𝐵) → ∀𝑥 ∈ 𝐴 (𝑥 ∩ 𝐴) = ∅) | ||
| 18-Feb-2026 | wl-eujustlem1 38284 | Version of cbvexvw 2070 with references to ax-6 2000 listed as antecedents. (Contributed by Wolf Lammen, 18-Feb-2026.) |
| ⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ ((∀𝑦∃𝑥 𝑥 = 𝑦 ∧ ∀𝑥∃𝑦 𝑥 = 𝑦) → (∃𝑥𝜑 ↔ ∃𝑦𝜓)) | ||
| 18-Feb-2026 | noinfepregs 35570 | There are no infinite descending ∈-chains, proven using ax-regs 35563. (Contributed by BTernaryTau, 18-Feb-2026.) |
| ⊢ ∃𝑥 ∈ ω (𝐹‘suc 𝑥) ∉ (𝐹‘𝑥) | ||
| 18-Feb-2026 | noinfepfnregs 35569 | There are no infinite descending ∈-chains, proven using ax-regs 35563. (Contributed by BTernaryTau, 18-Feb-2026.) |
| ⊢ (𝐹 Fn ω → ∃𝑥 ∈ ω (𝐹‘suc 𝑥) ∉ (𝐹‘𝑥)) | ||
| 18-Feb-2026 | fineqvinfep 35562 | A counterexample demonstrating that tz9.1 9708 does not hold when all sets are finite and an infinite descending ∈-chain exists. (Contributed by BTernaryTau, 18-Feb-2026.) |
| ⊢ 𝐴 = {(𝐹‘∅)} ⇒ ⊢ ((Fin = V ∧ 𝐹:ω–1-1→V ∧ ∀𝑥 ∈ ω (𝐹‘suc 𝑥) ∈ (𝐹‘𝑥)) → ¬ ∃𝑦(𝐴 ⊆ 𝑦 ∧ Tr 𝑦)) | ||
| 18-Feb-2026 | 1reno 28727 | Surreal one is a surreal real. (Contributed by Scott Fenton, 18-Feb-2026.) |
| ⊢ 1s ∈ ℝs | ||
| 16-Feb-2026 | dfdisjs7 39633 | Alternate definition of the class of disjoints (via carrier disjointness + unique representatives). Ideology-free normal form of dfdisjs6 39632: "blocks cover their elements" (∃*) and "each block has a unique generator" (∃!), expressed entirely at the quotient-carrier level. Same class as dfdisjs6 39632, but presented in fully expanded ∃* / ∃! form over the quotient-carrier (dom 𝑟 / 𝑟). Makes explicit (a) element-disjointness of the quotient-carrier and (b) unique representative existence for each block. These are exactly the two conditions that rule out type-confusions (blocks vs witnesses) and ensure canonical decomposition. This is the form that best supports analogy arguments with df-petparts 39658 and with successor-style uniqueness patterns. (Contributed by Peter Mazsa, 16-Feb-2026.) |
| ⊢ Disjs = {𝑟 ∈ Rels ∣ (∀𝑥∃*𝑢 ∈ (dom 𝑟 / 𝑟)𝑥 ∈ 𝑢 ∧ ∀𝑢 ∈ (dom 𝑟 / 𝑟)∃!𝑡 ∈ dom 𝑟 𝑢 = [𝑡]𝑟)} | ||
| 16-Feb-2026 | dfdisjs6 39632 | Alternate definition of the class of disjoints (via quotient-map stability). Disjs is the class of relations 𝑟 whose quotient-map QMap 𝑟 is again disjoint and whose induced quotient-carrier is element-disjoint. This is the definitional "stability-by-decomposition" packaging of disjointness: it builds Disjs from two internal layers (i) a carrier-layer constraint and (ii) a map-layer closure constraint. This is deliberately different from "u R x" style definitions: it makes the carrier of blocks and the uniqueness-of-representatives discipline first-class and reusable (via QMap) rather than implicit. (Contributed by Peter Mazsa, 16-Feb-2026.) |
| ⊢ Disjs = {𝑟 ∈ Rels ∣ (ran QMap 𝑟 ∈ ElDisjs ∧ QMap 𝑟 ∈ Disjs )} | ||
| 16-Feb-2026 | eldisjs7 39631 |
Elementhood in the class of disjoints. 𝑅 ∈ Disjs iff:
𝑅 ∈ Rels, and every 𝑥 belongs to at most one block 𝑢 in the quotient-carrier (dom 𝑅 / 𝑅) (element-disjointness at the carrier), and every block 𝑢 in the quotient-carrier has a unique representative 𝑡 ∈ dom 𝑅 such that 𝑢 = [𝑡]𝑅. Provides the "fully expanded" quantifier characterization of the same decomposition as eldisjs6 39630, but without explicitly mentioning QMap. This is the "E*/E!"" view that is closest in spirit to suc11reg 9598-style injectivity and to the "unique generator per block" narrative. It is also the right contrast-point to older one-line criteria like dfdisjs4 39486 (the "u R x" style), because it makes the carrier and representation discipline explicit and type-safe. (Contributed by Peter Mazsa, 16-Feb-2026.) |
| ⊢ (𝑅 ∈ Disjs ↔ (𝑅 ∈ Rels ∧ (∀𝑥∃*𝑢 ∈ (dom 𝑅 / 𝑅)𝑥 ∈ 𝑢 ∧ ∀𝑢 ∈ (dom 𝑅 / 𝑅)∃!𝑡 ∈ dom 𝑅 𝑢 = [𝑡]𝑅))) | ||
| 16-Feb-2026 | eldisjs6 39630 |
Elementhood in the class of disjoints. A relation 𝑅 is in Disjs
iff:
it is relation-typed, and its quotient-map QMap 𝑅 is itself disjoint, and its quotient-carrier ran QMap 𝑅 = (dom 𝑅 / 𝑅) lies in ElDisjs (element-disjoint carriers). This is the central "stability-by-decomposition" theorem for Disjs: it explains why Disjs is internally well-behaved without adding an external stability clause. It is the exact template that PetParts imitates: for pet 39655, the analogue of "map layer" is the disjointness of the lifted span, the analogue of "carrier layer" is the block-lift fixpoint (BlockLiftFix), and then adds external grade stability (SucMap ShiftStable) which Disjs does not need. (Contributed by Peter Mazsa, 16-Feb-2026.) |
| ⊢ (𝑅 ∈ Disjs ↔ (𝑅 ∈ Rels ∧ (ran QMap 𝑅 ∈ ElDisjs ∧ QMap 𝑅 ∈ Disjs ))) | ||
| 16-Feb-2026 | rnqmapeleldisjsim 39552 | Element-disjointness of the quotient carrier forces coset disjointness. Supplies the "cosets don't overlap unless equal" direction, but expressed via ran QMap 𝑅 (the quotient carrier) and ElDisjs. This is the structural reason Disjs needs a "carrier disjointness" level distinct from the "unique representatives" level. (Contributed by Peter Mazsa, 16-Feb-2026.) |
| ⊢ ((𝑅 ∈ 𝑉 ∧ ran QMap 𝑅 ∈ ElDisjs ∧ (𝐴 ∈ dom 𝑅 ∧ 𝐵 ∈ dom 𝑅)) → (([𝐴]𝑅 ∩ [𝐵]𝑅) ≠ ∅ → [𝐴]𝑅 = [𝐵]𝑅)) | ||
| 16-Feb-2026 | qmapeldisjsbi 39551 | Injectivity of coset map from QMap being disjoint (biconditional form). Convenience version of qmapeldisjsim 39550. (Contributed by Peter Mazsa, 16-Feb-2026.) |
| ⊢ ((𝑅 ∈ 𝑉 ∧ QMap 𝑅 ∈ Disjs ∧ (𝐴 ∈ dom 𝑅 ∧ 𝐵 ∈ dom 𝑅)) → ([𝐴]𝑅 = [𝐵]𝑅 ↔ 𝐴 = 𝐵)) | ||
| 16-Feb-2026 | qmapeldisjsim 39550 | Injectivity of coset map from QMap being disjoint (implication form): under the Disjs condition on QMap 𝑅, the coset assignment is injective on dom 𝑅. (Contributed by Peter Mazsa, 16-Feb-2026.) |
| ⊢ ((𝑅 ∈ 𝑉 ∧ QMap 𝑅 ∈ Disjs ∧ (𝐴 ∈ dom 𝑅 ∧ 𝐵 ∈ dom 𝑅)) → ([𝐴]𝑅 = [𝐵]𝑅 → 𝐴 = 𝐵)) | ||
| 16-Feb-2026 | disjimeceqbi2 39497 | Injectivity of the block constructor under disjointness. suc11reg 9598 analogue: under disjointness, equal blocks force equal generators (on dom 𝑅). (Contributed by Peter Mazsa, 16-Feb-2026.) |
| ⊢ ( Disj 𝑅 → ((𝐴 ∈ dom 𝑅 ∧ 𝐵 ∈ dom 𝑅) → ([𝐴]𝑅 = [𝐵]𝑅 ↔ 𝐴 = 𝐵))) | ||
| 16-Feb-2026 | disjimeceqim2 39495 | Disj implies injectivity (pairwise form). The same content as disjimeceqim 39494 but packaged for direct use with explicit hypotheses (𝐴 ∈ dom 𝑅 ∧ 𝐵 ∈ dom 𝑅). (Contributed by Peter Mazsa, 16-Feb-2026.) |
| ⊢ ( Disj 𝑅 → ((𝐴 ∈ dom 𝑅 ∧ 𝐵 ∈ dom 𝑅) → ([𝐴]𝑅 = [𝐵]𝑅 → 𝐴 = 𝐵))) | ||
| 16-Feb-2026 | falseral0 4480 | A false statement can only be true for elements of an empty set. (Contributed by AV, 30-Oct-2020.) (Proof shortened by TM, 16-Feb-2026.) |
| ⊢ ((∀𝑥 ¬ 𝜑 ∧ ∀𝑥 ∈ 𝐴 𝜑) → 𝐴 = ∅) | ||
| 16-Feb-2026 | r19.3rzv 4469 | Restricted quantification of wff not containing quantified variable. (Contributed by NM, 10-Mar-1997.) Avoid ax-12 2216. (Revised by TM, 16-Feb-2026.) |
| ⊢ (𝐴 ≠ ∅ → (𝜑 ↔ ∀𝑥 ∈ 𝐴 𝜑)) | ||
| 15-Feb-2026 | eldisjsim5 39629 | Disjs is closed under QMap. If a relation is "disjoint-structured" (Disjs), then its canonical block map is also "disjoint-structured". This is the second "structure level" in Disjs: it expresses that the property is stable under passing to the canonical block map, a theme that mirrors Pet-grade stability at a different axis. (Contributed by Peter Mazsa, 15-Feb-2026.) |
| ⊢ (𝑅 ∈ Disjs → QMap 𝑅 ∈ Disjs ) | ||
| 15-Feb-2026 | eldisjsim4 39628 | Disjs implies element-disjoint range of QMap. Same as eldisjsim3 39627 but expressed using the block-map range ran QMap 𝑅 (often the more modular expression). (Contributed by Peter Mazsa, 15-Feb-2026.) |
| ⊢ (𝑅 ∈ Disjs → ran QMap 𝑅 ∈ ElDisjs ) | ||
| 15-Feb-2026 | vieta 34001 | Vieta's Formulas: Coefficients of a monic polynomial 𝐹 expressed as a product of linear polynomials of the form 𝑋 − 𝑍 can be expressed in terms of elementary symmetric polynomials. The formulas appear in Chapter 6 of [Lang], p. 190. Theorem vieta1 26510 is a special case for the complex numbers, for the case 𝐾 = 1. (Contributed by Thierry Arnoux, 15-Feb-2026.) |
| ⊢ 𝑊 = (Poly1‘𝑅) & ⊢ 𝐵 = (Base‘𝑅) & ⊢ − = (-g‘𝑊) & ⊢ 𝑀 = (mulGrp‘𝑊) & ⊢ 𝑄 = (𝐼 eval 𝑅) & ⊢ 𝐸 = (𝐼eSymPoly𝑅) & ⊢ 𝑁 = (invg‘𝑅) & ⊢ 1 = (1r‘𝑅) & ⊢ · = (.r‘𝑅) & ⊢ 𝑋 = (var1‘𝑅) & ⊢ 𝐴 = (algSc‘𝑊) & ⊢ ↑ = (.g‘(mulGrp‘𝑅)) & ⊢ 𝐻 = (♯‘𝐼) & ⊢ (𝜑 → 𝐼 ∈ Fin) & ⊢ (𝜑 → 𝑅 ∈ IDomn) & ⊢ (𝜑 → 𝑍:𝐼⟶𝐵) & ⊢ 𝐹 = (𝑀 Σg (𝑛 ∈ 𝐼 ↦ (𝑋 − (𝐴‘(𝑍‘𝑛))))) & ⊢ (𝜑 → 𝐾 ∈ (0...𝐻)) & ⊢ 𝐶 = (coe1‘𝐹) ⇒ ⊢ (𝜑 → (𝐶‘(𝐻 − 𝐾)) = ((𝐾 ↑ (𝑁‘ 1 )) · ((𝑄‘(𝐸‘𝐾))‘𝑍))) | ||
| 15-Feb-2026 | vietalem 34000 | Lemma for vieta 34001: induction step. (Contributed by Thierry Arnoux, 15-Feb-2026.) |
| ⊢ 𝑊 = (Poly1‘𝑅) & ⊢ 𝐵 = (Base‘𝑅) & ⊢ − = (-g‘𝑊) & ⊢ 𝑀 = (mulGrp‘𝑊) & ⊢ 𝑄 = (𝐼 eval 𝑅) & ⊢ 𝐸 = (𝐼eSymPoly𝑅) & ⊢ 𝑁 = (invg‘𝑅) & ⊢ 1 = (1r‘𝑅) & ⊢ · = (.r‘𝑅) & ⊢ 𝑋 = (var1‘𝑅) & ⊢ 𝐴 = (algSc‘𝑊) & ⊢ ↑ = (.g‘(mulGrp‘𝑅)) & ⊢ 𝐻 = (♯‘𝐼) & ⊢ (𝜑 → 𝐼 ∈ Fin) & ⊢ (𝜑 → 𝑅 ∈ IDomn) & ⊢ (𝜑 → 𝑍:𝐼⟶𝐵) & ⊢ 𝐹 = (𝑀 Σg (𝑛 ∈ 𝐼 ↦ (𝑋 − (𝐴‘(𝑍‘𝑛))))) & ⊢ (𝜑 → 𝐾 ∈ (0...𝐻)) & ⊢ (𝜑 → 𝑌 ∈ 𝐼) & ⊢ 𝐽 = (𝐼 ∖ {𝑌}) & ⊢ (𝜑 → ∀𝑧 ∈ (𝐵 ↑m 𝐽)∀𝑘 ∈ (0...(♯‘𝐽))((coe1‘(𝑀 Σg (𝑛 ∈ 𝐽 ↦ (𝑋 − (𝐴‘(𝑧‘𝑛))))))‘((♯‘𝐽) − 𝑘)) = ((𝑘 ↑ (𝑁‘ 1 )) · (((𝐽 eval 𝑅)‘((𝐽eSymPoly𝑅)‘𝑘))‘𝑧))) & ⊢ (𝜑 → ((deg1‘𝑅)‘(𝑀 Σg (𝑛 ∈ 𝐽 ↦ (𝑋 − (𝐴‘((𝑍 ↾ 𝐽)‘𝑛)))))) = (♯‘𝐽)) ⇒ ⊢ (𝜑 → ((coe1‘𝐹)‘𝐾) = (((𝐻 − 𝐾) ↑ (𝑁‘ 1 )) · ((𝑄‘(𝐸‘(𝐻 − 𝐾)))‘𝑍))) | ||
| 15-Feb-2026 | vietadeg1 33999 | The degree of a product of 𝐻 of linear polynomials of the form 𝑋 − 𝑍 is 𝐻. (Contributed by Thierry Arnoux, 15-Feb-2026.) |
| ⊢ 𝑊 = (Poly1‘𝑅) & ⊢ 𝐵 = (Base‘𝑅) & ⊢ − = (-g‘𝑊) & ⊢ 𝑀 = (mulGrp‘𝑊) & ⊢ 𝑄 = (𝐼 eval 𝑅) & ⊢ 𝐸 = (𝐼eSymPoly𝑅) & ⊢ 𝑁 = (invg‘𝑅) & ⊢ 1 = (1r‘𝑅) & ⊢ · = (.r‘𝑅) & ⊢ 𝑋 = (var1‘𝑅) & ⊢ 𝐴 = (algSc‘𝑊) & ⊢ ↑ = (.g‘(mulGrp‘𝑅)) & ⊢ 𝐻 = (♯‘𝐼) & ⊢ (𝜑 → 𝐼 ∈ Fin) & ⊢ (𝜑 → 𝑅 ∈ IDomn) & ⊢ (𝜑 → 𝑍:𝐼⟶𝐵) & ⊢ 𝐹 = (𝑀 Σg (𝑛 ∈ 𝐼 ↦ (𝑋 − (𝐴‘(𝑍‘𝑛))))) & ⊢ 𝐷 = (deg1‘𝑅) ⇒ ⊢ (𝜑 → (𝐷‘𝐹) = 𝐻) | ||
| 15-Feb-2026 | esplyfvn 33998 | Express the last elementary symmetric polynomial, evaluated at a given set of points 𝑍, in terms of the last elementary symmetric polynomial with one less variable. (Contributed by Thierry Arnoux, 15-Feb-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ + = (+g‘𝑅) & ⊢ · = (.r‘𝑅) & ⊢ 𝑄 = (𝐼 eval 𝑅) & ⊢ 𝑂 = (𝐽 eval 𝑅) & ⊢ 𝐸 = (𝐼eSymPoly𝑅) & ⊢ 𝐹 = (𝐽eSymPoly𝑅) & ⊢ 𝐻 = (♯‘𝐼) & ⊢ 𝐾 = (♯‘𝐽) & ⊢ 𝐽 = (𝐼 ∖ {𝑌}) & ⊢ (𝜑 → 𝐼 ∈ Fin) & ⊢ (𝜑 → 𝑅 ∈ CRing) & ⊢ (𝜑 → 𝑌 ∈ 𝐼) & ⊢ (𝜑 → 𝑍:𝐼⟶𝐵) ⇒ ⊢ (𝜑 → ((𝑄‘(𝐸‘𝐻))‘𝑍) = ((𝑍‘𝑌) · ((𝑂‘(𝐹‘𝐾))‘(𝑍 ↾ 𝐽)))) | ||
| 15-Feb-2026 | esplyindfv 33997 | A recursive formula for the elementary symmetric polynomials, evaluated at a given set of points 𝑍. (Contributed by Thierry Arnoux, 15-Feb-2026.) |
| ⊢ · = (.r‘𝑅) & ⊢ (𝜑 → 𝐼 ∈ Fin) & ⊢ (𝜑 → 𝑅 ∈ CRing) & ⊢ (𝜑 → 𝑌 ∈ 𝐼) & ⊢ 𝐽 = (𝐼 ∖ {𝑌}) & ⊢ 𝐸 = (𝐽eSymPoly𝑅) & ⊢ (𝜑 → 𝐾 ∈ (0...(♯‘𝐽))) & ⊢ 𝐶 = {ℎ ∈ (ℕ0 ↑m 𝐽) ∣ ℎ finSupp 0} & ⊢ 𝐹 = ((𝐼eSymPoly𝑅)‘(𝐾 + 1)) & ⊢ 𝐵 = (Base‘𝑅) & ⊢ 𝑄 = (𝐼 eval 𝑅) & ⊢ 𝑂 = (𝐽 eval 𝑅) & ⊢ + = (+g‘𝑅) & ⊢ (𝜑 → 𝑍:𝐼⟶𝐵) ⇒ ⊢ (𝜑 → ((𝑄‘𝐹)‘𝑍) = (((𝑍‘𝑌) · ((𝑂‘(𝐸‘𝐾))‘(𝑍 ↾ 𝐽))) + ((𝑂‘(𝐸‘(𝐾 + 1)))‘(𝑍 ↾ 𝐽)))) | ||
| 15-Feb-2026 | esplyfval0 33985 | The 0-th elementary symmetric polynomial is the constant 1. (Contributed by Thierry Arnoux, 15-Feb-2026.) |
| ⊢ (𝜑 → 𝐼 ∈ 𝑉) & ⊢ (𝜑 → 𝑅 ∈ Ring) & ⊢ 𝑈 = (1r‘(𝐼 mPoly 𝑅)) ⇒ ⊢ (𝜑 → ((𝐼eSymPoly𝑅)‘0) = 𝑈) | ||
| 15-Feb-2026 | evlextv 33963 | Evaluating a variable-extended polynomial is the same as evaluating the polynomial in the original set of variables (in both cases, the additionial variable is ignored). (Contributed by Thierry Arnoux, 15-Feb-2026.) |
| ⊢ 𝑄 = (𝐼 eval 𝑅) & ⊢ 𝑂 = (𝐽 eval 𝑅) & ⊢ 𝐽 = (𝐼 ∖ {𝑌}) & ⊢ 𝑀 = (Base‘(𝐽 mPoly 𝑅)) & ⊢ 𝐵 = (Base‘𝑅) & ⊢ 𝐸 = (𝐼extendVars𝑅) & ⊢ (𝜑 → 𝑅 ∈ CRing) & ⊢ (𝜑 → 𝐼 ∈ 𝑉) & ⊢ (𝜑 → 𝑌 ∈ 𝐼) & ⊢ (𝜑 → 𝐹 ∈ 𝑀) & ⊢ (𝜑 → 𝐴:𝐼⟶𝐵) ⇒ ⊢ (𝜑 → ((𝑄‘((𝐸‘𝑌)‘𝐹))‘𝐴) = ((𝑂‘𝐹)‘(𝐴 ↾ 𝐽))) | ||
| 15-Feb-2026 | evlvarval 33962 | Polynomial evaluation builder for a variable. (Contributed by Thierry Arnoux, 15-Feb-2026.) |
| ⊢ 𝑄 = (𝐼 eval 𝑆) & ⊢ 𝑃 = (𝐼 mPoly 𝑆) & ⊢ 𝐾 = (Base‘𝑆) & ⊢ 𝐵 = (Base‘𝑃) & ⊢ ∙ = (.r‘𝑃) & ⊢ · = (.r‘𝑆) & ⊢ (𝜑 → 𝐼 ∈ 𝑍) & ⊢ (𝜑 → 𝑆 ∈ CRing) & ⊢ (𝜑 → 𝐴 ∈ (𝐾 ↑m 𝐼)) & ⊢ 𝑉 = (𝐼 mVar 𝑆) & ⊢ (𝜑 → 𝑋 ∈ 𝐼) ⇒ ⊢ (𝜑 → ((𝑉‘𝑋) ∈ 𝐵 ∧ ((𝑄‘(𝑉‘𝑋))‘𝐴) = (𝐴‘𝑋))) | ||
| 15-Feb-2026 | evlscaval 33961 | Polynomial evaluation for scalars. See evlsscaval 22314. (Contributed by Thierry Arnoux, 15-Feb-2026.) |
| ⊢ 𝑄 = (𝐼 eval 𝑅) & ⊢ 𝑊 = (𝐼 mPoly 𝑅) & ⊢ 𝐵 = (Base‘𝑅) & ⊢ 𝐴 = (algSc‘𝑊) & ⊢ (𝜑 → 𝐼 ∈ 𝑉) & ⊢ (𝜑 → 𝑅 ∈ CRing) & ⊢ (𝜑 → 𝑋 ∈ 𝐵) & ⊢ (𝜑 → 𝐿:𝐼⟶𝐵) ⇒ ⊢ (𝜑 → ((𝑄‘(𝐴‘𝑋))‘𝐿) = 𝑋) | ||
| 15-Feb-2026 | gsummoncoe1fz 33919 | A coefficient of the polynomial represented as a sum of scaled monomials is the coefficient of the corresponding scaled monomial. See gsummoncoe1fzo 33918. (Contributed by Thierry Arnoux, 15-Feb-2026.) |
| ⊢ 𝑃 = (Poly1‘𝑅) & ⊢ 𝐵 = (Base‘𝑃) & ⊢ 𝑋 = (var1‘𝑅) & ⊢ ↑ = (.g‘(mulGrp‘𝑃)) & ⊢ (𝜑 → 𝑅 ∈ Ring) & ⊢ 𝐾 = (Base‘𝑅) & ⊢ ∗ = ( ·𝑠 ‘𝑃) & ⊢ (𝜑 → 𝐷 ∈ ℕ0) & ⊢ (𝜑 → ∀𝑘 ∈ (0...𝐷)𝐴 ∈ 𝐾) & ⊢ (𝜑 → 𝐿 ∈ (0...𝐷)) & ⊢ (𝑘 = 𝐿 → 𝐴 = 𝐶) ⇒ ⊢ (𝜑 → ((coe1‘(𝑃 Σg (𝑘 ∈ (0...𝐷) ↦ (𝐴 ∗ (𝑘 ↑ 𝑋)))))‘𝐿) = 𝐶) | ||
| 15-Feb-2026 | ply1coedeg 33910 | Decompose a univariate polynomial 𝐾 as a sum of powers, up to its degree 𝐷. (Contributed by Thierry Arnoux, 15-Feb-2026.) |
| ⊢ 𝑃 = (Poly1‘𝑅) & ⊢ 𝑋 = (var1‘𝑅) & ⊢ 𝐵 = (Base‘𝑃) & ⊢ · = ( ·𝑠 ‘𝑃) & ⊢ 𝑀 = (mulGrp‘𝑃) & ⊢ ↑ = (.g‘𝑀) & ⊢ 𝐴 = (coe1‘𝐾) & ⊢ 𝐷 = ((deg1‘𝑅)‘𝐾) & ⊢ (𝜑 → 𝑅 ∈ Ring) & ⊢ (𝜑 → 𝐾 ∈ 𝐵) ⇒ ⊢ (𝜑 → 𝐾 = (𝑃 Σg (𝑘 ∈ (0...𝐷) ↦ ((𝐴‘𝑘) · (𝑘 ↑ 𝑋))))) | ||
| 15-Feb-2026 | deg1prod 33904 | Degree of a product of polynomials. (Contributed by Thierry Arnoux, 15-Feb-2026.) |
| ⊢ 𝐷 = (deg1‘𝑅) & ⊢ 𝑃 = (Poly1‘𝑅) & ⊢ 𝐵 = (Base‘𝑃) & ⊢ 𝑀 = (mulGrp‘𝑃) & ⊢ 0 = (0g‘𝑃) & ⊢ (𝜑 → 𝐴 ∈ Fin) & ⊢ (𝜑 → 𝑅 ∈ IDomn) & ⊢ (𝜑 → 𝐹:𝐴⟶(𝐵 ∖ { 0 })) ⇒ ⊢ (𝜑 → (𝐷‘(𝑀 Σg 𝐹)) = Σ𝑘 ∈ 𝐴 (𝐷‘(𝐹‘𝑘))) | ||
| 15-Feb-2026 | assaassrd 33877 | Right-associative property of an associative algebra, deduction version. (Contributed by Thierry Arnoux, 15-Feb-2026.) |
| ⊢ 𝑉 = (Base‘𝑊) & ⊢ 𝐹 = (Scalar‘𝑊) & ⊢ 𝐵 = (Base‘𝐹) & ⊢ · = ( ·𝑠 ‘𝑊) & ⊢ × = (.r‘𝑊) & ⊢ (𝜑 → 𝑊 ∈ AssAlg) & ⊢ (𝜑 → 𝐴 ∈ 𝐵) & ⊢ (𝜑 → 𝑋 ∈ 𝑉) & ⊢ (𝜑 → 𝑌 ∈ 𝑉) ⇒ ⊢ (𝜑 → (𝑋 × (𝐴 · 𝑌)) = (𝐴 · (𝑋 × 𝑌))) | ||
| 15-Feb-2026 | assaassd 33876 | Left-associative property of an associative algebra, deduction version. (Contributed by Thierry Arnoux, 15-Feb-2026.) |
| ⊢ 𝑉 = (Base‘𝑊) & ⊢ 𝐹 = (Scalar‘𝑊) & ⊢ 𝐵 = (Base‘𝐹) & ⊢ · = ( ·𝑠 ‘𝑊) & ⊢ × = (.r‘𝑊) & ⊢ (𝜑 → 𝑊 ∈ AssAlg) & ⊢ (𝜑 → 𝐴 ∈ 𝐵) & ⊢ (𝜑 → 𝑋 ∈ 𝑉) & ⊢ (𝜑 → 𝑌 ∈ 𝑉) ⇒ ⊢ (𝜑 → ((𝐴 · 𝑋) × 𝑌) = (𝐴 · (𝑋 × 𝑌))) | ||
| 15-Feb-2026 | domnprodeq0 33630 | A product over a domain is zero exactly when one of the factors is zero. Generalization of domneq0 20844 for any number of factors. See also domnprodn0 33629. (Contributed by Thierry Arnoux, 15-Feb-2026.) |
| ⊢ 𝑀 = (mulGrp‘𝑅) & ⊢ 𝐵 = (Base‘𝑅) & ⊢ 0 = (0g‘𝑅) & ⊢ (𝜑 → 𝑅 ∈ IDomn) & ⊢ (𝜑 → 𝐴 ∈ Fin) & ⊢ (𝜑 → 𝐹:𝐴⟶𝐵) ⇒ ⊢ (𝜑 → ((𝑀 Σg 𝐹) = 0 ↔ 0 ∈ ran 𝐹)) | ||
| 15-Feb-2026 | ringm1expp1 33584 | Ring exponentiation of minus one: Adding one to the exponent is the same as taking the additive inverse. (Contributed by Thierry Arnoux, 15-Feb-2026.) |
| ⊢ 1 = (1r‘𝑅) & ⊢ 𝑁 = (invg‘𝑅) & ⊢ ↑ = (.g‘(mulGrp‘𝑅)) & ⊢ (𝜑 → 𝑅 ∈ Ring) & ⊢ (𝜑 → 𝐾 ∈ ℕ0) ⇒ ⊢ (𝜑 → ((𝐾 + 1) ↑ (𝑁‘ 1 )) = (𝑁‘(𝐾 ↑ (𝑁‘ 1 )))) | ||
| 15-Feb-2026 | ringrngd 33580 | A unital ring is a non-unital ring, deduction version. (Contributed by Thierry Arnoux, 15-Feb-2026.) |
| ⊢ (𝜑 → 𝑅 ∈ Ring) ⇒ ⊢ (𝜑 → 𝑅 ∈ Rng) | ||
| 15-Feb-2026 | gsummulsubdishift2s 33422 | Distribute a subtraction over an indexed sum, shift one of the resulting sums, and regroup terms. (Contributed by Thierry Arnoux, 15-Feb-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ + = (+g‘𝑅) & ⊢ − = (-g‘𝑅) & ⊢ · = (.r‘𝑅) & ⊢ (𝜑 → 𝑅 ∈ Ring) & ⊢ (𝜑 → 𝐴 ∈ 𝐵) & ⊢ (𝜑 → 𝐶 ∈ 𝐵) & ⊢ (𝜑 → 𝑁 ∈ ℕ0) & ⊢ ((𝜑 ∧ 𝑖 ∈ (0...𝑁)) → 𝑉 ∈ 𝐵) & ⊢ (𝑖 = 0 → 𝑉 = 𝐺) & ⊢ (𝑖 = 𝑁 → 𝑉 = 𝐻) & ⊢ (𝑖 = 𝑘 → 𝑉 = 𝑃) & ⊢ (𝑖 = (𝑘 + 1) → 𝑉 = 𝑄) & ⊢ (𝜑 → 𝐸 = ((𝐺 · 𝐴) − (𝐻 · 𝐶))) & ⊢ ((𝜑 ∧ 𝑘 ∈ (0..^𝑁)) → 𝐹 = ((𝑄 · 𝐴) − (𝑃 · 𝐶))) ⇒ ⊢ (𝜑 → ((𝑅 Σg (𝑘 ∈ (0...𝑁) ↦ 𝑃)) · (𝐴 − 𝐶)) = ((𝑅 Σg (𝑘 ∈ (0..^𝑁) ↦ 𝐹)) + 𝐸)) | ||
| 15-Feb-2026 | gsummulsubdishift1s 33421 | Distribute a subtraction over an indexed sum, shift one of the resulting sums, and regroup terms. (Contributed by Thierry Arnoux, 15-Feb-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ + = (+g‘𝑅) & ⊢ − = (-g‘𝑅) & ⊢ · = (.r‘𝑅) & ⊢ (𝜑 → 𝑅 ∈ Ring) & ⊢ (𝜑 → 𝐴 ∈ 𝐵) & ⊢ (𝜑 → 𝐶 ∈ 𝐵) & ⊢ (𝜑 → 𝑁 ∈ ℕ0) & ⊢ ((𝜑 ∧ 𝑖 ∈ (0...𝑁)) → 𝑉 ∈ 𝐵) & ⊢ (𝑖 = 0 → 𝑉 = 𝐺) & ⊢ (𝑖 = 𝑁 → 𝑉 = 𝐻) & ⊢ (𝑖 = 𝑘 → 𝑉 = 𝑃) & ⊢ (𝑖 = (𝑘 + 1) → 𝑉 = 𝑄) & ⊢ (𝜑 → 𝐸 = ((𝐻 · 𝐴) − (𝐺 · 𝐶))) & ⊢ ((𝜑 ∧ 𝑘 ∈ (0..^𝑁)) → 𝐹 = ((𝑃 · 𝐴) − (𝑄 · 𝐶))) ⇒ ⊢ (𝜑 → ((𝑅 Σg (𝑘 ∈ (0...𝑁) ↦ 𝑃)) · (𝐴 − 𝐶)) = ((𝑅 Σg (𝑘 ∈ (0..^𝑁) ↦ 𝐹)) + 𝐸)) | ||
| 15-Feb-2026 | gsummulsubdishift2 33420 | Distribute a subtraction over an indexed sum, shift one of the resulting sums, and regroup terms. (Contributed by Thierry Arnoux, 15-Feb-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ + = (+g‘𝑅) & ⊢ − = (-g‘𝑅) & ⊢ · = (.r‘𝑅) & ⊢ (𝜑 → 𝑅 ∈ Ring) & ⊢ (𝜑 → 𝐴 ∈ 𝐵) & ⊢ (𝜑 → 𝐶 ∈ 𝐵) & ⊢ (𝜑 → 𝑁 ∈ ℕ0) & ⊢ (𝜑 → 𝐷:(0...𝑁)⟶𝐵) & ⊢ (𝜑 → 𝐸 = (((𝐷‘0) · 𝐴) − ((𝐷‘𝑁) · 𝐶))) & ⊢ ((𝜑 ∧ 𝑘 ∈ (0..^𝑁)) → 𝐹 = (((𝐷‘(𝑘 + 1)) · 𝐴) − ((𝐷‘𝑘) · 𝐶))) ⇒ ⊢ (𝜑 → ((𝑅 Σg 𝐷) · (𝐴 − 𝐶)) = ((𝑅 Σg (𝑘 ∈ (0..^𝑁) ↦ 𝐹)) + 𝐸)) | ||
| 15-Feb-2026 | gsummulsubdishift1 33419 | Distribute a subtraction over an indexed sum, shift one of the resulting sums, and regroup terms. (Contributed by Thierry Arnoux, 15-Feb-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ + = (+g‘𝑅) & ⊢ − = (-g‘𝑅) & ⊢ · = (.r‘𝑅) & ⊢ (𝜑 → 𝑅 ∈ Ring) & ⊢ (𝜑 → 𝐴 ∈ 𝐵) & ⊢ (𝜑 → 𝐶 ∈ 𝐵) & ⊢ (𝜑 → 𝑁 ∈ ℕ0) & ⊢ (𝜑 → 𝐷:(0...𝑁)⟶𝐵) & ⊢ (𝜑 → 𝐸 = (((𝐷‘𝑁) · 𝐴) − ((𝐷‘0) · 𝐶))) & ⊢ ((𝜑 ∧ 𝑘 ∈ (0..^𝑁)) → 𝐹 = (((𝐷‘𝑘) · 𝐴) − ((𝐷‘(𝑘 + 1)) · 𝐶))) ⇒ ⊢ (𝜑 → ((𝑅 Σg 𝐷) · (𝐴 − 𝐶)) = ((𝑅 Σg (𝑘 ∈ (0..^𝑁) ↦ 𝐹)) + 𝐸)) | ||
| 15-Feb-2026 | gsummptfzsplitla 33410 | Split a group sum expressed as mapping with a finite set of sequential integers as domain into two parts, extracting a singleton from the left. (Contributed by Thierry Arnoux, 15-Feb-2026.) |
| ⊢ 𝐵 = (Base‘𝐺) & ⊢ + = (+g‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ CMnd) & ⊢ (𝜑 → 𝑁 ∈ (ℤ≥‘𝑀)) & ⊢ ((𝜑 ∧ 𝑘 ∈ (𝑀...𝑁)) → 𝑌 ∈ 𝐵) & ⊢ ((𝜑 ∧ 𝑘 = 𝑀) → 𝑌 = 𝑋) ⇒ ⊢ (𝜑 → (𝐺 Σg (𝑘 ∈ (𝑀...𝑁) ↦ 𝑌)) = (𝑋 + (𝐺 Σg (𝑘 ∈ ((𝑀 + 1)...𝑁) ↦ 𝑌)))) | ||
| 15-Feb-2026 | gsummptfzsplitra 33409 | Split a group sum expressed as mapping with a finite set of sequential integers as domain into two parts, extracting a singleton from the right. (Contributed by Thierry Arnoux, 15-Feb-2026.) |
| ⊢ 𝐵 = (Base‘𝐺) & ⊢ + = (+g‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ CMnd) & ⊢ (𝜑 → 𝑁 ∈ (ℤ≥‘𝑀)) & ⊢ ((𝜑 ∧ 𝑘 ∈ (𝑀...𝑁)) → 𝑌 ∈ 𝐵) & ⊢ ((𝜑 ∧ 𝑘 = 𝑁) → 𝑌 = 𝑋) ⇒ ⊢ (𝜑 → (𝐺 Σg (𝑘 ∈ (𝑀...𝑁) ↦ 𝑌)) = ((𝐺 Σg (𝑘 ∈ (𝑀..^𝑁) ↦ 𝑌)) + 𝑋)) | ||
| 15-Feb-2026 | gsummptp1 33408 | Reindex a zero-based sum as a one-base sum. (Contributed by Thierry Arnoux, 15-Feb-2026.) |
| ⊢ 𝐵 = (Base‘𝑅) & ⊢ (𝜑 → 𝑅 ∈ CMnd) & ⊢ (𝜑 → 𝑁 ∈ ℕ0) & ⊢ ((𝜑 ∧ 𝑙 ∈ (1...𝑁)) → 𝑌 ∈ 𝐵) & ⊢ (((𝜑 ∧ 𝑘 ∈ (0..^𝑁)) ∧ 𝑙 = (𝑘 + 1)) → 𝑌 = 𝑋) ⇒ ⊢ (𝜑 → (𝑅 Σg (𝑘 ∈ (0..^𝑁) ↦ 𝑋)) = (𝑅 Σg (𝑙 ∈ (1...𝑁) ↦ 𝑌))) | ||
| 15-Feb-2026 | gsummptrev 33407 | Revert ordering in a group sum. See also gsumwrev 19467. (Contributed by Thierry Arnoux, 15-Feb-2026.) |
| ⊢ 𝐵 = (Base‘𝑀) & ⊢ (𝜑 → 𝑀 ∈ CMnd) & ⊢ (𝜑 → 𝑁 ∈ ℕ0) & ⊢ ((𝜑 ∧ 𝑘 ∈ (0...𝑁)) → 𝑋 ∈ 𝐵) & ⊢ (((𝜑 ∧ 𝑙 ∈ (0...𝑁)) ∧ 𝑘 = (𝑁 − 𝑙)) → 𝑋 = 𝑌) ⇒ ⊢ (𝜑 → (𝑀 Σg (𝑘 ∈ (0...𝑁) ↦ 𝑋)) = (𝑀 Σg (𝑙 ∈ (0...𝑁) ↦ 𝑌))) | ||
| 15-Feb-2026 | gsummptfsres 33405 | Extend a finitely supported group sum by padding outside with zeroes. (Contributed by Thierry Arnoux, 15-Feb-2026.) |
| ⊢ 𝐵 = (Base‘𝐺) & ⊢ 0 = (0g‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ CMnd) & ⊢ (𝜑 → 𝐴 ∈ 𝑉) & ⊢ ((𝜑 ∧ 𝑥 ∈ (𝐴 ∖ 𝑆)) → 𝑌 = 0 ) & ⊢ (𝜑 → (𝑥 ∈ 𝐴 ↦ 𝑌) finSupp 0 ) & ⊢ ((𝜑 ∧ 𝑥 ∈ 𝐴) → 𝑌 ∈ 𝐵) & ⊢ (𝜑 → 𝑆 ⊆ 𝐴) ⇒ ⊢ (𝜑 → (𝐺 Σg (𝑥 ∈ 𝐴 ↦ 𝑌)) = (𝐺 Σg (𝑥 ∈ 𝑆 ↦ 𝑌))) | ||
| 15-Feb-2026 | ablcomd 33396 | An abelian group operation is commutative, deduction version. (Contributed by Thierry Arnoux, 15-Feb-2026.) |
| ⊢ 𝐵 = (Base‘𝐺) & ⊢ + = (+g‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ Abel) & ⊢ (𝜑 → 𝑋 ∈ 𝐵) & ⊢ (𝜑 → 𝑌 ∈ 𝐵) ⇒ ⊢ (𝜑 → (𝑋 + 𝑌) = (𝑌 + 𝑋)) | ||
| 15-Feb-2026 | grpinvinvd 33391 | Double inverse law for groups. (Contributed by Thierry Arnoux, 15-Feb-2026.) |
| ⊢ 𝐵 = (Base‘𝐺) & ⊢ 𝑁 = (invg‘𝐺) & ⊢ (𝜑 → 𝐺 ∈ Grp) & ⊢ (𝜑 → 𝑋 ∈ 𝐵) ⇒ ⊢ (𝜑 → (𝑁‘(𝑁‘𝑋)) = 𝑋) | ||
| 15-Feb-2026 | indsn 33220 | The indicator function of a singleton. (Contributed by Thierry Arnoux, 15-Feb-2026.) |
| ⊢ ((𝑂 ∈ 𝑉 ∧ 𝑋 ∈ 𝑂) → ((𝟭‘𝑂)‘{𝑋}) = (𝑥 ∈ 𝑂 ↦ if(𝑥 = 𝑋, 1, 0))) | ||
| 15-Feb-2026 | nn0mnfxrd 33133 | Nonnegative integers or minus infinity are extended real numbers. (Contributed by Thierry Arnoux, 15-Feb-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ (ℕ0 ∪ {-∞})) ⇒ ⊢ (𝜑 → 𝐴 ∈ ℝ*) | ||
| 15-Feb-2026 | fresunsn 33007 | Recover the original function from a point-added function. See also funresdfunsn 7194 and fsnunres 7193. (Contributed by Thierry Arnoux, 15-Feb-2026.) |
| ⊢ ((𝐹 Fn 𝐴 ∧ 𝑋 ∈ 𝐴 ∧ (𝐹‘𝑋) = 𝑌) → ((𝐹 ↾ (𝐴 ∖ {𝑋})) ∪ {〈𝑋, 𝑌〉}) = 𝐹) | ||
| 15-Feb-2026 | dfmo 2571 | Simplify definition df-mo 2570 by removing its provable hypothesis. (Contributed by Wolf Lammen, 15-Feb-2026.) |
| ⊢ (∃*𝑥𝜑 ↔ ∃𝑦∀𝑥(𝜑 → 𝑥 = 𝑦)) | ||
| 14-Feb-2026 | dmqmap 39143 | QMap preserves the domain. Confirms that QMap is defined exactly on the points where cosets [𝑥]𝑅 make sense (those in dom 𝑅). (Contributed by Peter Mazsa, 14-Feb-2026.) |
| ⊢ (𝑅 ∈ 𝑉 → dom QMap 𝑅 = dom 𝑅) | ||
| 14-Feb-2026 | ecqmap 39139 | QMap fibers are singletons of blocks. Makes QMap behave like a "block constructor function" on dom 𝑅. (Contributed by Peter Mazsa, 14-Feb-2026.) |
| ⊢ (𝐴 ∈ dom 𝑅 → [𝐴] QMap 𝑅 = {[𝐴]𝑅}) | ||
| 14-Feb-2026 | dfqmap3 39138 | Alternate definition of the quotient map: QMap as ordered-pair class abstraction. Gives the raw set-builder characterization for extensional proofs, Rel proofs (relqmap 39142), and composition/intersection manipulations. (Contributed by Peter Mazsa, 14-Feb-2026.) |
| ⊢ QMap 𝑅 = {〈𝑥, 𝑦〉 ∣ (𝑥 ∈ dom 𝑅 ∧ 𝑦 = [𝑥]𝑅)} | ||
| 14-Feb-2026 | dfqmap2 39137 | Alternate definition of the quotient map: QMap in image-of-singleton form. (Contributed by Peter Mazsa, 14-Feb-2026.) |
| ⊢ QMap 𝑅 = (𝑥 ∈ dom 𝑅 ↦ (𝑅 “ {𝑥})) | ||
| 12-Feb-2026 | disjqmap 39517 | Disjointness of QMap equals unique generation of the quotient carrier. The cleaned, carrier-respecting version of disjqmap2 39516. This is the statement "each equivalence class has a unique representative" for the general coset carrier (dom 𝑅 / 𝑅). (Contributed by Peter Mazsa, 12-Feb-2026.) |
| ⊢ (𝑅 ∈ 𝑉 → ( Disj QMap 𝑅 ↔ ∀𝑢 ∈ (dom 𝑅 / 𝑅)∃!𝑡 ∈ dom 𝑅 𝑢 = [𝑡]𝑅)) | ||
| 12-Feb-2026 | disjqmap2 39516 | Disjointness of QMap equals ∃*-generation. Pairs with disjqmap 39517 and raldmqseu 39055 to move between ∃* and ∃! depending on context. (Contributed by Peter Mazsa, 12-Feb-2026.) |
| ⊢ (𝑅 ∈ 𝑉 → ( Disj QMap 𝑅 ↔ ∀𝑢∃*𝑡 ∈ dom 𝑅 𝑢 = [𝑡]𝑅)) | ||
| 12-Feb-2026 | qmapeldisjs 39515 | When 𝑅 is a set (e.g., when it is an element of the class of relations df-rels 39130), the quotient map element of the class of disjoint relations and the disjoint relation predicate for quotient maps are the same. (Contributed by Peter Mazsa, 12-Feb-2026.) |
| ⊢ (𝑅 ∈ 𝑉 → ( QMap 𝑅 ∈ Disjs ↔ Disj QMap 𝑅)) | ||
| 12-Feb-2026 | rnqmap 39144 | The range of the quotient map is the quotient carrier. It lets us replace quotient-carrier reasoning by map/range reasoning (and conversely) via df-qmap 39136 and dfqs2 8710. (Contributed by Peter Mazsa, 12-Feb-2026.) |
| ⊢ ran QMap 𝑅 = (dom 𝑅 / 𝑅) | ||
| 12-Feb-2026 | relqmap 39142 | Quotient map is a relation. Guarantees that QMap can be composed, restricted, and used in other relation infrastructure (e.g., membership in Disjs, Rels-based typing). (Contributed by Peter Mazsa, 12-Feb-2026.) |
| ⊢ Rel QMap 𝑅 | ||
| 12-Feb-2026 | qmapex 39141 | Quotient map exists if 𝑅 exists. Type-safety: ensures QMap is a set under the standard "relation sethood" hypothesis. (Contributed by Peter Mazsa, 12-Feb-2026.) |
| ⊢ (𝑅 ∈ 𝑉 → QMap 𝑅 ∈ V) | ||
| 12-Feb-2026 | df-qmap 39136 |
Define the quotient map (coset map), see also dfqmap2 39137 and dfqmap3 39138.
QMap 𝑅 is the "send a generator /
domain element to its 𝑅
-coset" map: it maps each 𝑥 ∈ dom 𝑅 to the block [𝑥]𝑅.
Makes the quotient operation /
structurally explicit as the range
of a canonical map (see dfqs2 8710, rnqmap 39144). This is crucial for
(i) modular "two-layer" characterizations (map layer + carrier layer) such as dfdisjs6 39632 / dfdisjs7 39633, (ii) transport of properties between a relation and its induced quotient-carrier (e.g. "elements are blocks" via rnqmap 39144), and (iii) expressing stability/invariance constraints as ordinary conditions on a graph (e.g. ran QMap 𝑟 ∈ ElDisjs, QMap 𝑟 ∈ Disjs). (Contributed by Peter Mazsa, 12-Feb-2026.) |
| ⊢ QMap 𝑅 = (𝑥 ∈ dom 𝑅 ↦ [𝑥]𝑅) | ||
| 11-Feb-2026 | nfale2 43026 | An inner existential quantifier's variable is bound. (Contributed by SN, 11-Feb-2026.) |
| ⊢ Ⅎ𝑥∀𝑦∃𝑥𝜑 | ||
| 11-Feb-2026 | nfe2 43025 | An inner existential quantifier's variable is bound. (Contributed by SN, 11-Feb-2026.) |
| ⊢ Ⅎ𝑥∃𝑦∃𝑥𝜑 | ||
| 11-Feb-2026 | nfalh 43024 | Version of nfal 2359 with an 'h' hypothesis, avoiding ax-12 2216. (Contributed by SN, 11-Feb-2026.) |
| ⊢ (𝜑 → ∀𝑥𝜑) ⇒ ⊢ Ⅎ𝑥∀𝑦𝜑 | ||
| 11-Feb-2026 | eldisjsim3 39627 | Disjs implies element-disjoint quotient carrier. Exports the carrier-disjointness property in the ElDisjs packaging. (Contributed by Peter Mazsa, 11-Feb-2026.) |
| ⊢ (𝑅 ∈ Disjs → (dom 𝑅 / 𝑅) ∈ ElDisjs ) | ||
| 11-Feb-2026 | disjsssrels 39626 | The class of disjoint relations is a subclass of the class of relations. (Contributed by Peter Mazsa, 11-Feb-2026.) |
| ⊢ Disjs ⊆ Rels | ||
| 11-Feb-2026 | eldisjsim2 39625 | An element of the class of disjoint relations is an element of the class of relations. (Contributed by Peter Mazsa, 11-Feb-2026.) |
| ⊢ (𝑅 ∈ Disjs → 𝑅 ∈ Rels ) | ||
| 11-Feb-2026 | eldisjsim1 39624 | An element of the class of disjoint relations is disjoint. (Contributed by Peter Mazsa, 11-Feb-2026.) |
| ⊢ (𝑅 ∈ Disjs → Disj 𝑅) | ||
| 11-Feb-2026 | nfexa2 2215 | An inner universal quantifier's variable is bound. (Contributed by SN, 11-Feb-2026.) |
| ⊢ Ⅎ𝑥∃𝑦∀𝑥𝜑 | ||
| 11-Feb-2026 | nfexhe 2214 | Version of nfex 2360 with the existential dual to the 'h' hypothesis, avoiding ax-12 2216. (Contributed by SN, 11-Feb-2026.) |
| ⊢ (∃𝑥𝜑 → 𝜑) ⇒ ⊢ Ⅎ𝑥∃𝑦𝜑 | ||
| 10-Feb-2026 | eldisjdmqsim 39507 | Shared output implies equal cosets (under ElDisj of quotient): if 𝑢 and 𝑣 both relate to the same 𝑥, then their cosets intersect, hence must coincide under quotient ElDisj. (Contributed by Peter Mazsa, 10-Feb-2026.) |
| ⊢ (( ElDisj (dom 𝑅 / 𝑅) ∧ 𝑅 ∈ Rels ) → ((𝑢𝑅𝑥 ∧ 𝑣𝑅𝑥) → [𝑢]𝑅 = [𝑣]𝑅)) | ||
| 10-Feb-2026 | eldisjdmqsim2 39506 | ElDisj of quotient implies coset-disjointness (domain form). Converts element-disjointness of the quotient carrier into a usable "cosets don't overlap unless equal" rule. (Contributed by Peter Mazsa, 10-Feb-2026.) |
| ⊢ (( ElDisj (dom 𝑅 / 𝑅) ∧ 𝑅 ∈ Rels ) → ((𝑢 ∈ dom 𝑅 ∧ 𝑣 ∈ dom 𝑅) → (([𝑢]𝑅 ∩ [𝑣]𝑅) ≠ ∅ → [𝑢]𝑅 = [𝑣]𝑅))) | ||
| 10-Feb-2026 | enssdom 8982 | Equinumerosity implies dominance. (Contributed by NM, 31-Mar-1998.) (Proof shortened by TM, 10-Feb-2026.) |
| ⊢ ≈ ⊆ ≼ | ||
| 10-Feb-2026 | f1oi 6866 | A restriction of the identity relation is a one-to-one onto function. (Contributed by NM, 30-Apr-1998.) (Proof shortened by Andrew Salmon, 22-Oct-2011.) Avoid ax-12 2216. (Revised by TM, 10-Feb-2026.) |
| ⊢ ( I ↾ 𝐴):𝐴–1-1-onto→𝐴 | ||
| 9-Feb-2026 | rsp3eq 39057 | From a restricted universal statement over 𝐴, specialize to an arbitrary element class, cf. rsp3 39056. (Contributed by Peter Mazsa, 9-Feb-2026.) |
| ⊢ Ⅎ𝑥𝐴 & ⊢ Ⅎ𝑦𝐴 & ⊢ Ⅎ𝑦𝜑 & ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∀𝑥 ∈ 𝐴 𝜑 → ((𝑦 = 𝐵 ∧ 𝐵 ∈ 𝐴) → 𝜓)) | ||
| 9-Feb-2026 | rsp3 39056 | From a restricted universal statement over 𝐴, specialize to an arbitrary element 𝑦 ∈ 𝐴, cf. rsp 3256. (Contributed by Peter Mazsa, 9-Feb-2026.) |
| ⊢ Ⅎ𝑥𝐴 & ⊢ Ⅎ𝑦𝐴 & ⊢ Ⅎ𝑦𝜑 & ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∀𝑥 ∈ 𝐴 𝜑 → (𝑦 ∈ 𝐴 → 𝜓)) | ||
| 6-Feb-2026 | eldisjim3 39505 | ElDisj elimination (two chosen elements). Standard specialization lemma: from ElDisj 𝐴 infer the disjointness condition for two specific elements. (Contributed by Peter Mazsa, 6-Feb-2026.) |
| ⊢ ( ElDisj 𝐴 → ((𝐵 ∈ 𝐴 ∧ 𝐶 ∈ 𝐴) → ((𝐵 ∩ 𝐶) ≠ ∅ → 𝐵 = 𝐶))) | ||
| 6-Feb-2026 | raldmqseu 39055 | Equivalence between "exactly one" on the quotient carrier and "at most one" globally. Provides a type-safe way to talk about unique representatives either as ∃! on the intended carrier or as a global ∃* statement. (Contributed by Peter Mazsa, 6-Feb-2026.) |
| ⊢ (𝑅 ∈ 𝑉 → (∀𝑢 ∈ (dom 𝑅 / 𝑅)∃!𝑡 ∈ dom 𝑅 𝑢 = [𝑡]𝑅 ↔ ∀𝑢∃*𝑡 ∈ dom 𝑅 𝑢 = [𝑡]𝑅)) | ||
| 6-Feb-2026 | raldmqsmo 39053 | On the quotient carrier, "at most one" and "exactly one" coincide for coset witnesses. (Contributed by Peter Mazsa, 6-Feb-2026.) |
| ⊢ (∀𝑢 ∈ (dom 𝑅 / 𝑅)∃*𝑡 ∈ dom 𝑅 𝑢 = [𝑡]𝑅 ↔ ∀𝑢 ∈ (dom 𝑅 / 𝑅)∃!𝑡 ∈ dom 𝑅 𝑢 = [𝑡]𝑅) | ||
| 5-Feb-2026 | disjimeldisjdmqs 39623 | Disj implies element-disjoint quotient carrier. Supplies the carrier-disjointness half of the Disjs pattern: under Disj 𝑅, the coset family is element-disjoint. (Contributed by Peter Mazsa, 5-Feb-2026.) |
| ⊢ ( Disj 𝑅 → ElDisj (dom 𝑅 / 𝑅)) | ||
| 5-Feb-2026 | disjimdmqseq 39499 | Disjointness implies unique-generation of quotient blocks. Converts existence-quotient comprehension (see df-qs 8709) into a uniqueness-comprehension under disjointness; rewrites (dom 𝑅 / 𝑅) carriers as exactly the class of blocks with a unique representative. This is the "unique generator per block" content in a carrier-normal form. (Contributed by Peter Mazsa, 5-Feb-2026.) |
| ⊢ ( Disj 𝑅 → (dom 𝑅 / 𝑅) = {𝑡 ∣ ∃!𝑢 ∈ dom 𝑅 𝑡 = [𝑢]𝑅}) | ||
| 5-Feb-2026 | disjimrmoeqec 39498 | Under Disj, every block has a unique generator (∃* form). If 𝑡 is a block in the quotient sense, then there is a uniquely determined 𝑢 in dom 𝑅 such that 𝑡 = [𝑢]𝑅. This is the existence+uniqueness engine behind Disjs and QMap characterizations: it is the "representative theorem" from which the ∃! forms are obtained. (Contributed by Peter Mazsa, 5-Feb-2026.) |
| ⊢ ( Disj 𝑅 → ∃*𝑢 ∈ dom 𝑅 𝑡 = [𝑢]𝑅) | ||
| 5-Feb-2026 | dfsb 2101 | Simplify definition df-sb 2100 by removing its provable hypothesis. (Contributed by Wolf Lammen, 5-Feb-2026.) |
| ⊢ ([𝑡 / 𝑥]𝜑 ↔ ∀𝑦(𝑦 = 𝑡 → ∀𝑥(𝑥 = 𝑦 → 𝜑))) | ||
| 4-Feb-2026 | ss2rabd 4029 | Subclass of a restricted class abstraction (deduction form). Saves ax-10 2179, ax-11 2195, ax-12 2216 over using ss2rab 4026 and sylibr 237. (Contributed by SN, 4-Feb-2026.) |
| ⊢ (𝜑 → ∀𝑥 ∈ 𝐴 (𝜓 → 𝜒)) ⇒ ⊢ (𝜑 → {𝑥 ∈ 𝐴 ∣ 𝜓} ⊆ {𝑥 ∈ 𝐴 ∣ 𝜒}) | ||
| 4-Feb-2026 | sbt 2103 | A substitution into a theorem yields a theorem. See sbtALT 2106 for a shorter proof requiring more axioms. See chvar 2430 and chvarv 2431 for versions using implicit substitution. (Contributed by NM, 21-Jan-2004.) (Proof shortened by Andrew Salmon, 25-May-2011.) (Proof shortened by Wolf Lammen, 20-Jul-2018.) Revise df-sb 2100. (Revised by Steven Nguyen, 6-Jul-2023.) Revise df-sb 2100 again. (Revised by Wolf Lammen, 4-Feb-2026.) |
| ⊢ 𝜑 ⇒ ⊢ [𝑡 / 𝑥]𝜑 | ||
| 4-Feb-2026 | sbtlem 2102 | In the case of sbt 2103, the hypothesis in df-sb 2100 is derivable from propositional axioms and ax-gen 1828 alone. The essential proof step is presented in this lemma. (Contributed by Wolf Lammen, 4-Feb-2026.) |
| ⊢ 𝜑 ⇒ ⊢ ∀𝑦(𝑦 = 𝑡 → ∀𝑥(𝑥 = 𝑦 → 𝜑)) | ||
| 4-Feb-2026 | df-sb 2100 |
Define proper substitution. For our notation, we use [𝑡 / 𝑥]𝜑
to mean "the wff that results from the proper substitution of 𝑡 for
𝑥 in the wff 𝜑". That is, 𝑡
properly replaces 𝑥.
For example, [𝑡 / 𝑥]𝑧 ∈ 𝑥 is the same as 𝑧 ∈ 𝑡 (when 𝑥
and 𝑧 are distinct), as shown in elsb2 2163.
Our notation was introduced in Haskell B. Curry's Foundations of Mathematical Logic (1977), p. 316 and is frequently used in textbooks of lambda calculus and combinatory logic. This notation improves the common but ambiguous notation, "𝜑(𝑡) is the wff that results when 𝑡 is properly substituted for 𝑥 in 𝜑(𝑥)". For example, if the original 𝜑(𝑥) is 𝑥 = 𝑡, then 𝜑(𝑡) is 𝑡 = 𝑡, from which we obtain that 𝜑(𝑥) is 𝑥 = 𝑥. So what exactly does 𝜑(𝑥) mean? Curry's notation solves this problem. A very similar notation, namely (𝑦 ∣ 𝑥)𝜑, was introduced in Bourbaki's Set Theory (Chapter 1, Description of Formal Mathematic, 1953). In most books, proper substitution has a somewhat complicated recursive definition with multiple cases based on the occurrences of free and bound variables in the wff. Instead, we use a single formula that is exactly equivalent and gives us a direct definition. We later prove that our definition has the properties we expect of proper substitution (see Theorems sbequ 2120, sbcom2 2210 and sbid2v 2544). Note that our definition is valid even when 𝑥 and 𝑡 are replaced with the same variable, as sbid 2294 shows. We achieve this by applying twice Tarski's definition sb6 2122 which is valid for disjoint variables, and introducing a dummy variable 𝑦 which isolates 𝑥 from 𝑡, as in dfsb7 2317 with respect to sb5 2314. We can also achieve this by having 𝑥 free in the first conjunct and bound in the second, as the alternate definition dfsb1 2516 shows. Another version that mixes free and bound variables is dfsb3 2529. When 𝑥 and 𝑡 are distinct, we can express proper substitution with the simpler expressions of sb5 2314 and sb6 2122. Note that the occurrences of a given variable in the definiens are either all bound (𝑥, 𝑦) or all free (𝑡). Also note that the definiens uses only primitive symbols. This double level definition will make several proofs using it appear as doubled. Alternately, one could often first prove as a lemma the same theorem with a disjoint variable condition on the substitute and the substituted variables, and then prove the original theorem by applying this lemma twice in a row. The hypothesis asserts that the definition is independent of the particular choice of the dummy variable 𝑦. Without this hypothesis, sbjust 2098 would be derivable from propositional axioms alone: one could apply the definiens for [𝑡 / 𝑥]𝜑 twice, using different dummy variables 𝑦 and 𝑧, and then invoke bitr3i 280 to establish their equivalence. This would jeopardize the independence of axioms, as demonstrated in an analoguous situation involving df-ss 3925 to prove ax-8 2148 (see in-ax8 36777). Prefer dfsb 2101 unless you can prove the hypothesis from fewer axioms in special cases, see sbt 2103. (Contributed by NM, 10-May-1993.) Revised from the original definition dfsb1 2516. (Revised by BJ, 22-Dec-2020.) Add the justification hypothesis. (Revised by Wolf Lammen, 4-Feb-2026.) |
| ⊢ (∀𝑦(𝑦 = 𝑡 → ∀𝑥(𝑥 = 𝑦 → 𝜑)) ↔ ∀𝑧(𝑧 = 𝑡 → ∀𝑥(𝑥 = 𝑧 → 𝜑))) ⇒ ⊢ ([𝑡 / 𝑥]𝜑 ↔ ∀𝑦(𝑦 = 𝑡 → ∀𝑥(𝑥 = 𝑦 → 𝜑))) | ||
| 3-Feb-2026 | disjimeceqbi 39496 | Disj gives biconditional injectivity (domain-wise). Strengthens injectivity to an iff. (Contributed by Peter Mazsa, 3-Feb-2026.) |
| ⊢ ( Disj 𝑅 → ∀𝑢 ∈ dom 𝑅∀𝑣 ∈ dom 𝑅([𝑢]𝑅 = [𝑣]𝑅 ↔ 𝑢 = 𝑣)) | ||
| 3-Feb-2026 | disjimeceqim 39494 | Disj implies coset-equality injectivity (domain-wise). Extracts the practical consequence of Disj: the map 𝑢 ↦ [𝑢]𝑅 is injective on dom 𝑅. This is exactly the "canonicity" property used repeatedly when turning ∃* into ∃! and when reasoning about uniqueness of representatives. (Contributed by Peter Mazsa, 3-Feb-2026.) |
| ⊢ ( Disj 𝑅 → ∀𝑢 ∈ dom 𝑅∀𝑣 ∈ dom 𝑅([𝑢]𝑅 = [𝑣]𝑅 → 𝑢 = 𝑣)) | ||
| 3-Feb-2026 | dfdisjALTV5a 39493 | Alternate definition of the disjoint relation predicate. Disj 𝑅 means: different domain generators have disjoint cosets (unless the generators are equal), plus Rel 𝑅 for relation-typedness. This is the characterization that makes canonicity/uniqueness arguments modular. It is the starting point for the entire "Disj ↔ unique representative per block" pipeline that feeds into Disjs, see dfdisjs7 39633. (Contributed by Peter Mazsa, 3-Feb-2026.) |
| ⊢ ( Disj 𝑅 ↔ (∀𝑢 ∈ dom 𝑅∀𝑣 ∈ dom 𝑅(([𝑢]𝑅 ∩ [𝑣]𝑅) ≠ ∅ → 𝑢 = 𝑣) ∧ Rel 𝑅)) | ||
| 2-Feb-2026 | ralrnmo 39051 | On the range, "at most one" becomes "exactly one". (Contributed by Peter Mazsa, 27-Sep-2018.) (Revised by Peter Mazsa, 2-Feb-2026.) |
| ⊢ (∀𝑥 ∈ ran 𝑅∃*𝑢 𝑢𝑅𝑥 ↔ ∀𝑥 ∈ ran 𝑅∃!𝑢 𝑢𝑅𝑥) | ||
| 2-Feb-2026 | ralmo 39050 | "At most one" can be restricted to the range. (Contributed by Peter Mazsa, 2-Feb-2026.) |
| ⊢ (∀𝑥∃*𝑢 𝑢𝑅𝑥 ↔ ∀𝑥 ∈ ran 𝑅∃*𝑢 𝑢𝑅𝑥) | ||
| 2-Feb-2026 | mptelee 29281 | A condition for a mapping to be an element of a Euclidean space. (Contributed by Scott Fenton, 7-Jun-2013.) (Proof shortened by SN, 2-Feb-2026.) |
| ⊢ (𝑁 ∈ ℕ → ((𝑘 ∈ (1...𝑁) ↦ (𝐴𝐹𝐵)) ∈ (𝔼‘𝑁) ↔ ∀𝑘 ∈ (1...𝑁)(𝐴𝐹𝐵) ∈ ℝ)) | ||
| 2-Feb-2026 | moabex 5444 | "At most one" existence implies a class abstraction exists. (Contributed by NM, 30-Dec-1996.) Avoid axioms. (Revised by SN, 2-Feb-2026.) |
| ⊢ (∃*𝑥𝜑 → {𝑥 ∣ 𝜑} ∈ V) | ||
| 2-Feb-2026 | iunss 5014 | Subset theorem for an indexed union. (Contributed by NM, 13-Sep-2003.) (Proof shortened by Andrew Salmon, 25-Jul-2011.) Avoid ax-10 2179, ax-12 2216. (Revised by SN, 2-Feb-2026.) |
| ⊢ (∪ 𝑥 ∈ 𝐴 𝐵 ⊆ 𝐶 ↔ ∀𝑥 ∈ 𝐴 𝐵 ⊆ 𝐶) | ||
| 2-Feb-2026 | iunssf 5012 | Subset theorem for an indexed union. (Contributed by Glauco Siliprandi, 3-Mar-2021.) Avoid ax-10 2179. (Revised by SN, 2-Feb-2026.) |
| ⊢ Ⅎ𝑥𝐶 ⇒ ⊢ (∪ 𝑥 ∈ 𝐴 𝐵 ⊆ 𝐶 ↔ ∀𝑥 ∈ 𝐴 𝐵 ⊆ 𝐶) | ||
| 1-Feb-2026 | xp0 5766 | The Cartesian product with the empty set is empty. Part of Theorem 3.13(ii) of [Monk1] p. 37. (Contributed by NM, 12-Apr-2004.) Avoid axioms. (Revised by TM, 1-Feb-2026.) |
| ⊢ (𝐴 × ∅) = ∅ | ||
| 1-Feb-2026 | uni0 4906 | The union of the empty set is the empty set. Theorem 8.7 of [Quine] p. 54. (Contributed by NM, 16-Sep-1993.) Remove use of ax-nul 5274. (Revised by Eric Schmidt, 4-Apr-2007.) Avoid ax-11 2195. (Revised by TM, 1-Feb-2026.) |
| ⊢ ∪ ∅ = ∅ | ||
| 1-Feb-2026 | rabss2 4034 | Subclass law for restricted abstraction. (Contributed by NM, 18-Dec-2004.) (Proof shortened by Andrew Salmon, 26-Jun-2011.) Avoid axioms. (Revised by TM, 1-Feb-2026.) |
| ⊢ (𝐴 ⊆ 𝐵 → {𝑥 ∈ 𝐴 ∣ 𝜑} ⊆ {𝑥 ∈ 𝐵 ∣ 𝜑}) | ||
| 1-Feb-2026 | ss2rabdv 4032 | Deduction of restricted abstraction subclass from implication. (Contributed by NM, 30-May-2006.) Avoid axioms. (Revised by TM, 1-Feb-2026.) |
| ⊢ ((𝜑 ∧ 𝑥 ∈ 𝐴) → (𝜓 → 𝜒)) ⇒ ⊢ (𝜑 → {𝑥 ∈ 𝐴 ∣ 𝜓} ⊆ {𝑥 ∈ 𝐴 ∣ 𝜒}) | ||
| 31-Jan-2026 | cnv0 5874 | The converse of the empty set. (Contributed by NM, 6-Apr-1998.) Remove dependency on ax-sep 5262, ax-nul 5274, ax-pr 5409. (Revised by KP, 25-Oct-2021.) Avoid ax-12 2216. (Revised by TM, 31-Jan-2026.) |
| ⊢ ◡∅ = ∅ | ||
| 30-Jan-2026 | chnsuslle 47638 | Length of a subsequence is bounded by the length of original chain. (Contributed by Ender Ting, 30-Jan-2026.) |
| ⊢ (𝜑 → 𝑊 ∈ ( < Chain 𝐴)) & ⊢ (𝜑 → 𝐼 ∈ ( < Chain (0..^(♯‘𝑊)))) & ⊢ (𝜑 → < Po 𝐴) ⇒ ⊢ (𝜑 → (♯‘(𝑊 ∘ 𝐼)) ≤ (♯‘𝑊)) | ||
| 30-Jan-2026 | dfsuccl4 39164 | Alternate definition that incorporates the most desirable properties of the successor class. (Contributed by Peter Mazsa, 30-Jan-2026.) |
| ⊢ Suc = {𝑛 ∣ ∃!𝑚 ∈ 𝑛 (𝑚 ⊆ 𝑛 ∧ suc 𝑚 = 𝑛)} | ||
| 30-Jan-2026 | dfsuccl3 39163 | Alternate definition of the class of all successors. (Contributed by Peter Mazsa, 30-Jan-2026.) |
| ⊢ Suc = {𝑛 ∣ ∃!𝑚 suc 𝑚 = 𝑛} | ||
| 29-Jan-2026 | nthrucw 47648 | Some number sets form a chain of proper subsets. This is rephrasing nthruc 16333 as a statement about chains; the hypothesis sets the ordering relation to be "is a proper subset". The theorem talks about singleton 1, natural numbers, natural-or-zero numbers, integers, rational numbers, algebraic reals (the definition includes complex numbers as algebraic so intersection is taken), real numbers and complex numbers, which are proper subsets in order. (Contributed by Ender Ting, 29-Jan-2026.) |
| ⊢ < = {〈𝑥, 𝑦〉 ∣ 𝑥 ⊊ 𝑦} ⇒ ⊢ 〈“{1}ℕℕ0ℤℚ(𝔸 ∩ ℝ)ℝℂ”〉 ∈ ( < Chain V) | ||
| 29-Jan-2026 | chner 47642 | Any two elements are equivalent in a chain constructed on an equivalence relation. (Contributed by Ender Ting, 29-Jan-2026.) |
| ⊢ (𝜑 → ∼ Er 𝐴) & ⊢ (𝜑 → 𝐶 ∈ ( ∼ Chain 𝐴)) & ⊢ (𝜑 → 𝐽 ∈ (0..^(♯‘𝐶))) & ⊢ (𝜑 → 𝐼 ∈ (0..^(♯‘𝐶))) ⇒ ⊢ (𝜑 → (𝐶‘𝐼) ∼ (𝐶‘𝐽)) | ||
| 29-Jan-2026 | chnerlem3 47641 | Lemma for chner 47642- trichotomy of integers within the word's domain. (Contributed by Ender Ting, 29-Jan-2026.) |
| ⊢ (𝜑 → ∼ Er 𝐴) & ⊢ (𝜑 → 𝐶 ∈ ( ∼ Chain 𝐴)) & ⊢ (𝜑 → 𝐽 ∈ (0..^(♯‘𝐶))) & ⊢ (𝜑 → 𝐼 ∈ (0..^(♯‘𝐶))) ⇒ ⊢ (𝜑 → (𝐼 ∈ (0..^𝐽) ∨ 𝐽 ∈ (0..^𝐼) ∨ 𝐼 = 𝐽)) | ||
| 29-Jan-2026 | chnerlem2 47640 | Lemma for chner 47642 where the I-th element comes before the J-th. (Contributed by Ender Ting, 29-Jan-2026.) |
| ⊢ (𝜑 → ∼ Er 𝐴) & ⊢ (𝜑 → 𝐶 ∈ ( ∼ Chain 𝐴)) & ⊢ (𝜑 → 𝐽 ∈ (0..^(♯‘𝐶))) ⇒ ⊢ ((𝜑 ∧ 𝐼 ∈ (0..^𝐽)) → (𝐶‘𝐼) ∼ (𝐶‘𝐽)) | ||
| 29-Jan-2026 | chnerlem1 47639 | In a chain constructed on an equivalence relation, the last element is equivalent to any. This theorem is a translation of chnub 18703 to equivalence relations. (Contributed by Ender Ting, 29-Jan-2026.) |
| ⊢ (𝜑 → ∼ Er 𝐴) & ⊢ (𝜑 → 𝐶 ∈ ( ∼ Chain 𝐴)) & ⊢ (𝜑 → 𝐽 ∈ (0..^(♯‘𝐶))) ⇒ ⊢ (𝜑 → (𝐶‘𝐽) ∼ (lastS‘𝐶)) | ||
| 29-Jan-2026 | dfsuccl2 39160 | Alternate definition of the class of all successors. (Contributed by Peter Mazsa, 29-Jan-2026.) |
| ⊢ Suc = {𝑛 ∣ ∃𝑚 suc 𝑚 = 𝑛} | ||
| 29-Jan-2026 | dfblockliftmap2 39151 | Alternate definition of the block lift map. (Contributed by Peter Mazsa, 29-Jan-2026.) |
| ⊢ (𝑅 BlockLiftMap 𝐴) = (𝑚 ∈ (𝐴 ∩ (dom 𝑅 ∖ {∅})) ↦ ([𝑚]𝑅 × 𝑚)) | ||
| 29-Jan-2026 | dmxrncnvepres2 39123 | Domain of the range product with restricted converse epsilon relation. (Contributed by Peter Mazsa, 29-Jan-2026.) |
| ⊢ dom (𝑅 ⋉ (◡ E ↾ 𝐴)) = (𝐴 ∩ (dom 𝑅 ∖ {∅})) | ||
| 29-Jan-2026 | frgr2wwlkeu 30715 | For two different vertices in a friendship graph, there is exactly one third vertex being the middle vertex of a (simple) path/walk of length 2 between the two vertices. (Contributed by Alexander van der Vekens, 18-Feb-2018.) (Revised by AV, 12-May-2021.) (Proof shortened by AV, 4-Jan-2022.) (Revised by Ender Ting, 29-Jan-2026.) |
| ⊢ 𝑉 = (Vtx‘𝐺) ⇒ ⊢ ((𝐺 ∈ FriendGraph ∧ (𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑉) ∧ 𝐴 ≠ 𝐵) → ∃!𝑐 ∈ 𝑉 〈“𝐴𝑐𝐵”〉 ∈ (𝐴(2 WWalksNOn 𝐺)𝐵)) | ||
| 29-Jan-2026 | usgr2wspthon 30354 | A simple path of length 2 between two vertices corresponds to two adjacent edges in a simple graph. (Contributed by Alexander van der Vekens, 9-Mar-2018.) (Revised by AV, 17-May-2021.) (Revised by Ender Ting, 29-Jan-2026.) |
| ⊢ 𝑉 = (Vtx‘𝐺) & ⊢ 𝐸 = (Edg‘𝐺) ⇒ ⊢ ((𝐺 ∈ USGraph ∧ (𝐴 ∈ 𝑉 ∧ 𝐶 ∈ 𝑉)) → (𝑇 ∈ (𝐴(2 WSPathsNOn 𝐺)𝐶) ↔ ∃𝑏 ∈ 𝑉 ((𝑇 = 〈“𝐴𝑏𝐶”〉 ∧ 𝐴 ≠ 𝐶) ∧ ({𝐴, 𝑏} ∈ 𝐸 ∧ {𝑏, 𝐶} ∈ 𝐸)))) | ||
| 29-Jan-2026 | usgr2wspthons3 30353 | A simple path of length 2 between two vertices represented as length 3 string corresponds to two adjacent edges in a simple graph. (Contributed by Alexander van der Vekens, 8-Mar-2018.) (Revised by AV, 17-May-2021.) (Proof shortened by AV, 16-Mar-2022.) (Revised by Ender Ting, 29-Jan-2026.) |
| ⊢ 𝑉 = (Vtx‘𝐺) & ⊢ 𝐸 = (Edg‘𝐺) ⇒ ⊢ ((𝐺 ∈ USGraph ∧ (𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑉 ∧ 𝐶 ∈ 𝑉)) → (〈“𝐴𝐵𝐶”〉 ∈ (𝐴(2 WSPathsNOn 𝐺)𝐶) ↔ (𝐴 ≠ 𝐶 ∧ {𝐴, 𝐵} ∈ 𝐸 ∧ {𝐵, 𝐶} ∈ 𝐸))) | ||
| 29-Jan-2026 | wpthswwlks2on 30350 | For two different vertices, a walk of length 2 between these vertices is a simple path of length 2 between these vertices in a simple graph. (Contributed by Alexander van der Vekens, 2-Mar-2018.) (Revised by AV, 16-Mar-2022.) (Revised by Ender Ting, 29-Jan-2026.) |
| ⊢ ((𝐺 ∈ USGraph ∧ 𝐴 ≠ 𝐵) → (𝐴(2 WSPathsNOn 𝐺)𝐵) = (𝐴(2 WWalksNOn 𝐺)𝐵)) | ||
| 29-Jan-2026 | elwspths2onw 30349 | A simple path of length 2 between two vertices (in a simple pseudograph) as length 3 string. This theorem avoids the Axiom of Choice for its proof, at the cost of requiring a simple graph; the more general version is elwspths2on 30348. (Contributed by Ender Ting, 29-Jan-2026.) |
| ⊢ 𝑉 = (Vtx‘𝐺) ⇒ ⊢ ((𝐺 ∈ USPGraph ∧ 𝐴 ∈ 𝑉 ∧ 𝐶 ∈ 𝑉) → (𝑊 ∈ (𝐴(2 WSPathsNOn 𝐺)𝐶) ↔ ∃𝑏 ∈ 𝑉 (𝑊 = 〈“𝐴𝑏𝐶”〉 ∧ 〈“𝐴𝑏𝐶”〉 ∈ (𝐴(2 WSPathsNOn 𝐺)𝐶)))) | ||
| 29-Jan-2026 | usgrwwlks2on 30344 | A walk of length 2 between two vertices as word in a simple graph. This theorem is analogous to umgrwwlks2on 30345 except it talks about simple graphs and therefore does not require the Axiom of Choice for its proof. (Contributed by Ender Ting, 29-Jan-2026.) |
| ⊢ 𝑉 = (Vtx‘𝐺) & ⊢ 𝐸 = (Edg‘𝐺) ⇒ ⊢ ((𝐺 ∈ USGraph ∧ (𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑉 ∧ 𝐶 ∈ 𝑉)) → (〈“𝐴𝐵𝐶”〉 ∈ (𝐴(2 WWalksNOn 𝐺)𝐶) ↔ ({𝐴, 𝐵} ∈ 𝐸 ∧ {𝐵, 𝐶} ∈ 𝐸))) | ||
| 29-Jan-2026 | elreno2 28725 | Alternate characterization of the surreal reals. Theorem 4.4(b) of [Gonshor] p. 39. (Contributed by Scott Fenton, 29-Jan-2026.) |
| ⊢ (𝐴 ∈ ℝs ↔ (𝐴 ∈ No ∧ (∃𝑛 ∈ ℕs (( -us ‘𝑛) <s 𝐴 ∧ 𝐴 <s 𝑛) ∧ ∀𝑥𝑂 ∈ (( L ‘𝐴) ∪ ( R ‘𝐴))∃𝑛 ∈ ℕs ( 1s /su 𝑛) ≤s (abss‘(𝐴 -s 𝑥𝑂))))) | ||
| 29-Jan-2026 | abssubs 28480 | Swapping order of surreal subtraction doesn't change the absolute value. (Contributed by Scott Fenton, 29-Jan-2026.) |
| ⊢ ((𝐴 ∈ No ∧ 𝐵 ∈ No ) → (abss‘(𝐴 -s 𝐵)) = (abss‘(𝐵 -s 𝐴))) | ||
| 29-Jan-2026 | lesubsd 28326 | Swap subtrahends in a surreal inequality. (Contributed by Scott Fenton, 29-Jan-2026.) |
| ⊢ (𝜑 → 𝐴 ∈ No ) & ⊢ (𝜑 → 𝐵 ∈ No ) & ⊢ (𝜑 → 𝐶 ∈ No ) ⇒ ⊢ (𝜑 → (𝐴 ≤s (𝐵 -s 𝐶) ↔ 𝐶 ≤s (𝐵 -s 𝐴))) | ||
| 28-Jan-2026 | dfsucmap4 39155 | Alternate definition of the successor map. (Contributed by Peter Mazsa, 28-Jan-2026.) |
| ⊢ SucMap = (𝑚 ∈ V ↦ suc 𝑚) | ||
| 28-Jan-2026 | dfsucmap2 39154 | Alternate definition of the successor map. (Contributed by Peter Mazsa, 28-Jan-2026.) |
| ⊢ SucMap = ( I AdjLiftMap dom I ) | ||
| 28-Jan-2026 | dfsucmap3 39153 | Alternate definition of the successor map. (Contributed by Peter Mazsa, 28-Jan-2026.) |
| ⊢ SucMap = ( I AdjLiftMap V) | ||
| 28-Jan-2026 | blockadjliftmap 39148 | A "two-stage" construction is obtained by first forming the block relation (𝑅 ⋉ ◡ E ) and then adjoining elements as "BlockAdj". Combined, it uses the relation ((𝑅 ⋉ ◡ E ) ∪ ◡ E ). (Contributed by Peter Mazsa, 28-Jan-2026.) |
| ⊢ ((𝑅 ⋉ ◡ E ) AdjLiftMap 𝐴) = {〈𝑚, 𝑛〉 ∣ (𝑚 ∈ (𝐴 ∖ {∅}) ∧ 𝑛 = (𝑚 ∪ ([𝑚]𝑅 × 𝑚)))} | ||
| 28-Jan-2026 | dfadjliftmap2 39147 | Alternate definition of the adjoined lift map. (Contributed by Peter Mazsa, 28-Jan-2026.) |
| ⊢ (𝑅 AdjLiftMap 𝐴) = (𝑚 ∈ (𝐴 ∩ (dom 𝑅 ∪ (V ∖ {∅}))) ↦ (𝑚 ∪ [𝑚]𝑅)) | ||
| 28-Jan-2026 | ecuncnvepres 39085 | The restricted union with converse epsilon relation coset of 𝐵. (Contributed by Peter Mazsa, 28-Jan-2026.) |
| ⊢ (𝐵 ∈ 𝐴 → [𝐵]((𝑅 ∪ ◡ E ) ↾ 𝐴) = (𝐵 ∪ [𝐵]𝑅)) | ||
| 28-Jan-2026 | ecunres 39084 | The restricted union coset of 𝐵. (Contributed by Peter Mazsa, 28-Jan-2026.) |
| ⊢ (𝐵 ∈ 𝑉 → [𝐵]((𝑅 ∪ 𝑆) ↾ 𝐴) = ([𝐵](𝑅 ↾ 𝐴) ∪ [𝐵](𝑆 ↾ 𝐴))) | ||
| 28-Jan-2026 | ecun 39083 | The union coset of 𝐴. (Contributed by Peter Mazsa, 28-Jan-2026.) |
| ⊢ (𝐴 ∈ 𝑉 → [𝐴](𝑅 ∪ 𝑆) = ([𝐴]𝑅 ∪ [𝐴]𝑆)) | ||
| 28-Jan-2026 | dmxrnuncnvepres 39082 | Domain of the combined relation of two special relations, see blockadjliftmap 39148. (Contributed by Peter Mazsa, 28-Jan-2026.) |
| ⊢ dom (((𝑅 ⋉ ◡ E ) ∪ ◡ E ) ↾ 𝐴) = (𝐴 ∖ {∅}) | ||
| 28-Jan-2026 | dmuncnvepres 39081 | Domain of the union with the converse epsilon, restricted. (Contributed by Peter Mazsa, 28-Jan-2026.) |
| ⊢ dom ((𝑅 ∪ ◡ E ) ↾ 𝐴) = (𝐴 ∩ (dom 𝑅 ∪ (V ∖ {∅}))) | ||
| 28-Jan-2026 | dmcnvepres 39080 | Domain of the restricted converse epsilon relation. (Contributed by Peter Mazsa, 28-Jan-2026.) |
| ⊢ dom (◡ E ↾ 𝐴) = (𝐴 ∖ {∅}) | ||
| 28-Jan-2026 | sps3wwlks2on 30343 | A length 3 string which represents a walk of length 2 between two vertices. Concerns simple pseudographs, in contrast to s3wwlks2on 30342 and does not require the Axiom of Choice for its proof. (Contributed by Ender Ting, 28-Jan-2026.) |
| ⊢ 𝑉 = (Vtx‘𝐺) ⇒ ⊢ ((𝐺 ∈ USPGraph ∧ 𝐴 ∈ 𝑉 ∧ 𝐶 ∈ 𝑉) → (〈“𝐴𝐵𝐶”〉 ∈ (𝐴(2 WWalksNOn 𝐺)𝐶) ↔ ∃𝑓(𝑓(Walks‘𝐺)〈“𝐴𝐵𝐶”〉 ∧ (♯‘𝑓) = 2))) | ||
| 27-Jan-2026 | sucpre 39187 | suc is a right-inverse of pre on Suc. This theorem states the partial inverse relation in the direction we most often need. (Contributed by Peter Mazsa, 27-Jan-2026.) |
| ⊢ (𝑁 ∈ Suc → suc pre 𝑁 = 𝑁) | ||
| 27-Jan-2026 | eupre 39184 | Unique predecessor exists on the successor class. (Contributed by Peter Mazsa, 27-Jan-2026.) |
| ⊢ (𝑁 ∈ 𝑉 → (𝑁 ∈ Suc ↔ ∃!𝑚 𝑚 SucMap 𝑁)) | ||
| 27-Jan-2026 | dfpre 39166 | Alternate definition of the successor-predecessor. (Contributed by Peter Mazsa, 27-Jan-2026.) |
| ⊢ pre 𝑁 = (℩𝑚𝑚 ∈ Pred( SucMap , V, 𝑁)) | ||
| 27-Jan-2026 | df-pre 39165 |
Define the term-level successor-predecessor. It is the unique 𝑚
with suc 𝑚 = 𝑁 when such an 𝑚 exists; otherwise pre 𝑁 is
the
arbitrary default chosen by ℩. See its
alternate definitions
dfpre 39166, dfpre2 39167, dfpre3 39168 and dfpre4 39170.
Our definition is a special case of the widely recognised general 𝑅 -predecessor class df-pred 6309 (the class of all elements 𝑚 of 𝐴 such that 𝑚𝑅𝑁, dfpred3g 6321, cf. also df-bnj14 35110) in several respects. Its most abstract property as a specialisation is that it has a unique existing value by default. This is in contrast to the general version. The uniqueness (conditional on existence) is implied by the property of this specific instance of the general case involving the successor map df-sucmap 39152 in place of 𝑅, so that 𝑚 SucMap 𝑁, cf. sucmapleftuniq 39180, which originates from suc11reg 9598. Existence ∃𝑚𝑚 SucMap 𝑁 holds exactly on 𝑁 ∈ ran SucMap, cf. elrng 5886. Note that dom SucMap = V (see dmsucmap 39158), so the equivalent definition dfpre 39166 uses (℩𝑚𝑚 ∈ Pred( SucMap , V, 𝑁)). (Contributed by Peter Mazsa, 27-Jan-2026.) |
| ⊢ pre 𝑁 = (℩𝑚𝑚 ∈ Pred( SucMap , dom SucMap , 𝑁)) | ||
| 26-Jan-2026 | dfpre4 39170 | Alternate definition of the predecessor of the 𝑁 set. The ◡ SucMap is just the "PreMap"; we did not define it because we do not expect to use it extensively in future (cf. the comments of df-sucmap 39152). (Contributed by Peter Mazsa, 26-Jan-2026.) |
| ⊢ (𝑁 ∈ 𝑉 → pre 𝑁 = (℩𝑚𝑚 ∈ [𝑁]◡ SucMap )) | ||
| 26-Jan-2026 | dfpred4 39169 | Alternate definition of the predecessor class when 𝑁 is a set. (Contributed by Peter Mazsa, 26-Jan-2026.) |
| ⊢ (𝑁 ∈ 𝑉 → Pred(𝑅, 𝐴, 𝑁) = [𝑁]◡(𝑅 ↾ 𝐴)) | ||
| 25-Jan-2026 | df-shiftstable 39172 |
Define shift-stability, a general "procedure" pattern for "the
one-step
backward shift/transport of 𝐹 along 𝑆", and then ∩ 𝐹
enforces "and it already holds here".
Let 𝐹 be a relation encoding a property that depends on a "level" coordinate (for example, a feasibility condition indexed by a carrier, a grade, or a stage in a construction). Let 𝑆 be a shift relation between levels (for example, the successor map SucMap, or any other grading step). The composed relation (𝑆 ∘ 𝐹) transports 𝐹 one step along the shift: 𝑟(𝑆 ∘ 𝐹)𝑛 means there exists a predecessor level 𝑚 such that 𝑟𝐹𝑚 and 𝑚𝑆𝑛 (e.g., 𝑚 SucMap 𝑛). We do not introduce a separate notation for "Shift" because it is simply the standard relational composition df-co 5675. The intersection ((𝑆 ∘ 𝐹) ∩ 𝐹) is the locally shift-stable fragment of 𝐹: it consists exactly of those points where the property holds at some immediate predecessor that shifts to 𝑛 and also holds at level 𝑛. In other words, it isolates the part of 𝐹 that is already compatible with one-step tower coherence. This definition packages a common construction pattern used throughout the development: "constrain by one-step stability under a chosen shift, then additionally constrain by 𝐹". Iterating the operator (𝑋 ↦ ((𝑆 ∘ 𝑋) ∩ 𝑋) corresponds to multi-step/tower coherence; the one-step definition here is the economical kernel from which such "tower" readings can be developed when needed. (Contributed by Peter Mazsa, 25-Jan-2026.) |
| ⊢ (𝑆 ShiftStable 𝐹) = ((𝑆 ∘ 𝐹) ∩ 𝐹) | ||
| 25-Jan-2026 | df-succl 39159 | Define Suc as the class of all successors, i.e. the range of the successor map: 𝑛 ∈ Suc iff ∃𝑚suc 𝑚 = 𝑛 (see dfsuccl2 39160). By injectivity of suc (suc11reg 9598), every 𝑛 ∈ Suc has at most one predecessor, which is exactly what pre 𝑛 (df-pre 39165) names. Cf. dfsuccl3 39163 and dfsuccl4 39164. (Contributed by Peter Mazsa, 25-Jan-2026.) |
| ⊢ Suc = ran SucMap | ||
| 25-Jan-2026 | df-sucmap 39152 |
Define the successor map, directly as the graph of the successor
operation, using only elementary set theory (ordered-pair class
abstraction). This avoids committing to any particular construction of
the successor function/class from other operators (e.g. a
union/composition presentation), while remaining provably equivalent to
those presentations (cf. dfsucmap2 39154 and dfsucmap3 39153 vs. df-succf 36383 and
dfsuccf2 36454). For maximum mappy shape, see dfsucmap4 39155.
We also treat the successor relation as the default shift relation for grading/tower arguments (cf. df-shiftstable 39172). Because it is used pervasively in shift-lift infrastructure, we adopt the short name SucMap rather than the fully systematic "SucAdjLiftMap". You may also define the predecessor relation as the converse graph "PreMap" as ◡ SucMap, which reverses successor edges ( cf. cnvopab 6142) and sends each successor to its (unique) predecessor when it exists. (Contributed by Peter Mazsa, 25-Jan-2026.) |
| ⊢ SucMap = {〈𝑚, 𝑛〉 ∣ suc 𝑚 = 𝑛} | ||
| 25-Jan-2026 | ecxrncnvep2 39100 | The (𝑅 ⋉ ◡ E )-coset of a set is the Cartesian product of its 𝑅-coset and the set. (Contributed by Peter Mazsa, 25-Jan-2026.) |
| ⊢ (𝐴 ∈ 𝑉 → [𝐴](𝑅 ⋉ ◡ E ) = ([𝐴]𝑅 × 𝐴)) | ||
| 25-Jan-2026 | omprcomonb 35557 | The class of all finite ordinals is a proper class iff all ordinal sets are finite. (Contributed by BTernaryTau, 25-Jan-2026.) |
| ⊢ (¬ ω ∈ V ↔ ω = On) | ||
| 25-Jan-2026 | fineqvomonb 35556 | All sets are finite iff all ordinal sets are finite. (Contributed by BTernaryTau, 25-Jan-2026.) |
| ⊢ (Fin = V ↔ ω = On) | ||
| 25-Jan-2026 | r1omfv 35529 | Value of the cumulative hierarchy of sets function at ω. (Contributed by BTernaryTau, 25-Jan-2026.) |
| ⊢ (𝑅1‘ω) = ∪ (𝑅1 “ ω) | ||
| 25-Jan-2026 | r12 35513 | Value of the cumulative hierarchy of sets function at 2o. (Contributed by BTernaryTau, 25-Jan-2026.) |
| ⊢ (𝑅1‘2o) = 2o | ||
| 25-Jan-2026 | xoromon 35504 | ω is either an ordinal set or the proper class of all ordinal sets, but not both. This is a stronger version of omon 7883. (Contributed by BTernaryTau, 25-Jan-2026.) |
| ⊢ (ω ∈ On ⊻ ω = On) | ||
| 25-Jan-2026 | esplyind 33996 | A recursive formula for the elementary symmetric polynomials. (Contributed by Thierry Arnoux, 25-Jan-2026.) |
| ⊢ 𝑊 = (𝐼 mPoly 𝑅) & ⊢ 𝑉 = (𝐼 mVar 𝑅) & ⊢ + = (+g‘𝑊) & ⊢ · = (.r‘𝑊) & ⊢ 𝐷 = {ℎ ∈ (ℕ0 ↑m 𝐼) ∣ ℎ finSupp 0} & ⊢ 𝐺 = ((𝐼extendVars𝑅)‘𝑌) & ⊢ (𝜑 → 𝐼 ∈ Fin) & ⊢ (𝜑 → 𝑅 ∈ Ring) & ⊢ (𝜑 → 𝑌 ∈ 𝐼) & ⊢ 𝐽 = (𝐼 ∖ {𝑌}) & ⊢ 𝐸 = (𝐽eSymPoly𝑅) & ⊢ (𝜑 → 𝐾 ∈ (1...(♯‘𝐼))) & ⊢ 𝐶 = {ℎ ∈ (ℕ0 ↑m 𝐽) ∣ ℎ finSupp 0} ⇒ ⊢ (𝜑 → ((𝐼eSymPoly𝑅)‘𝐾) = (((𝑉‘𝑌) · (𝐺‘(𝐸‘(𝐾 − 1)))) + (𝐺‘(𝐸‘𝐾)))) | ||
| 25-Jan-2026 | esplyfval3 33993 | Alternate expression for the value of the 𝐾-th elementary symmetric polynomial. (Contributed by Thierry Arnoux, 25-Jan-2026.) |
| ⊢ 𝐷 = {ℎ ∈ (ℕ0 ↑m 𝐼) ∣ ℎ finSupp 0} & ⊢ (𝜑 → 𝐼 ∈ Fin) & ⊢ (𝜑 → 𝑅 ∈ Ring) & ⊢ (𝜑 → 𝐾 ∈ ℕ0) & ⊢ 0 = (0g‘𝑅) & ⊢ 1 = (1r‘𝑅) ⇒ ⊢ (𝜑 → ((𝐼eSymPoly𝑅)‘𝐾) = (𝑓 ∈ 𝐷 ↦ if((ran 𝑓 ⊆ {0, 1} ∧ (♯‘(𝑓 supp 0)) = 𝐾), 1 , 0 ))) | ||
| 25-Jan-2026 | esplyfval2 33986 | When 𝐾 is out-of-bounds, the 𝐾-th elementary symmetric polynomial is zero. (Contributed by Thierry Arnoux, 25-Jan-2026.) |
| ⊢ 𝐷 = {ℎ ∈ (ℕ0 ↑m 𝐼) ∣ ℎ finSupp 0} & ⊢ (𝜑 → 𝐼 ∈ Fin) & ⊢ (𝜑 → 𝑅 ∈ Ring) & ⊢ (𝜑 → 𝐾 ∈ (ℕ0 ∖ (0...(♯‘𝐼)))) & ⊢ 𝑍 = (0g‘(𝐼 mPoly 𝑅)) ⇒ ⊢ (𝜑 → ((𝐼eSymPoly𝑅)‘𝐾) = 𝑍) | ||
| 25-Jan-2026 | mplmulmvr 33960 | Multiply a polynomial 𝐹 with a variable 𝑋 (i.e. with a monic monomial). (Contributed by Thierry Arnoux, 25-Jan-2026.) |
| ⊢ 𝑃 = (𝐼 mPoly 𝑅) & ⊢ 𝑋 = ((𝐼 mVar 𝑅)‘𝑌) & ⊢ 𝑀 = (Base‘𝑃) & ⊢ · = (.r‘𝑃) & ⊢ 0 = (0g‘𝑅) & ⊢ 𝐷 = {ℎ ∈ (ℕ0 ↑m 𝐼) ∣ ℎ finSupp 0} & ⊢ 𝐴 = ((𝟭‘𝐼)‘{𝑌}) & ⊢ (𝜑 → 𝐼 ∈ 𝑉) & ⊢ (𝜑 → 𝑌 ∈ 𝐼) & ⊢ (𝜑 → 𝑅 ∈ Ring) & ⊢ (𝜑 → 𝐹 ∈ 𝑀) ⇒ ⊢ (𝜑 → (𝑋 · 𝐹) = (𝑏 ∈ 𝐷 ↦ if((𝑏‘𝑌) = 0, 0 , (𝐹‘(𝑏 ∘f − 𝐴))))) | ||
| 25-Jan-2026 | mvrvalind 33959 | Value of the generating elements of the power series structure, expressed using the indicator function. (Contributed by Thierry Arnoux, 25-Jan-2026.) |
| ⊢ 𝑉 = (𝐼 mVar 𝑅) & ⊢ 𝐷 = {ℎ ∈ (ℕ0 ↑m 𝐼) ∣ (◡ℎ “ ℕ) ∈ Fin} & ⊢ 0 = (0g‘𝑅) & ⊢ 1 = (1r‘𝑅) & ⊢ (𝜑 → 𝐼 ∈ 𝑊) & ⊢ (𝜑 → 𝑅 ∈ 𝑌) & ⊢ (𝜑 → 𝑋 ∈ 𝐼) & ⊢ (𝜑 → 𝐹 ∈ 𝐷) & ⊢ 𝐴 = ((𝟭‘𝐼)‘{𝑋}) ⇒ ⊢ (𝜑 → ((𝑉‘𝑋)‘𝐹) = if(𝐹 = 𝐴, 1 , 0 )) | ||
| 25-Jan-2026 | extvfvalf 33958 | The "variable extension" function maps polynomials with variables indexed in 𝐽 to polynomials with variables indexed in 𝐼. (Contributed by Thierry Arnoux, 25-Jan-2026.) |
| ⊢ 𝐷 = {ℎ ∈ (ℕ0 ↑m 𝐼) ∣ ℎ finSupp 0} & ⊢ 0 = (0g‘𝑅) & ⊢ (𝜑 → 𝐼 ∈ 𝑉) & ⊢ (𝜑 → 𝑅 ∈ Ring) & ⊢ 𝐵 = (Base‘𝑅) & ⊢ 𝐽 = (𝐼 ∖ {𝐴}) & ⊢ 𝑀 = (Base‘(𝐽 mPoly 𝑅)) & ⊢ (𝜑 → 𝐴 ∈ 𝐼) & ⊢ 𝑁 = (Base‘(𝐼 mPoly 𝑅)) ⇒ ⊢ (𝜑 → ((𝐼extendVars𝑅)‘𝐴):𝑀⟶𝑁) | ||
| 25-Jan-2026 | extvfvcl 33957 | Closure for the "variable extension" function evaluated for converting a given polynomial 𝐹 by adding a variable with index 𝐴. (Contributed by Thierry Arnoux, 25-Jan-2026.) |
| ⊢ 𝐷 = {ℎ ∈ (ℕ0 ↑m 𝐼) ∣ ℎ finSupp 0} & ⊢ 0 = (0g‘𝑅) & ⊢ (𝜑 → 𝐼 ∈ 𝑉) & ⊢ (𝜑 → 𝑅 ∈ Ring) & ⊢ 𝐵 = (Base‘𝑅) & ⊢ 𝐽 = (𝐼 ∖ {𝐴}) & ⊢ 𝑀 = (Base‘(𝐽 mPoly 𝑅)) & ⊢ (𝜑 → 𝐴 ∈ 𝐼) & ⊢ (𝜑 → 𝐹 ∈ 𝑀) & ⊢ 𝑁 = (Base‘(𝐼 mPoly 𝑅)) ⇒ ⊢ (𝜑 → (((𝐼extendVars𝑅)‘𝐴)‘𝐹) ∈ 𝑁) | ||
| 25-Jan-2026 | extvfvvcl 33956 | Closure for the "variable extension" function evaluated for converting a given polynomial 𝐹 by adding a variable with index 𝐴. (Contributed by Thierry Arnoux, 25-Jan-2026.) |
| ⊢ 𝐷 = {ℎ ∈ (ℕ0 ↑m 𝐼) ∣ ℎ finSupp 0} & ⊢ 0 = (0g‘𝑅) & ⊢ (𝜑 → 𝐼 ∈ 𝑉) & ⊢ (𝜑 → 𝑅 ∈ Ring) & ⊢ 𝐵 = (Base‘𝑅) & ⊢ 𝐽 = (𝐼 ∖ {𝐴}) & ⊢ 𝑀 = (Base‘(𝐽 mPoly 𝑅)) & ⊢ (𝜑 → 𝐴 ∈ 𝐼) & ⊢ (𝜑 → 𝐹 ∈ 𝑀) & ⊢ (𝜑 → 𝑋 ∈ 𝐷) ⇒ ⊢ (𝜑 → ((((𝐼extendVars𝑅)‘𝐴)‘𝐹)‘𝑋) ∈ 𝐵) | ||
| 25-Jan-2026 | extvfvv 33955 | The "variable extension" function evaluated for converting a given polynomial 𝐹 by adding a variable with index 𝐴. (Contributed by Thierry Arnoux, 25-Jan-2026.) |
| ⊢ 𝐷 = {ℎ ∈ (ℕ0 ↑m 𝐼) ∣ ℎ finSupp 0} & ⊢ 0 = (0g‘𝑅) & ⊢ (𝜑 → 𝐼 ∈ 𝑉) & ⊢ (𝜑 → 𝑅 ∈ 𝑊) & ⊢ (𝜑 → 𝐴 ∈ 𝐼) & ⊢ 𝐽 = (𝐼 ∖ {𝐴}) & ⊢ 𝑀 = (Base‘(𝐽 mPoly 𝑅)) & ⊢ (𝜑 → 𝐹 ∈ 𝑀) & ⊢ (𝜑 → 𝑋 ∈ 𝐷) ⇒ ⊢ (𝜑 → ((((𝐼extendVars𝑅)‘𝐴)‘𝐹)‘𝑋) = if((𝑋‘𝐴) = 0, (𝐹‘(𝑋 ↾ 𝐽)), 0 )) | ||
| 25-Jan-2026 | extvfv 33954 | The "variable extension" function evaluated for converting a given polynomial 𝐹 by adding a variable with index 𝐴. (Contributed by Thierry Arnoux, 25-Jan-2026.) |
| ⊢ 𝐷 = {ℎ ∈ (ℕ0 ↑m 𝐼) ∣ ℎ finSupp 0} & ⊢ 0 = (0g‘𝑅) & ⊢ (𝜑 → 𝐼 ∈ 𝑉) & ⊢ (𝜑 → 𝑅 ∈ 𝑊) & ⊢ (𝜑 → 𝐴 ∈ 𝐼) & ⊢ 𝐽 = (𝐼 ∖ {𝐴}) & ⊢ 𝑀 = (Base‘(𝐽 mPoly 𝑅)) & ⊢ (𝜑 → 𝐹 ∈ 𝑀) ⇒ ⊢ (𝜑 → (((𝐼extendVars𝑅)‘𝐴)‘𝐹) = (𝑥 ∈ 𝐷 ↦ if((𝑥‘𝐴) = 0, (𝐹‘(𝑥 ↾ 𝐽)), 0 ))) | ||
| 25-Jan-2026 | extvfval 33953 | The "variable extension" function evaluated for adding a variable with index 𝐴. (Contributed by Thierry Arnoux, 25-Jan-2026.) |
| ⊢ 𝐷 = {ℎ ∈ (ℕ0 ↑m 𝐼) ∣ ℎ finSupp 0} & ⊢ 0 = (0g‘𝑅) & ⊢ (𝜑 → 𝐼 ∈ 𝑉) & ⊢ (𝜑 → 𝑅 ∈ 𝑊) & ⊢ (𝜑 → 𝐴 ∈ 𝐼) & ⊢ 𝐽 = (𝐼 ∖ {𝐴}) & ⊢ 𝑀 = (Base‘(𝐽 mPoly 𝑅)) ⇒ ⊢ (𝜑 → ((𝐼extendVars𝑅)‘𝐴) = (𝑓 ∈ 𝑀 ↦ (𝑥 ∈ 𝐷 ↦ if((𝑥‘𝐴) = 0, (𝑓‘(𝑥 ↾ 𝐽)), 0 )))) | ||
| 25-Jan-2026 | extvval 33952 | Value of the "variable extension" function. (Contributed by Thierry Arnoux, 25-Jan-2026.) |
| ⊢ 𝐷 = {ℎ ∈ (ℕ0 ↑m 𝐼) ∣ ℎ finSupp 0} & ⊢ 0 = (0g‘𝑅) & ⊢ (𝜑 → 𝐼 ∈ 𝑉) & ⊢ (𝜑 → 𝑅 ∈ 𝑊) & ⊢ 𝐽 = (𝐼 ∖ {𝑎}) & ⊢ 𝑀 = (Base‘(𝐽 mPoly 𝑅)) ⇒ ⊢ (𝜑 → (𝐼extendVars𝑅) = (𝑎 ∈ 𝐼 ↦ (𝑓 ∈ 𝑀 ↦ (𝑥 ∈ 𝐷 ↦ if((𝑥‘𝑎) = 0, (𝑓‘(𝑥 ↾ (𝐼 ∖ {𝑎}))), 0 ))))) | ||
| 25-Jan-2026 | nn0diffz0 33176 | Upper set of the nonnegative integers. (Contributed by Thierry Arnoux, 25-Jan-2026.) |
| ⊢ (𝑁 ∈ ℕ0 → (ℕ0 ∖ (0...𝑁)) = (ℤ≥‘(𝑁 + 1))) | ||
| 25-Jan-2026 | rnressnsn 33059 | The range of a restriction to a singleton is a singleton. See dmressnsn 6027. (Contributed by Thierry Arnoux, 25-Jan-2026.) |
| ⊢ ((Fun 𝐹 ∧ 𝐴 ∈ dom 𝐹) → ran (𝐹 ↾ {𝐴}) = {(𝐹‘𝐴)}) | ||
| 25-Jan-2026 | partfun2 33058 | Rewrite a function defined by parts, using a mapping and an if construct, into a union of functions on disjoint domains. See also partfun 6689 and ifmpt2v 7525. (Contributed by Thierry Arnoux, 25-Jan-2026.) |
| ⊢ 𝐷 = {𝑥 ∈ 𝐴 ∣ 𝜑} ⇒ ⊢ (𝑥 ∈ 𝐴 ↦ if(𝜑, 𝐵, 𝐶)) = ((𝑥 ∈ 𝐷 ↦ 𝐵) ∪ (𝑥 ∈ (𝐴 ∖ 𝐷) ↦ 𝐶)) | ||
| 25-Jan-2026 | indconst1 12249 | Indicator of the whole set. (Contributed by Thierry Arnoux, 25-Jan-2026.) |
| ⊢ (𝑂 ∈ 𝑉 → ((𝟭‘𝑂)‘𝑂) = (𝑂 × {1})) | ||
| 25-Jan-2026 | indconst0 12248 | Indicator of the empty set. (Contributed by Thierry Arnoux, 25-Jan-2026.) |
| ⊢ (𝑂 ∈ 𝑉 → ((𝟭‘𝑂)‘∅) = (𝑂 × {0})) | ||
| 25-Jan-2026 | tz6.12-2 6875 | Function value when 𝐹 is not a function. Theorem 6.12(2) of [TakeutiZaring] p. 27. (Contributed by NM, 30-Apr-2004.) (Proof shortened by Mario Carneiro, 31-Aug-2015.) Avoid ax-10 2179, ax-11 2195, ax-12 2216. (Revised by TM, 25-Jan-2026.) |
| ⊢ (¬ ∃!𝑥 𝐴𝐹𝑥 → (𝐹‘𝐴) = ∅) | ||
| 24-Jan-2026 | r1omhfb 35533 | The class of all hereditarily finite sets is the only class with the property that all sets are members of it iff they are finite and all of their elements are members of it. (Contributed by BTernaryTau, 24-Jan-2026.) |
| ⊢ (𝐻 = ∪ (𝑅1 “ ω) ↔ ∀𝑥(𝑥 ∈ 𝐻 ↔ (𝑥 ∈ Fin ∧ ∀𝑦 ∈ 𝑥 𝑦 ∈ 𝐻))) | ||
| 24-Jan-2026 | trssfir1om 35532 | If every element in a transitive class is finite, then every element is also hereditarily finite. (Contributed by BTernaryTau, 24-Jan-2026.) |
| ⊢ ((Tr 𝐴 ∧ 𝐴 ⊆ Fin) → 𝐴 ⊆ ∪ (𝑅1 “ ω)) | ||
| 24-Jan-2026 | r11 35512 | Value of the cumulative hierarchy of sets function at 1o. (Contributed by BTernaryTau, 24-Jan-2026.) |
| ⊢ (𝑅1‘1o) = 1o | ||
| 24-Jan-2026 | rnco 6258 | The range of the composition of two classes. (Contributed by NM, 12-Dec-2006.) (Proof shortened by Peter Mazsa, 2-Oct-2022.) Avoid ax-11 2195. (Revised by TM, 24-Jan-2026.) |
| ⊢ ran (𝐴 ∘ 𝐵) = ran (𝐴 ↾ ran 𝐵) | ||
| 24-Jan-2026 | dm0rn0 5919 | An empty domain is equivalent to an empty range. (Contributed by NM, 21-May-1998.) Avoid ax-10 2179, ax-11 2195, ax-12 2216. (Revised by TM, 24-Jan-2026.) |
| ⊢ (dom 𝐴 = ∅ ↔ ran 𝐴 = ∅) | ||
| 24-Jan-2026 | eqabcbw 2840 | Version of eqabcb 2906 using implicit substitution, which requires fewer axioms. (Contributed by TM, 24-Jan-2026.) |
| ⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ ({𝑥 ∣ 𝜑} = 𝐴 ↔ ∀𝑦(𝜓 ↔ 𝑦 ∈ 𝐴)) | ||
| 24-Jan-2026 | excomw 2079 | Weak version of excom 2200 and biconditional form of excomimw 2077. Uses only Tarski's FOL axiom schemes. (Contributed by TM, 24-Jan-2026.) |
| ⊢ (𝑥 = 𝑤 → (𝜑 ↔ 𝜓)) & ⊢ (𝑦 = 𝑧 → (𝜑 ↔ 𝜒)) ⇒ ⊢ (∃𝑥∃𝑦𝜑 ↔ ∃𝑦∃𝑥𝜑) | ||
| 22-Jan-2026 | chnsubseq 47637 | An order-preserving subsequence of an ordered chain is itself a chain. (Contributed by Ender Ting, 22-Jan-2026.) |
| ⊢ (𝜑 → 𝑊 ∈ ( < Chain 𝐴)) & ⊢ (𝜑 → 𝐼 ∈ ( < Chain (0..^(♯‘𝑊)))) & ⊢ (𝜑 → < Po 𝐴) ⇒ ⊢ (𝜑 → (𝑊 ∘ 𝐼) ∈ ( < Chain 𝐴)) | ||
| 22-Jan-2026 | chnsubseqwl 47636 | A subsequence of a chain has the same length as its indexing sequence. (Contributed by Ender Ting, 22-Jan-2026.) |
| ⊢ (𝜑 → 𝑊 ∈ ( < Chain 𝐴)) & ⊢ (𝜑 → 𝐼 ∈ ( < Chain (0..^(♯‘𝑊)))) ⇒ ⊢ (𝜑 → (♯‘(𝑊 ∘ 𝐼)) = (♯‘𝐼)) | ||
| 22-Jan-2026 | chnsubseqword 47635 | A subsequence of a chain is a word. (Contributed by Ender Ting, 22-Jan-2026.) |
| ⊢ (𝜑 → 𝑊 ∈ ( < Chain 𝐴)) & ⊢ (𝜑 → 𝐼 ∈ ( < Chain (0..^(♯‘𝑊)))) ⇒ ⊢ (𝜑 → (𝑊 ∘ 𝐼) ∈ Word 𝐴) | ||
| 22-Jan-2026 | r1filim 35523 | A finite set appears in the cumulative hierarchy prior to a limit ordinal iff all of its elements appear in the cumulative hierarchy prior to that limit ordinal. (Contributed by BTernaryTau, 22-Jan-2026.) |
| ⊢ ((𝐴 ∈ Fin ∧ Lim 𝐵) → (𝐴 ∈ ∪ (𝑅1 “ 𝐵) ↔ ∀𝑥 ∈ 𝐴 𝑥 ∈ ∪ (𝑅1 “ 𝐵))) | ||
| 22-Jan-2026 | rankfilimb 35521 | The rank of a finite well-founded set is less than a limit ordinal iff the ranks of all of its elements are less than that limit ordinal. (Contributed by BTernaryTau, 22-Jan-2026.) |
| ⊢ ((𝐴 ∈ Fin ∧ 𝐴 ∈ ∪ (𝑅1 “ On) ∧ Lim 𝐵) → ((rank‘𝐴) ∈ 𝐵 ↔ ∀𝑥 ∈ 𝐴 (rank‘𝑥) ∈ 𝐵)) | ||
| 21-Jan-2026 | r1omhfbregs 35574 | The class of all hereditarily finite sets is the only class with the property that all sets are members of it iff they are finite and all of their elements are members of it. This version of r1omhfb 35533 replaces setinds2 9730 with setinds2regs 35568 and trssfir1om 35532 with trssfir1omregs 35573. (Contributed by BTernaryTau, 21-Jan-2026.) |
| ⊢ (𝐻 = ∪ (𝑅1 “ ω) ↔ ∀𝑥(𝑥 ∈ 𝐻 ↔ (𝑥 ∈ Fin ∧ ∀𝑦 ∈ 𝑥 𝑦 ∈ 𝐻))) | ||
| 20-Jan-2026 | trssfir1omregs 35573 | If every element in a transitive class is finite, then every element is also hereditarily finite. This version of trssfir1om 35532 replaces setinds2 9730 with setinds2regs 35568. (Contributed by BTernaryTau, 20-Jan-2026.) |
| ⊢ ((Tr 𝐴 ∧ 𝐴 ⊆ Fin) → 𝐴 ⊆ ∪ (𝑅1 “ ω)) | ||
| 20-Jan-2026 | df-extv 33951 | Define the "variable extension" function. The function ((𝐼extendVars𝑅)‘𝐴) converts polynomials with variables indexed by (𝐼 ∖ {𝐴}) into polynomials indexed by 𝐼, and therefore maps elements of ((𝐼 ∖ {𝐴}) mPoly 𝑅) onto (𝐼 mPoly 𝑅). (Contributed by Thierry Arnoux, 20-Jan-2026.) |
| ⊢ extendVars = (𝑖 ∈ V, 𝑟 ∈ V ↦ (𝑎 ∈ 𝑖 ↦ (𝑓 ∈ (Base‘((𝑖 ∖ {𝑎}) mPoly 𝑟)) ↦ (𝑥 ∈ {ℎ ∈ (ℕ0 ↑m 𝑖) ∣ ℎ finSupp 0} ↦ if((𝑥‘𝑎) = 0, (𝑓‘(𝑥 ↾ (𝑖 ∖ {𝑎}))), (0g‘𝑟)))))) | ||
| 20-Jan-2026 | chnfibg 18717 | Given a partial order, the set of chains is finite iff the alphabet is finite. (Contributed by Ender Ting, 20-Jan-2026.) |
| ⊢ ( < Po 𝐴 → (𝐴 ∈ Fin ↔ ( < Chain 𝐴) ∈ Fin)) | ||
| 20-Jan-2026 | chninf 18716 | There is an infinite number of chains for any infinite alphabet and any relation. For instance, all the singletons of alphabet characters match. (Contributed by Ender Ting, 20-Jan-2026.) |
| ⊢ (𝐴 ∉ Fin → ( < Chain 𝐴) ∉ Fin) | ||
(29-Jul-2020) Mario Carneiro presented MM0 at the CICM conference. See this Google Group post which includes a YouTube link.
(20-Jul-2020) Rohan Ridenour found 5 shorter D-proofs in our Shortest known proofs... file. In particular, he reduced *4.39 from 901 to 609 steps. A note on the Metamath Solitaire page mentions a tool that he worked with.
(19-Jul-2020) David A. Wheeler posted a video (https://youtu.be/3R27Qx69jHc) on how to (re)prove Schwabh�user 4.6 for the Metamath Proof Explorer. See also his older videos.
(19-Jul-2020) In version 0.184 of the metamath program, "verify markup" now checks that mathboxes are independent i.e. do not cross-reference each other. To turn off this check, use "/mathbox_skip"
(30-Jun-2020) In version 0.183 of the metamath program, (1) "verify markup" now has checking for (i) underscores in labels, (ii) that *ALT and *OLD theorems have both discouragement tags, and (iii) that lines don't have trailing spaces. (2) "save proof.../rewrap" no longer left-aligns $p/$a comments that contain the string "<HTML>"; see this note.
(5-Apr-2020) Glauco Siliprandi added a new proof to the 100 theorem list, e is Transcendental etransc, bringing the Metamath total to 74.
(12-Feb-2020) A bug in the 'minimize' command of metamath.exe versions 0.179 (29-Nov-2019) and 0.180 (10-Dec-2019) may incorrectly bring in the use of new axioms. Version 0.181 fixes it.
(20-Jan-2020) David A. Wheeler created a video called Walkthrough of the tutorial in mmj2. See the Google Group announcement for more details. (All of his videos are listed on the Other Metamath-Related Topics page.)
(18-Jan-2020) The FOMM 2020 talks are on youtube now. Mario Carneiro's talk is Metamath Zero, or: How to Verify a Verifier. Since they are washed out in the video, the PDF slides are available separately.
(14-Dec-2019) Glauco Siliprandi added a new proof to the 100 theorem list, Fourier series convergence fourier, bringing the Metamath total to 73.
(25-Nov-2019) Alexander van der Vekens added a new proof to the 100 theorem list, The Cayley-Hamilton Theorem cayleyhamilton, bringing the Metamath total to 72.
(25-Oct-2019) Mario Carneiro's paper "Metamath Zero: The Cartesian Theorem Prover" (submitted to CPP 2020) is now available on arXiv: https://arxiv.org/abs/1910.10703. There is a related discussion on Hacker News.
(30-Sep-2019) Mario Carneiro's talk about MM0 at ITP 2019 is available on YouTube: x86 verification from scratch (24 minutes). Google Group discussion: Metamath Zero.
(29-Sep-2019) David Wheeler created a fascinating Gource video that animates the construction of set.mm, available on YouTube: Metamath set.mm contributions viewed with Gource through 2019-09-26 (4 minutes). Google Group discussion: Gource video of set.mm contributions.
(24-Sep-2019) nLab added a page for Metamath. It mentions Stefan O'Rear's Busy Beaver work using the set.mm axiomatization (and fails to mention Mario's definitional soundness checker)
(1-Sep-2019) Xuanji Li published a Visual Studio Code extension to support metamath syntax highlighting.
(10-Aug-2019) (revised 21-Sep-2019) Version 0.178 of the metamath program has the following changes: (1) "minimize_with" will now prevent dependence on new $a statements unless the new qualifier "/allow_new_axioms" is specified. For routine usage, it is suggested that you use "minimize_with * /allow_new_axioms * /no_new_axioms_from ax-*" instead of just "minimize_with *". See "help minimize_with" and this Google Group post. Also note that the qualifier "/allow_growth" has been renamed to "/may_grow". (2) "/no_versioning" was added to "write theorem_list".
(8-Jul-2019) Jon Pennant announced the creation of a Metamath search engine. Try it and feel free to comment on it at https://groups.google.com/d/msg/metamath/cTeU5AzUksI/5GesBfDaCwAJ.
(16-May-2019) Set.mm now has a major new section on elementary geometry. This begins with definitions that implement Tarski's axioms of geometry (including concepts such as congruence and betweenness). This uses set.mm's extensible structures, making them easier to use for many circumstances. The section then connects Tarski geometry with geometry in Euclidean places. Most of the work in this section is due to Thierry Arnoux, with earlier work by Mario Carneiro and Scott Fenton. [Reported by DAW.]
(9-May-2019) We are sad to report that long-time contributor Alan Sare passed away on Mar. 23. There is some more information at the top of his mathbox (click on "Mathbox for Alan Sare") and his obituary. We extend our condolences to his family.
(10-Mar-2019) Jon Pennant and Mario Carneiro added a new proof to the 100 theorem list, Heron's formula heron, bringing the Metamath total to 71.
(22-Feb-2019) Alexander van der Vekens added a new proof to the 100 theorem list, Cramer's rule cramer, bringing the Metamath total to 70.
(6-Feb-2019) David A. Wheeler has made significant improvements and updates to the Metamath book. Any comments, errors found, or suggestions are welcome and should be turned into an issue or pull request at https://github.com/metamath/metamath-book (or sent to me if you prefer).
(26-Dec-2018) I added Appendix 8 to the MPE Home Page that cross-references new and old axiom numbers.
(20-Dec-2018) The axioms have been renumbered according to this Google Groups post.
(24-Nov-2018) Thierry Arnoux created a new page on topological structures. The page along with its SVG files are maintained on GitHub.
(11-Oct-2018) Alexander van der Vekens added a new proof to the 100 theorem list, the Friendship Theorem friendship, bringing the Metamath total to 69.
(1-Oct-2018) Naip Moro has written gramm, a Metamath proof verifier written in Antlr4/Java.
(16-Sep-2018) The definition df-riota has been simplified so that it evaluates to the empty set instead of an Undef value. This change affects a significant part of set.mm.
(2-Sep-2018) Thierry Arnoux added a new proof to the 100 theorem list, Euler's partition theorem eulerpart, bringing the Metamath total to 68.
(1-Sep-2018) The Kate editor now has Metamath syntax highlighting built in. (Communicated by Wolf Lammen.)
(15-Aug-2018) The Intuitionistic Logic Explorer now has a Most Recent Proofs page.
(4-Aug-2018) Version 0.163 of the metamath program now indicates (with an asterisk) which Table of Contents headers have associated comments.
(10-May-2018) George Szpiro, journalist and author of several books on popular mathematics such as Poincare's Prize and Numbers Rule, used a genetic algorithm to find shorter D-proofs of "*3.37" and "meredith" in our Shortest known proofs... file.
(19-Apr-2018) The EMetamath Eclipse plugin has undergone many improvements since its initial release as the change log indicates. Thierry uses it as his main proof assistant and writes, "I added support for mmj2's auto-transformations, which allows it to infer several steps when building proofs. This added a lot of comfort for writing proofs.... I can now switch back and forth between the proof assistant and editing the Metamath file.... I think no other proof assistant has this feature."
(11-Apr-2018) Benoît Jubin solved an open problem about the "Axiom of Twoness," showing that it is necessary for completeness. See item 14 on the "Open problems and miscellany" page.
(25-Mar-2018) Giovanni Mascellani has announced mmpp, a new proof editing environment for the Metamath language.
(27-Feb-2018) Bill Hale has released an app for the Apple iPad and desktop computer that allows you to browse Metamath theorems and their proofs.
(17-Jan-2018) Dylan Houlihan has kindly provided a new mirror site. He has also provided an rsync server; type "rsync uk.metamath.org::" in a bash shell to check its status (it should return "metamath metamath").
(15-Jan-2018) The metamath program, version 0.157, has been updated to implement the file inclusion conventions described in the 21-Dec-2017 entry of mmnotes.txt.
(11-Dec-2017) I added a paragraph, suggested by Gérard Lang, to the distinct variable description here.
(10-Dec-2017) Per FL's request, his mathbox will be removed from set.mm. If you wish to export any of his theorems, today's version (master commit 1024a3a) is the last one that will contain it.
(11-Nov-2017) Alan Sare updated his completeusersproof program.
(3-Oct-2017) Sean B. Palmer created a web page that runs the metamath program under emulated Linux in JavaScript. He also wrote some programs to work with our shortest known proofs of the PM propositional calculus theorems.
(28-Sep-2017) Ivan Kuckir wrote a tutorial blog entry, Introduction to Metamath, that summarizes the language syntax. (It may have been written some time ago, but I was not aware of it before.)
(26-Sep-2017) The default directory for the Metamath Proof Explorer (MPE) has been changed from the GIF version (mpegif) to the Unicode version (mpeuni) throughout the site. Please let me know if you find broken links or other issues.
(24-Sep-2017) Saveliy Skresanov added a new proof to the 100 theorem list, Ceva's Theorem cevath, bringing the Metamath total to 67.
(3-Sep-2017) Brendan Leahy added a new proof to the 100 theorem list, Area of a Circle areacirc, bringing the Metamath total to 66.
(7-Aug-2017) Mario Carneiro added a new proof to the 100 theorem list, Principle of Inclusion/Exclusion incexc, bringing the Metamath total to 65.
(1-Jul-2017) Glauco Siliprandi added a new proof to the 100 theorem list, Stirling's Formula stirling, bringing the Metamath total to 64. Related theorems include 2 versions of Wallis' formula for π (wallispi and wallispi2).
(7-May-2017) Thierry Arnoux added a new proof to the 100 theorem list, Betrand's Ballot Problem ballotth, bringing the Metamath total to 63.
(20-Apr-2017) Glauco Siliprandi added a new proof in the supplementary list on the 100 theorem list, Stone-Weierstrass Theorem stowei.
(28-Feb-2017) David Moews added a new proof to the 100 theorem list, Product of Segments of Chords chordthm, bringing the Metamath total to 62.
(1-Jan-2017) Saveliy Skresanov added a new proof to the 100 theorem list, Isosceles triangle theorem isosctr, bringing the Metamath total to 61.
(1-Jan-2017) Mario Carneiro added 2 new proofs to the 100 theorem list, L'Hôpital's Rule lhop and Taylor's Theorem taylth, bringing the Metamath total to 60.
(28-Dec-2016) David A. Wheeler is putting together a page on Metamath (specifically set.mm) conventions. Comments are welcome on the Google Group thread.
(24-Dec-2016) Mario Carneiro introduced the abbreviation "F/ x ph" (symbols: turned F, x, phi) in df-nf to represent the "effectively not free" idiom "A. x ( ph -> A. x ph )". Theorem nf2 shows a version without nested quantifiers.
(22-Dec-2016) Naip Moro has developed a Metamath database for G. Spencer-Brown's Laws of Form. You can follow the Google Group discussion here.
(20-Dec-2016) In metamath program version 0.137, 'verify markup *' now checks that ax-XXX $a matches axXXX $p when the latter exists, per the discussion at https://groups.google.com/d/msg/metamath/Vtz3CKGmXnI/Fxq3j1I_EQAJ.
(24-Nov-2016) Mingl Yuan has kindly provided a mirror site in Beijing, China. He has also provided an rsync server; type "rsync cn.metamath.org::" in a bash shell to check its status (it should return "metamath metamath").
(14-Aug-2016) All HTML pages on this site should now be mobile-friendly and pass the Mobile-Friendly Test. If you find one that does not, let me know.
(14-Aug-2016) Daniel Whalen wrote a paper describing the use of using deep learning to prove 14% of test theorems taken from set.mm: Holophrasm: a neural Automated Theorem Prover for higher-order logic. The associated program is called Holophrasm.
(14-Aug-2016) David A. Wheeler created a video called Metamath Proof Explorer: A Modern Principia Mathematica
(12-Aug-2016) A Gitter chat room has been created for Metamath.
(9-Aug-2016) Mario Carneiro wrote a Metamath proof verifier in the Scala language as part of the ongoing Metamath -> MMT import project
(9-Aug-2016) David A. Wheeler created a GitHub project called metamath-test (last execution run) to check that different verifiers both pass good databases and detect errors in defective ones.
(4-Aug-2016) Mario gave two presentations at CICM 2016.
(17-Jul-2016) Thierry Arnoux has written EMetamath, a Metamath plugin for the Eclipse IDE.
(16-Jul-2016) Mario recovered Chris Capel's collapsible proof demo.
(13-Jul-2016) FL sent me an updated version of PDF (LaTeX source) developed with Lamport's pf2 package. See the 23-Apr-2012 entry below.
(12-Jul-2016) David A. Wheeler produced a new video for mmj2 called "Creating functions in Metamath". It shows a more efficient approach than his previous recent video "Creating functions in Metamath" (old) but it can be of interest to see both approaches.
(10-Jul-2016) Metamath program version 0.132 changes the command 'show restricted' to 'show discouraged' and adds a new command, 'set discouragement'. See the mmnotes.txt entry of 11-May-2016 (updated 10-Jul-2016).
(12-Jun-2016) Dan Getz has written Metamath.jl, a Metamath proof verifier written in the Julia language.
(10-Jun-2016) If you are using metamath program versions 0.128, 0.129, or 0.130, please update to version 0.131. (In the bad versions, 'minimize_with' ignores distinct variable violations.)
(1-Jun-2016) Mario Carneiro added new proofs to the 100 theorem list, the Prime Number Theorem pnt and the Perfect Number Theorem perfect, bringing the Metamath total to 58.
(12-May-2016) Mario Carneiro added a new proof to the 100 theorem list, Dirichlet's theorem dirith, bringing the Metamath total to 56. (Added 17-May-2016) An informal exposition of the proof can be found at http://metamath-blog.blogspot.com/2016/05/dirichlets-theorem.html
(10-Mar-2016) Metamath program version 0.125 adds a new qualifier, /fast, to 'save proof'. See the mmnotes.txt entry of 10-Mar-2016.
(6-Mar-2016) The most recent set.mm has a large update converting variables from letters to symbols. See this Google Groups post.
(16-Feb-2016) Mario Carneiro's new paper "Models for Metamath" can be found here and on arxiv.org.
(6-Feb-2016) There are now 22 math symbols that can be used as variable names. See mmascii.html near the 50th table row, starting with "./\".
(29-Jan-2016) Metamath program version 0.123 adds /packed and /explicit qualifiers to 'save proof' and 'show proof'. See this Google Groups post.
(13-Jan-2016) The Unicode math symbols now provide for external CSS and use the XITS web font. Thanks to David A. Wheeler, Mario Carneiro, Cris Perdue, Jason Orendorff, and Frédéric Liné for discussions on this topic. Two commands, htmlcss and htmlfont, were added to the $t comment in set.mm and are recognized by Metamath program version 0.122.
(21-Dec-2015) Axiom ax-12, now renamed ax-12o, was replaced by a new shorter equivalent, ax-12. The equivalence is provided by theorems ax12o and ax12.
(13-Dec-2015) A new section on the theory of classes was added to the MPE Home Page. Thanks to Gérard Lang for suggesting this section and improvements to it.
(17-Nov-2015) Metamath program version 0.121: 'verify markup' was added to check comment markup consistency; see 'help verify markup'. You are encouraged to make sure 'verify markup */f' has no warnings prior to mathbox submissions. The date consistency rules are given in this Google Groups post.
(23-Sep-2015) Drahflow wrote, "I am currently working on yet another proof assistant, main reason being: I understand stuff best if I code it. If anyone is interested: https://github.com/Drahflow/Igor (but in my own programming language, so expect a complicated build process :P)"
(23-Aug-2015) Ivan Kuckir created MM Tool, a Metamath proof verifier and editor written in JavaScript that runs in a browser.
(25-Jul-2015) Axiom ax-10 is shown to be redundant by theorem ax10 , so it was removed from the predicate calculus axiom list.
(19-Jul-2015) Mario Carneiro gave two talks related to Metamath at CICM 2015, which are linked to at Other Metamath-Related Topics.
(18-Jul-2015) The metamath program has been updated to version 0.118. 'show trace_back' now has a '/to' qualifier to show the path back to a specific axiom such as ax-ac. See 'help show trace_back'.
(12-Jul-2015) I added the HOL Explorer for Mario Carneiro's hol.mm database. Although the home page needs to be filled out, the proofs can be accessed.
(11-Jul-2015) I started a new page, Other Metamath-Related Topics, that will hold miscellaneous material that doesn't fit well elsewhere (or is hard to find on this site). Suggestions welcome.
(23-Jun-2015) Metamath's mascot, Penny the cat (2007 photo), passed away today. She was 18 years old.
(21-Jun-2015) Mario Carneiro added 3 new proofs to the 100 theorem list: All Primes (1 mod 4) Equal the Sum of Two Squares 2sq, The Law of Quadratic Reciprocity lgsquad and the AM-GM theorem amgm, bringing the Metamath total to 55.
(13-Jun-2015) Stefan O'Rear's smm, written in JavaScript, can now be used as a standalone proof verifier. This brings the total number of independent Metamath verifiers to 8, written in just as many languages (C, Java. JavaScript, Python, Haskell, Lua, C#, C++).
(12-Jun-2015) David A. Wheeler added 2 new proofs to the 100 theorem list: The Law of Cosines lawcos and Ptolemy's Theorem ptolemy, bringing the Metamath total to 52.
(30-May-2015) The metamath program has been updated to version 0.117. (1) David A. Wheeler provided an enhancement to speed up the 'improve' command by 28%; see README.TXT for more information. (2) In web pages with proofs, local hyperlinks on step hypotheses no longer clip the Expression cell at the top of the page.
(9-May-2015) Stefan O'Rear has created an archive of older set.mm releases back to 1998: https://github.com/sorear/set.mm-history/.
(7-May-2015) The set.mm dated 7-May-2015 is a major revision, updated by Mario, that incorporates the new ordered pair definition df-op that was agreed upon. There were 700 changes, listed at the top of set.mm. Mathbox users are advised to update their local mathboxes. As usual, if any mathbox user has trouble incorporating these changes into their mathbox in progress, Mario or I will be glad to do them for you.
(7-May-2015) Mario has added 4 new theorems to the 100 theorem list: Ramsey's Theorem ramsey, The Solution of a Cubic cubic, The Solution of the General Quartic Equation quart, and The Birthday Problem birthday. In the Supplementary List, Stefan O'Rear added the Hilbert Basis Theorem hbt.
(28-Apr-2015) A while ago, Mario Carneiro wrote up a proof of the unambiguity of set.mm's grammar, which has now been added to this site: grammar-ambiguity.txt.
(22-Apr-2015) The metamath program has been updated to version 0.114. In MM-PA, 'show new_proof/unknown' now shows the relative offset (-1, -2,...) used for 'assign' arguments, suggested by Stefan O'Rear.
(20-Apr-2015) I retrieved an old version of the missing "Metamath 100" page from archive.org and updated it to what I think is the current state: mm_100.html. Anyone who wants to edit it can email updates to this page to me.
(19-Apr-2015) The metamath program has been updated to version 0.113, mostly with patches provided by Stefan O'Rear. (1) 'show statement %' (or any command allowing label wildcards) will select statements whose proofs were changed in current session. ('help search' will show all wildcard matching rules.) (2) 'show statement =' will select the statement being proved in MM-PA. (3) The proof date stamp is now created only if the proof is complete.
(18-Apr-2015) There is now a section for Scott Fenton's NF database: New Foundations Explorer.
(16-Apr-2015) Mario describes his recent additions to set.mm at https://groups.google.com/forum/#!topic/metamath/VAGNmzFkHCs. It include 2 new additions to the Formalizing 100 Theorems list, Leibniz' series for pi (leibpi) and the Konigsberg Bridge problem (konigsberg)
(10-Mar-2015) Mario Carneiro has written a paper, "Arithmetic in Metamath, Case Study: Bertrand's Postulate," for CICM 2015. A preprint is available at arXiv:1503.02349.
(23-Feb-2015) Scott Fenton has created a Metamath formalization of NF set theory: https://github.com/sctfn/metamath-nf/. For more information, see the Metamath Google Group posting.
(28-Jan-2015) Mario Carneiro added Wilson's Theorem (wilth), Ascending or Descending Sequences (erdsze, erdsze2), and Derangements Formula (derangfmla, subfaclim), bringing the Metamath total for Formalizing 100 Theorems to 44.
(19-Jan-2015) Mario Carneiro added Sylow's Theorem (sylow1, sylow2, sylow2b, sylow3), bringing the Metamath total for Formalizing 100 Theorems to 41.
(9-Jan-2015) The hypothesis order of mpbi*an* was changed. See the Notes entry of 9-Jan-2015.
(1-Jan-2015) Mario Carneiro has written a paper, "Conversion of HOL Light proofs into Metamath," that has been submitted to the Journal of Formalized Reasoning. A preprint is available on arxiv.org.
(22-Nov-2014) Stefan O'Rear added the Solutions to Pell's Equation (rmxycomplete) and Liouville's Theorem and the Construction of Transcendental Numbers (aaliou), bringing the Metamath total for Formalizing 100 Theorems to 40.
(22-Nov-2014) The metamath program has been updated with version 0.111. (1) Label wildcards now have a label range indicator "~" so that e.g. you can show or search all of the statements in a mathbox. See 'help search'. (Stefan O'Rear added this to the program.) (2) A qualifier was added to 'minimize_with' to prevent the use of any axioms not already used in the proof e.g. 'minimize_with * /no_new_axioms_from ax-*' will prevent the use of ax-ac if the proof doesn't already use it. See 'help minimize_with'.
(10-Oct-2014) Mario Carneiro has encoded the axiomatic basis for the HOL theorem prover into a Metamath source file, hol.mm.
(24-Sep-2014) Mario Carneiro added the Sum of the Angles of a Triangle (ang180), bringing the Metamath total for Formalizing 100 Theorems to 38.
(15-Sep-2014) Mario Carneiro added the Fundamental Theorem of Algebra (fta), bringing the Metamath total for Formalizing 100 Theorems to 37.
(3-Sep-2014) Mario Carneiro added the Fundamental Theorem of Integral Calculus (ftc1, ftc2). This brings the Metamath total for Formalizing 100 Theorems to 35. (added 14-Sep-2014) Along the way, he added the Mean Value Theorem (mvth), bringing the total to 36.
(16-Aug-2014) Mario Carneiro started a Metamath blog at http://metamath-blog.blogspot.com/.
(10-Aug-2014) Mario Carneiro added Erdős's proof of the divergence of the inverse prime series (prmrec). This brings the Metamath total for Formalizing 100 Theorems to 34.
(31-Jul-2014) Mario Carneiro added proofs for Euler's Summation of 1 + (1/2)^2 + (1/3)^2 + .... (basel) and The Factor and Remainder Theorems (facth, plyrem). This brings the Metamath total for Formalizing 100 Theorems to 33.
(16-Jul-2014) Mario Carneiro added proofs for Four Squares Theorem (4sq), Formula for the Number of Combinations (hashbc), and Divisibility by 3 Rule (3dvds). This brings the Metamath total for Formalizing 100 Theorems to 31.
(11-Jul-2014) Mario Carneiro added proofs for Divergence of the Harmonic Series (harmonic), Order of a Subgroup (lagsubg), and Lebesgue Measure and Integration (itgcl). This brings the Metamath total for Formalizing 100 Theorems to 28.
(7-Jul-2014) Mario Carneiro presented a talk, "Natural Deduction in the Metamath Proof Language," at the 6PCM conference. Slides Audio
(25-Jun-2014) In version 0.108 of the metamath program, the 'minimize_with' command is now more automated. It now considers compressed proof length; it scans the statements in forward and reverse order and chooses the best; and it avoids $d conflicts. The '/no_distinct', '/brief', and '/reverse' qualifiers are obsolete, and '/verbose' no longer lists all statements scanned but gives more details about decision criteria.
(12-Jun-2014) To improve naming uniformity, theorems about operation values now use the abbreviation "ov". For example, df-opr, opreq1, oprabval5, and oprvres are now called df-ov, oveq1, ov5, and ovres respectively.
(11-Jun-2014) Mario Carneiro finished a major revision of set.mm. His notes are under the 11-Jun-2014 entry in the Notes
(4-Jun-2014) Mario Carneiro provided instructions and screenshots for syntax highlighting for the jEdit editor for use with Metamath and mmj2 source files.
(19-May-2014) Mario Carneiro added a feature to mmj2, in the build at
https://github.com/digama0/mmj2/raw/dev-build/mmj2jar/mmj2.jar, which
tests all but 5 definitions in set.mm for soundness. You can turn on
the test by adding
SetMMDefinitionsCheckWithExclusions,ax-*,df-bi,df-clab,df-cleq,df-clel,df-sbc
to your RunParms.txt file.
(17-May-2014) A number of labels were changed in set.mm, listed at the top of set.mm as usual. Note in particular that the heavily-used visset, elisseti, syl11anc, syl111anc were changed respectively to vex, elexi, syl2anc, syl3anc.
(16-May-2014) Scott Fenton formalized a proof for "Sum of kth powers": fsumkthpow. This brings the Metamath total for Formalizing 100 Theorems to 25.
(9-May-2014) I (Norm Megill) presented an overview of Metamath at the "Formalization of mathematics in proof assistants" workshop at the Institut Henri Poincar� in Paris. The slides for this talk are here.
(22-Jun-2014) Version 0.107 of the metamath program adds a "PART" indention level to the Statement List table of contents, adds 'show proof ... /size' to show source file bytes used, and adds 'show elapsed_time'. The last one is helpful for measuring the run time of long commands. See 'help write theorem_list', 'help show proof', and 'help show elapsed_time' for more information.
(2-May-2014) Scott Fenton formalized a proof of Sum of the Reciprocals of the Triangular Numbers: trirecip. This brings the Metamath total for Formalizing 100 Theorems to 24.
(19-Apr-2014) Scott Fenton formalized a proof of the Formula for Pythagorean Triples: pythagtrip. This brings the Metamath total for Formalizing 100 Theorems to 23.
(11-Apr-2014) David A. Wheeler produced a much-needed and well-done video for mmj2, called "Introduction to Metamath & mmj2". Thanks, David!
(15-Mar-2014) Mario Carneiro formalized a proof of Bertrand's postulate: bpos. This brings the Metamath total for Formalizing 100 Theorems to 22.
(18-Feb-2014) Mario Carneiro proved that complex number axiom ax-cnex is redundant (theorem cnex). See also Real and Complex Numbers.
(11-Feb-2014) David A. Wheeler has created a theorem compilation that tracks those theorems in Freek Wiedijk's Formalizing 100 Theorems list that have been proved in set.mm. If you find a error or omission in this list, let me know so it can be corrected. (Update 1-Mar-2014: Mario has added eulerth and bezout to the list.)
(4-Feb-2014) Mario Carneiro writes:
The latest commit on the mmj2 development branch introduced an exciting new feature, namely syntax highlighting for mmp files in the main window. (You can pick up the latest mmj2.jar at https://github.com/digama0/mmj2/blob/develop/mmj2jar/mmj2.jar .) The reason I am asking for your help at this stage is to help with design for the syntax tokenizer, which is responsible for breaking down the input into various tokens with names like "comment", "set", and "stephypref", which are then colored according to the user's preference. As users of mmj2 and metamath, what types of highlighting would be useful to you?One limitation of the tokenizer is that since (for performance reasons) it can be started at any line in the file, highly contextual coloring, like highlighting step references that don't exist previously in the file, is difficult to do. Similarly, true parsing of the formulas using the grammar is possible but likely to be unmanageably slow. But things like checking theorem labels against the database is quite simple to do under the current setup.
That said, how can this new feature be optimized to help you when writing proofs?
(13-Jan-2014) Mathbox users: the *19.21a*, *19.23a* series of theorems have been renamed to *alrim*, *exlim*. You can update your mathbox with a global replacement of string '19.21a' with 'alrim' and '19.23a' with 'exlim'.
(5-Jan-2014) If you downloaded mmj2 in the past 3 days, please update it with the current version, which fixes a bug introduced by the recent changes that made it unable to read in most of the proofs in the textarea properly.
(4-Jan-2014) I added a list of "Allowed substitutions" under the "Distinct variable groups" list on the theorem web pages, for example axsep. This is an experimental feature and comments are welcome.
(3-Jan-2014) Version 0.102 of the metamath program produces more space-efficient compressed proofs (still compatible with the specification in Appendix B of the Metamath book) using an algorithm suggested by Mario Carneiro. See 'help save proof' in the program. Also, mmj2 now generates proofs in the new format. The new mmj2 also has a mandatory update that fixes a bug related to the new format; you must update your mmj2 copy to use it with the latest set.mm.
(23-Dec-2013) Mario Carneiro has updated many older definitions to use the maps-to notation. If you have difficulty updating your local mathbox, contact him or me for assistance.
(1-Nov-2013) 'undo' and 'redo' commands were added to the Proof Assistant in metamath program version 0.07.99. See 'help undo' in the program.
(8-Oct-2013) Today's Notes entry describes some proof repair techniques.
(5-Oct-2013) Today's Notes entry explains some recent extensible structure improvements.
(8-Sep-2013) Mario Carneiro has revised the square root and sequence generator definitions. See today's Notes entry.
(3-Aug-2013) Mario Carneiro writes: "I finally found enough time to create a GitHub repository for development at https://github.com/digama0/mmj2. A permalink to the latest version plus source (akin to mmj2.zip) is https://github.com/digama0/mmj2/zipball/, and the jar file on its own (mmj2.jar) is at https://github.com/digama0/mmj2/blob/master/mmj2jar/mmj2.jar?raw=true. Unfortunately there is no easy way to automatically generate mmj2jar.zip, but this is available as part of the zip distribution for mmj2.zip. History tracking will be handled by the repository now. Do you have old versions of the mmj2 directory? I could add them as historical commits if you do."
(18-Jun-2013) Mario Carneiro has done a major revision and cleanup of the construction of real and complex numbers. In particular, rather than using equivalence classes as is customary for the construction of the temporary rationals, he used only "reduced fractions", so that the use of the axiom of infinity is avoided until it becomes necessary for the construction of the temporary reals.
(18-May-2013) Mario Carneiro has added the ability to produce compressed proofs to mmj2. This is not an official release but can be downloaded here if you want to try it: mmj2.jar. If you have any feedback, send it to me (NM), and I will forward it to Mario. (Disclaimer: this release has not been endorsed by Mel O'Cat. If anyone has been in contact with him, please let me know.)
(29-Mar-2013) Charles Greathouse reduced the size of our PNG symbol images using the pngout program.
(8-Mar-2013) Wolf Lammen has reorganized the theorems in the "Logical negation" section of set.mm into a more orderly, less scattered arrangement.
(27-Feb-2013) Scott Fenton has done a large cleanup of set.mm, eliminating *OLD references in 144 proofs. See the Notes entry for 27-Feb-2013.
(21-Feb-2013) *ATTENTION MATHBOX USERS* The order of hypotheses of many syl* theorems were changed, per a suggestion of Mario Carneiro. You need to update your local mathbox copy for compatibility with the new set.mm, or I can do it for you if you wish. See the Notes entry for 21-Feb-2013.
(16-Feb-2013) Scott Fenton shortened the direct-from-axiom proofs of *3.1, *3.43, *4.4, *4.41, *4.5, *4.76, *4.83, *5.33, *5.35, *5.36, and meredith in the "Shortest known proofs of the propositional calculus theorems from Principia Mathematica" (pmproofs.txt).
(27-Jan-2013) Scott Fenton writes, "I've updated Ralph Levien's mmverify.py. It's now a Python 3 program, and supports compressed proofs and file inclusion statements. This adds about fifty lines to the original program. Enjoy!"
(10-Jan-2013) A new mathbox was added for Mario Carneiro, who has contributed a number of cardinality theorems without invoking the Axiom of Choice. This is nice work, and I will be using some of these (those suffixed with "NEW") to replace the existing ones in the main part of set.mm that currently invoke AC unnecessarily.
(4-Jan-2013) As mentioned in the 19-Jun-2012 item below, Eric Schmidt discovered that the complex number axioms axaddcom (now addcom) and ax0id (now addid1) are redundant (schmidt-cnaxioms.pdf, .tex). In addition, ax1id (now mulid1) can be weakened to ax1rid. Scott Fenton has now formalized this work, so that now there are 23 instead of 25 axioms for real and complex numbers in set.mm. The Axioms for Complex Numbers page has been updated with these results. An interesting part of the proof, showing how commutativity of addition follows from other laws, is in addcomi.
(27-Nov-2012) The frequently-used theorems "an1s", "an1rs", "ancom13s", "ancom31s" were renamed to "an12s", "an32s", "an13s", "an31s" to conform to the convention for an12 etc.
(4-Nov-2012) The changes proposed in the Notes, renaming Grp to GrpOp etc., have been incorporated into set.mm. See the list of changes at the top of set.mm. If you want me to update your mathbox with these changes, send it to me along with the version of set.mm that it works with.
(20-Sep-2012) Mel O'Cat updated https://us.metamath.org/ocat/mmj2/TESTmmj2jar.zip. See the README.TXT for a description of the new features.
(21-Aug-2012) Mel O'Cat has uploaded SearchOptionsMockup9.zip, a mockup for the new search screen in mmj2. See the README.txt file for instructions. He will welcome feedback via x178g243 at yahoo.com.
(19-Jun-2012) Eric Schmidt has discovered that in our axioms for complex numbers, axaddcom and ax0id are redundant. (At some point these need to be formalized for set.mm.) He has written up these and some other nice results, including some independence results for the axioms, in schmidt-cnaxioms.pdf (schmidt-cnaxioms.tex).
(23-Apr-2012) Frédéric Liné sent me a PDF (LaTeX source) developed with Lamport's pf2 package. He wrote: "I think it works well with Metamath since the proofs are in a tree form. I use it to have a sketch of a proof. I get this way a better understanding of the proof and I can cut down its size. For instance, inpreima5 was reduced by 50% when I wrote the corresponding proof with pf2."
(5-Mar-2012) I added links to Wikiproofs and its recent changes in the "Wikis" list at the top of this page.
(12-Jan-2012) Thanks to William Hoza who sent me a ZFC T-shirt, and thanks to the ZFC models (courtesy of the Inaccessible Cardinals agency).
| Front | Back | Detail |
|
|
|
|
(24-Nov-2011) In metamath program version 0.07.71, the 'minimize_with' command by default now scans from bottom to top instead of top to bottom, since empirically this often (although not always) results in a shorter proof. A top to bottom scan can be specified with a new qualifier '/reverse'. You can try both methods (starting from the same original proof, of course) and pick the shorter proof.
(15-Oct-2011) From Mel O'Cat:
I just uploaded mmj2.zip containing the 1-Nov-2011 (20111101)
release:
https://us.metamath.org/ocat/mmj2/mmj2.zip
https://us.metamath.org/ocat/mmj2/mmj2.md5
A few last minute tweaks:
1. I now bless double-click starting of mmj2.bat (MacMMJ2.command in Mac OS-X)!
See mmj2\QuickStart.html
2. Much improved support of Mac OS-X systems.
See mmj2\QuickStart.html
3. I tweaked the Command Line Argument Options report to
a) print every time;
b) print as much as possible even if
there are errors in the command line arguments -- and the
last line printed corresponds to the argument in error;
c) removed Y/N argument on the command line to enable/disable
the report. this simplifies things.
4) Documentation revised, including the PATutorial.
See CHGLOG.TXT for list of all changes.
Good luck. And thanks for all of your help!
(15-Sep-2011) MATHBOX USERS: I made a large number of label name changes to set.mm to improve naming consistency. There is a script at the top of the current set.mm that you can use to update your mathbox or older set.mm. Or if you wish, I can do the update on your next mathbox submission - in that case, please include a .zip of the set.mm version you used.
(30-Aug-2011) Scott Fenton shortened the direct-from-axiom proofs of *3.33, *3.45, *4.36, and meredith in the "Shortest known proofs of the propositional calculus theorems from Principia Mathematica" (pmproofs.txt).
(21-Aug-2011) A post on reddit generated 60,000 hits (and a TOS violation notice from my provider...),
(18-Aug-2011) The Metamath Google Group has a discussion of my canonical conjunctions proposal. Any feedback directly to me (Norm Megill) is also welcome.
(4-Jul-2011) John Baker has provided (metamath_kindle.zip) "a modified version of [the] metamath.tex [Metamath] book source that is formatted for the Kindle. If you compile the document the resulting PDF can be loaded into into a Kindle and easily read." (Update: the PDF file is now included also.)
(3-Jul-2011) Nested 'submit' calls are now allowed, in metamath program version 0.07.68. Thus you can create or modify a command file (script) from within a command file then 'submit' it. While 'submit' cannot pass arguments (nor are there plans to add this feature), you can 'substitute' strings in the 'submit' target file before calling it in order to emulate this.
(28-Jun-2011)The metamath program version 0.07.64 adds the '/include_mathboxes' qualifier to 'minimize_with'; by default, 'minimize_with *' will now skip checking user mathboxes. Since mathboxes should be independent from each other, this will help prevent accidental cross-"contamination". Also, '/rewrap' was added to 'write source' to automatically wrap $a and $p comments so as to conform to the current formatting conventions used in set.mm. This means you no longer have to be concerned about line length < 80 etc.
(19-Jun-2011) ATTENTION MATHBOX USERS: The wff variables et, ze, si, and rh are now global. This change was made primarily to resolve some conflicts between mathboxes, but it will also let you avoid having to constantly redeclare these locally in the future. Unfortunately, this change can affect the $f hypothesis order, which can cause proofs referencing theorems that use these variables to fail. All mathbox proofs currently in set.mm have been corrected for this, and you should refresh your local copy for further development of your mathbox. You can correct your proofs that are not in set.mm as follows. Only the proofs that fail under the current set.mm (using version 0.07.62 or later of the metamath program) need to be modified.
To fix a proof that references earlier theorems using et, ze, si, and rh, do the following (using a hypothetical theorem 'abc' as an example): 'prove abc' (ignore error messages), 'delete floating', 'initialize all', 'unify all/interactive', 'improve all', 'save new_proof/compressed'. If your proof uses dummy variables, these must be reassigned manually.
To fix a proof that uses et, ze, si, and rh as local variables, make sure the proof is saved in 'compressed' format. Then delete the local declarations ($v and $f statements) and follow the same steps above to correct the proof.
I apologize for the inconvenience. If you have trouble fixing your proofs, you can contact me for assistance.
Note: Versions of the metamath program before 0.07.62 did not flag an error when global variables were redeclared locally, as it should have according to the spec. This caused these spec violations to go unnoticed in some older set.mm versions. The new error messages are in fact just informational and can be ignored when working with older set.mm versions.
(7-Jun-2011) The metamath program version 0.07.60 fixes a bug with the 'minimize_with' command found by Andrew Salmon.
(12-May-2010) Andrew Salmon shortened many proofs, shown above. For comparison, I have temporarily kept the old version, which is suffixed with OLD, such as oridmOLD for oridm.
(9-Dec-2010) Eric Schmidt has written a Metamath proof verifier in C++, called checkmm.cpp.
(3-Oct-2010) The following changes were made to the tokens in set.mm. The subset and proper subset symbol changes to C_ and C. were made to prevent defeating the parenthesis matching in Emacs. Other changes were made so that all letters a-z and A-Z are now available for variable names. One-letter constants such as _V, _e, and _i are now shown on the web pages with Roman instead of italic font, to disambiguate italic variable names. The new convention is that a prefix of _ indicates Roman font and a prefix of ~ indicates a script (curly) font. Thanks to Stefan Allan and Frédéric Liné for discussions leading to this change.
| Old | New | Description |
|---|---|---|
| C. | _C | binomial coefficient |
| E | _E | epsilon relation |
| e | _e | Euler's constant |
| I | _I | identity relation |
| i | _i | imaginary unit |
| V | _V | universal class |
| (_ | C_ | subset |
| (. | C. | proper subset |
| P~ | ~P | power class |
| H~ | ~H | Hilbert space |
(25-Sep-2010) The metamath program (version 0.07.54) now implements the current Metamath spec, so footnote 2 on p. 92 of the Metamath book can be ignored.
(24-Sep-2010) The metamath program (version 0.07.53) fixes bug 2106, reported by Michal Burger.
(14-Sep-2010) The metamath program (version 0.07.52) has a revamped LaTeX output with 'show statement xxx /tex', which produces the combined statement, description, and proof similar to the web page generation. Also, 'show proof xxx /lemmon/renumber' now matches the web page step numbers. ('show proof xxx/renumber' still has the indented form conforming to the actual RPN proof, with slightly different numbering.)
(9-Sep-2010) The metamath program (version 0.07.51) was updated with a modification by Stefan Allan that adds hyperlinks the the Ref column of proofs.
(12-Jun-2010) Scott Fenton contributed a D-proof (directly from axioms) of Meredith's single axiom (see the end of pmproofs.txt). A description of Meredith's axiom can be found in theorem meredith.
(11-Jun-2010) A new Metamath mirror was added in Austria, courtesy of Kinder-Enduro.
(28-Feb-2010) Raph Levien's Ghilbert project now has a new Ghilbert site and a Google Group.
(26-Jan-2010) Dmitri Vlasov writes, "I admire the simplicity and power of the metamath language, but still I see its great disadvantage - the proofs in metamath are completely non-manageable by humans without proof assistants. Therefore I decided to develop another language, which would be a higher-level superstructure language towards metamath, and which will support human-readable/writable proofs directly, without proof assistants. I call this language mdl (acronym for 'mathematics development language')." The latest version of Dmitri's translators from metamath to mdl and back can be downloaded from http://mathdevlanguage.sourceforge.net/. Currently only Linux is supported, but Dmitri says is should not be difficult to port it to other platforms that have a g++ compiler.
(11-Sep-2009) The metamath program (version 0.07.48) has been updated to enforce the whitespace requirement of the current spec.
(10-Sep-2009) Matthew Leitch has written an nice article, "How to write mathematics clearly", that briefly mentions Metamath. Overall it makes some excellent points. (I have written to him about a few things I disagree with.)
(28-May-2009) AsteroidMeta is back on-line. Note the URL change.
(12-May-2009) Charles Greathouse wrote a Greasemonkey script to reformat the axiom list on Metamath web site proof pages. This is a beta version; he will appreciate feedback.
(11-May-2009) Stefan Allan modified the metamath program to add the command "show statement xxx /mnemonics", which produces the output file Mnemosyne.txt for use with the Mnemosyne project. The current Metamath program download incorporates this command. Instructions: Create the file mnemosyne.txt with e.g. "show statement ax-* /mnemonics". In the Mnemosyne program, load the file by choosing File->Import then file format "Q and A on separate lines". Notes: (1) Don't try to load all of set.mm, it will crash the program due to a bug in Mnemosyne. (2) On my computer, the arrows in ax-1 don't display. Stefan reports that they do on his computer. (Both are Windows XP.)
(3-May-2009) Steven Baldasty wrote a Metamath syntax highlighting file for the gedit editor. Screenshot.
(1-May-2009) Users on a gaming forum discuss our 2+2=4 proof. Notable comments include "Ew math!" and "Whoever wrote this has absolutely no life."
(12-Mar-2009) Chris Capel has created a Javascript theorem viewer demo that (1) shows substitutions and (2) allows expanding and collapsing proof steps. You are invited to take a look and give him feedback at his Metablog.
(28-Feb-2009) Chris Capel has written a Metamath proof verifier in C#, available at http://pdf23ds.net/bzr/MathEditor/Verifier/Verifier.cs and weighing in at 550 lines. Also, that same URL without the file on it is a Bazaar repository.
(2-Dec-2008) A new section was added to the Deduction Theorem page, called Logic, Metalogic, Metametalogic, and Metametametalogic.
(24-Aug-2008) (From ocat): The 1-Aug-2008 version of mmj2 is ready (mmj2.zip), size = 1,534,041 bytes. This version contains the Theorem Loader enhancement which provides a "sandboxing" capability for user theorems and dynamic update of new theorems to the Metamath database already loaded in memory by mmj2. Also, the new "mmj2 Service" feature enables calling mmj2 as a subroutine, or having mmj2 call your program, and provides access to the mmj2 data structures and objects loaded in memory (i.e. get started writing those Jython programs!) See also mmj2 on AsteroidMeta.
(23-May-2008) Gérard Lang pointed me to Bob Solovay's note on AC and strongly inaccessible cardinals. One of the eventual goals for set.mm is to prove the Axiom of Choice from Grothendieck's axiom, like Mizar does, and this note may be helpful for anyone wanting to attempt that. Separately, I also came across a history of the size reduction of grothprim (viewable in Firefox and some versions of Internet Explorer).
(14-Apr-2008) A "/join" qualifier was added to the "search" command in the metamath program (version 0.07.37). This qualifier will join the $e hypotheses to the $a or $p for searching, so that math tokens in the $e's can be matched as well. For example, "search *com* +v" produces no results, but "search *com* +v /join" yields commutative laws involving vector addition. Thanks to Stefan Allan for suggesting this idea.
(8-Apr-2008) The 8,000th theorem, hlrel, was added to the Metamath Proof Explorer part of the database.
(2-Mar-2008) I added a small section to the end of the Deduction Theorem page.
(17-Feb-2008) ocat has uploaded the "1-Mar-2008" mmj2: mmj2.zip. See the description.
(16-Jan-2008) O'Cat has written mmj2 Proof Assistant Quick Tips.
(30-Dec-2007) "How to build a library of formalized mathematics".
(22-Dec-2007) The Metamath Proof Explorer was included in the top 30 science resources for 2007 by the University at Albany Science Library.
(17-Dec-2007) Metamath's Wikipedia entry says, "This article may require cleanup to meet Wikipedia's quality standards" (see its discussion page). Volunteers are welcome. :) (In the interest of objectivity, I don't edit this entry.)
(20-Nov-2007) Jeff Hoffman created nicod.mm and posted it to the Google Metamath Group.
(19-Nov-2007) Reinder Verlinde suggested adding tooltips to the hyperlinks on the proof pages, which I did for proof step hyperlinks. Discussion.
(5-Nov-2007) A Usenet challenge. :)
(4-Aug-2007) I added a "Request for comments on proposed 'maps to' notation" at the bottom of the AsteroidMeta set.mm discussion page.
(21-Jun-2007) A preprint (PDF file) describing Kurt Maes' axiom of choice with 5 quantifiers, proved in set.mm as ackm.
(20-Jun-2007) The 7,000th theorem, ifpr, was added to the Metamath Proof Explorer part of the database.
(29-Apr-2007) Blog mentions of Metamath: here and here.
(21-Mar-2007) Paul Chapman is working on a new proof browser, which has highlighting that allows you to see the referenced theorem before and after the substitution was made. Here is a screenshot of theorem 0nn0 and a screenshot of theorem 2p2e4.
(15-Mar-2007) A picture of Penny the cat guarding the us.metamath.org server and making the rounds.
(16-Feb-2007) For convenience, the program "drule.c" (pronounced "D-rule", not "drool") mentioned in pmproofs.txt can now be downloaded (drule.c) without having to ask me for it. The same disclaimer applies: even though this program works and has no known bugs, it was not intended for general release. Read the comments at the top of the program for instructions.
(28-Jan-2007) Jason Orendorff set up a new mailing list for Metamath: http://groups.google.com/group/metamath.
(20-Jan-2007) Bob Solovay provided a revised version of his Metamath database for Peano arithmetic, peano.mm.
(2-Jan-2007) Raph Levien has set up a wiki called Barghest for the Ghilbert language and software.
(26-Dec-2006) I posted an explanation of theorem ecoprass on Usenet.
(2-Dec-2006) Berislav Žarnić translated the Metamath Solitaire applet to Croatian.
(26-Nov-2006) Dan Getz has created an RSS feed for new theorems as they appear on this page.
(6-Nov-2006) The first 3 paragraphs in Appendix 2: Note on the Axioms were rewritten to clarify the connection between Tarski's axiom system and Metamath.
(31-Oct-2006) ocat asked for a do-over due to a bug in mmj2 -- if you downloaded the mmj2.zip version dated 10/28/2006, then download the new version dated 10/30.
(29-Oct-2006) ocat has announced that the
long-awaited 1-Nov-2006 release of mmj2 is available now.
The new "Unify+Get Hints" is quite
useful, and any proof can be generated as follows. With "?" in the Hyp
field and Ref field blank, select "Unify+Get Hints". Select a hint from
the list and put it in the Ref field. Edit any $n dummy variables to
become the desired wffs. Rinse and repeat for the new proof steps
generated, until the proof is done.
The new tutorial, mmj2PATutorial.bat,
explains this in detail. One way to reduce or avoid dummy $n's is to
fill in the Hyp field with a comma-separated list of any known
hypothesis matches to earlier proof steps, keeping a "?" in the list to
indicate that the remaining hypotheses are unknown. Then "Unify+Get
Hints" can be applied. The tutorial page
\mmj2\data\mmp\PATutorial\Page405.mmp has an example.
Don't forget that the eimm
export/import program lets you go back and forth between the mmj2 and
the metamath program proof assistants, without exiting from either one,
to exploit the best features of each as required.
(21-Oct-2006) Martin Kiselkov has written a Metamath proof verifier in the Lua scripting language, called verify.lua. While it is not practical as an everyday verifier - he writes that it takes about 40 minutes to verify set.mm on a a Pentium 4 - it could be useful to someone learning Lua or Metamath, and importantly it provides another independent way of verifying the correctness of Metamath proofs. His code looks like it is nicely structured and very readable. He is currently working on a faster version in C++.
(19-Oct-2006) New AsteroidMeta page by Raph, Distinctors_vs_binders.
(13-Oct-2006) I put a simple Metamath browser on my PDA (Palm Tungsten E) so that I don't have to lug around my laptop. Here is a screenshot. It isn't polished, but I'll provide the file + instructions if anyone wants it.
(3-Oct-2006) A blog entry, Principia for Reverse Mathematics.
(28-Sep-2006) A blog entry, Metamath responds.
(26-Sep-2006) A blog entry, Metamath isn't hygienic.
(11-Aug-2006) A blog entry, Metamath and the Peano Induction Axiom.
(26-Jul-2006) A new open problem in predicate calculus was added.
(18-Jun-2006) The 6,000th theorem, mt4d, was added to the Metamath Proof Explorer part of the database.
(9-May-2006) Luca Ciciriello has upgraded the t2mf program, which is a C
program used to create the MIDI files on the
Metamath Music Page, so
that it works on MacOS X. This is a nice accomplishment, since the
original program was written before C was standardized by ANSI and will
not compile on modern compilers.
Unfortunately, the original program source states no copyright terms.
The main author, Tim Thompson, has kindly agreed to release his code to
public domain, but two other authors have also contributed to the code,
and so far I have been unable to contact them for copyright clearance.
Therefore I cannot offer the MacOS X version for public download on this
site until this is resolved. Update 10-May-2006: Another author,
M. Czeiszperger, has released his contribution to public domain.
If you are interested in Luca's modified source code,
please contact me directly.
(18-Apr-2006) Incomplete proofs in progress can now be interchanged between the Metamath program's CLI Proof Assistant and mmj2's GUI Proof Assistant, using a new export-import program called eimm. This can be done without exiting either proof assistant, so that the strengths of each approach can be exploited during proof development. See "Use Case 5a" and "Use Case 5b" at mmj2ProofAssistantFeedback.
(28-Mar-2006) Scott Fenton updated his second version of Metamath Solitaire (the one that uses external axioms). He writes: "I've switched to making it a standalone program, as it seems silly to have an applet that can't be run in a web browser. Check the README file for further info." The download is mmsol-0.5.tar.gz.
(27-Mar-2006) Scott Fenton has updated the Metamath Solitaire Java
applet to Java 1.5: (1) QSort has been stripped out: its functionality
is in the Collections class that Sun ships; (2) all Vectors have been
replaced by ArrayLists; (3) generic types have been tossed in wherever
they fit: this cuts back drastically on casting; and (4) any warnings
Eclipse spouted out have been dealt with. I haven't yet updated it
officially, because I don't know if it will work with Microsoft's JVM in
older versions of Internet Explorer. The current official version is
compiled with Java 1.3, because it won't work with Microsoft's JVM if it
is compiled with Java 1.4. (As distasteful as that seems,
I will get complaints from users if it
doesn't work with Microsoft's JVM.) If anyone can verify that Scott's new
version runs on Microsoft's JVM, I would be grateful. Scott's new
version is mm.java-1.5.gz; after
uncompressing it, rename it to mm.java,
use it to replace the existing mm.java file in the
Metamath Solitaire download, and recompile according to instructions
in the mm.java comments.
Scott has also created a second version, mmsol-0.2.tar.gz, that reads
the axioms from ASCII files, instead of having the axioms hard-coded in
the program. This can be very useful if you want to play with custom
axioms, and you can also add a collection of starting theorems as
"axioms" to work from. However, it must be run from the local directory
with appletviewer, since the default Java security model doesn't allow
reading files from a browser. It works with the JDK 5 Update 6
Java download.
To compile (from Windows Command Prompt): C:\Program
Files\Java\jdk1.5.0_06\bin\javac.exe mm.java
To run (from Windows Command Prompt): C:\Program
Files\Java\jdk1.5.0_06\bin\appletviewer.exe mms.html
(21-Jan-2006) Juha Arpiainen proved the independence of axiom ax-11 from the others. This was published as an open problem in my 1995 paper (Remark 9.5 on PDF page 17). See Item 9a on the Workshop Miscellany for his seven-line proof. See also the Asteroid Meta metamathMathQuestions page under the heading "Axiom of variable substitution: ax-11". Congratulations, Juha!
(20-Oct-2005) Juha Arpiainen is working on a proof verifier in Common Lisp called Bourbaki. Its proof language has its roots in Metamath, with the goal of providing a more powerful syntax and definitional soundness checking. See its documentation and related discussion.
(17-Oct-2005) Marnix Klooster has written a Metamath proof verifier in Haskell, called Hmm. Also see his Announcement. The complete program (Hmm.hs, HmmImpl.hs, and HmmVerify.hs) has only 444 lines of code, excluding comments and blank lines. It verifies compressed as well as regular proofs; moreover, it transparently verifies both per-spec compressed proofs and the flawed format he uncovered (see comment below of 16-Oct-05).
(16-Oct-2005) Marnix Klooster noticed that for large proofs, the compressed proof format did not match the spec in the book. His algorithm to correct the problem has been put into the Metamath program (version 0.07.6). The program still verifies older proofs with the incorrect format, but the user will be nagged to update them with 'save proof *'. In set.mm, 285 out of 6376 proofs are affected. (The incorrect format did not affect proof correctness or verification, since the compression and decompression algorithms matched each other.)
(13-Sep-2005) Scott Fenton found an interesting axiom, ax46, which could be used to replace both ax-4 and ax-6.
(29-Jul-2005) Metamath was selected as site of the week by American Scientist Online.
(8-Jul-2005) Roy Longton has contributed 53 new theorems to the Quantum Logic Explorer. You can see them in the Theorem List starting at lem3.3.3lem1. He writes, "If you want, you can post an open challenge to see if anyone can find shorter proofs of the theorems I submitted."
(10-May-2005) A Usenet post I posted about the infinite prime proof; another one about indexed unions.
(3-May-2005) The theorem divexpt is the 5,000th theorem added to the Metamath Proof Explorer database.
(12-Apr-2005) Raph Levien solved the open problem in item 16 on the Workshop Miscellany page and as a corollary proved that axiom ax-9 is independent from the other axioms of predicate calculus and equality. This is the first such independence proof so far; a goal is to prove all of them independent (or to derive any redundant ones from the others).
(8-Mar-2005) I added a paragraph above our complex number axioms table, summarizing the construction and indicating where Dedekind cuts are defined. Thanks to Andrew Buhr for comments on this.
(16-Feb-2005) The Metamath Music Page is mentioned as a reference or resource for a university course called Math, Mind, and Music. .
(28-Jan-2005) Steven Cullinane parodied the Metamath Music Page in his blog.
(18-Jan-2005) Waldek Hebisch upgraded the Metamath program to run on the AMD64 64-bit processor.
(17-Jan-2005) A symbol list summary was added to the beginning of the Hilbert Space Explorer Home Page. Thanks to Mladen Pavicic for suggesting this.
(6-Jan-2005) Someone assembled an amazon.com list of some of the books in the Metamath Proof Explorer Bibliography.
(4-Jan-2005) The definition of ordinal exponentiation was decided on after this Usenet discussion.
(19-Dec-2004) A bit of trivia: my Erdös number is 2, as you can see from this list.
(20-Oct-2004) I started this Usenet discussion about the "reals are uncountable" proof (127 comments; last one on Nov. 12).
(12-Oct-2004) gch-kn shows the equivalence of the Generalized Continuum Hypothesis and Prof. Nambiar's Axiom of Combinatorial Sets. This proof answers his Open Problem 2 (PDF file).
(5-Aug-2004) I gave a talk on "Hilbert Lattice Equations" at the Argonne workshop.
(25-Jul-2004) The theorem nthruz is the 4,000th theorem added to the Metamath Proof Explorer database.
(27-May-2004) Josiah Burroughs contributed the proofs u1lemn1b, u1lem3var1, oi3oa3lem1, and oi3oa3 to the Quantum Logic Explorer database ql.mm.
(23-May-2004) Some minor typos found by Josh Purinton were corrected in the Metamath book. In addition, Josh simplified the definition of the closure of a pre-statement of a formal system in Appendix C.
(5-May-2004) Gregory Bush has found shorter proofs for 67 of the 193 propositional calculus theorems listed in Principia Mathematica, thus establishing 67 new records. (This was challenge #4 on the open problems page.)
| Copyright terms: Public domain | W3C HTML validation [external] |