| Mathbox for Alan Sare |
< Previous
Next >
Nearby theorems |
||
| Mirrors > Home > MPE Home > Th. List > Mathboxes > unisnALT | Structured version Visualization version GIF version | ||
| Description: A set equals the union of its singleton. Theorem 8.2 of [Quine] p. 53. The User manually input on a mmj2 Proof Worksheet, without labels, all steps of unisnALT 45667 except 1, 11, 15, 21, and 30. With execution of the mmj2 unification command, mmj2 could find labels for all steps except for 2, 12, 16, 22, and 31 (and the then non-existing steps 1, 11, 15, 21, and 30). mmj2 could not find reference theorems for those five steps because the hypothesis field of each of these steps was empty and none of those steps unifies with a theorem in set.mm. Each of these five steps is a semantic variation of a theorem in set.mm and is 2-step provable. mmj2 does not have the ability to automatically generate the semantic variation in set.mm of a theorem in a mmj2 Proof Worksheet unless the theorem in the Proof Worksheet is labeled with a 1-hypothesis deduction whose hypothesis is a theorem in set.mm which unifies with the theorem in the Proof Worksheet. The stepprover.c program, which invokes mmj2, has this capability. stepprover.c automatically generated steps 1, 11, 15, 21, and 30, labeled all steps, and generated the RPN proof of unisnALT 45667. Roughly speaking, stepprover.c added to the Proof Worksheet a labeled duplicate step of each non-unifying theorem for each label in a text file, labels.txt, containing a list of labels provided by the User. Upon mmj2 unification, stepprover.c identified a label for each of the five theorems which 2-step proves it. For unisnALT 45667, the label list is a list of all 1-hypothesis propositional calculus deductions in set.mm. stepproverp.c is the same as stepprover.c except that it intermittently pauses during execution, allowing the User to observe the changes to a text file caused by the execution of particular statements of the program. (Contributed by Alan Sare, 19-Aug-2016.) (Proof modification is discouraged.) (New usage is discouraged.) |
| Ref | Expression |
|---|---|
| unisnALT.1 | ⊢ 𝐴 ∈ V |
| Ref | Expression |
|---|---|
| unisnALT | ⊢ ∪ {𝐴} = 𝐴 |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | eluni 4877 | . . . . . 6 ⊢ (𝑥 ∈ ∪ {𝐴} ↔ ∃𝑞(𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴})) | |
| 2 | 1 | biimpi 219 | . . . . 5 ⊢ (𝑥 ∈ ∪ {𝐴} → ∃𝑞(𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴})) |
| 3 | id 23 | . . . . . . . . 9 ⊢ ((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → (𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴})) | |
| 4 | simpl 488 | . . . . . . . . 9 ⊢ ((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝑞) | |
| 5 | 3, 4 | syl 18 | . . . . . . . 8 ⊢ ((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝑞) |
| 6 | simpr 490 | . . . . . . . . . 10 ⊢ ((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑞 ∈ {𝐴}) | |
| 7 | 3, 6 | syl 18 | . . . . . . . . 9 ⊢ ((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑞 ∈ {𝐴}) |
| 8 | elsni 4608 | . . . . . . . . 9 ⊢ (𝑞 ∈ {𝐴} → 𝑞 = 𝐴) | |
| 9 | 7, 8 | syl 18 | . . . . . . . 8 ⊢ ((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑞 = 𝐴) |
| 10 | eleq2 2854 | . . . . . . . . 9 ⊢ (𝑞 = 𝐴 → (𝑥 ∈ 𝑞 ↔ 𝑥 ∈ 𝐴)) | |
| 11 | 10 | biimpac 484 | . . . . . . . 8 ⊢ ((𝑥 ∈ 𝑞 ∧ 𝑞 = 𝐴) → 𝑥 ∈ 𝐴) |
| 12 | 5, 9, 11 | syl2anc 596 | . . . . . . 7 ⊢ ((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴) |
| 13 | 12 | ax-gen 1828 | . . . . . 6 ⊢ ∀𝑞((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴) |
| 14 | 19.23v 1975 | . . . . . . 7 ⊢ (∀𝑞((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴) ↔ (∃𝑞(𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴)) | |
| 15 | 14 | biimpi 219 | . . . . . 6 ⊢ (∀𝑞((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴) → (∃𝑞(𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴)) |
| 16 | 13, 15 | ax-mp 5 | . . . . 5 ⊢ (∃𝑞(𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴) |
| 17 | pm3.35 815 | . . . . 5 ⊢ ((∃𝑞(𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) ∧ (∃𝑞(𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴)) → 𝑥 ∈ 𝐴) | |
| 18 | 2, 16, 17 | sylancl 598 | . . . 4 ⊢ (𝑥 ∈ ∪ {𝐴} → 𝑥 ∈ 𝐴) |
| 19 | 18 | ax-gen 1828 | . . 3 ⊢ ∀𝑥(𝑥 ∈ ∪ {𝐴} → 𝑥 ∈ 𝐴) |
| 20 | df-ss 3923 | . . . 4 ⊢ (∪ {𝐴} ⊆ 𝐴 ↔ ∀𝑥(𝑥 ∈ ∪ {𝐴} → 𝑥 ∈ 𝐴)) | |
| 21 | 20 | biimpri 231 | . . 3 ⊢ (∀𝑥(𝑥 ∈ ∪ {𝐴} → 𝑥 ∈ 𝐴) → ∪ {𝐴} ⊆ 𝐴) |
| 22 | 19, 21 | ax-mp 5 | . 2 ⊢ ∪ {𝐴} ⊆ 𝐴 |
| 23 | id 23 | . . . . 5 ⊢ (𝑥 ∈ 𝐴 → 𝑥 ∈ 𝐴) | |
| 24 | unisnALT.1 | . . . . . 6 ⊢ 𝐴 ∈ V | |
| 25 | 24 | snid 4630 | . . . . 5 ⊢ 𝐴 ∈ {𝐴} |
| 26 | elunii 4879 | . . . . 5 ⊢ ((𝑥 ∈ 𝐴 ∧ 𝐴 ∈ {𝐴}) → 𝑥 ∈ ∪ {𝐴}) | |
| 27 | 23, 25, 26 | sylancl 598 | . . . 4 ⊢ (𝑥 ∈ 𝐴 → 𝑥 ∈ ∪ {𝐴}) |
| 28 | 27 | ax-gen 1828 | . . 3 ⊢ ∀𝑥(𝑥 ∈ 𝐴 → 𝑥 ∈ ∪ {𝐴}) |
| 29 | df-ss 3923 | . . . 4 ⊢ (𝐴 ⊆ ∪ {𝐴} ↔ ∀𝑥(𝑥 ∈ 𝐴 → 𝑥 ∈ ∪ {𝐴})) | |
| 30 | 29 | biimpri 231 | . . 3 ⊢ (∀𝑥(𝑥 ∈ 𝐴 → 𝑥 ∈ ∪ {𝐴}) → 𝐴 ⊆ ∪ {𝐴}) |
| 31 | 28, 30 | ax-mp 5 | . 2 ⊢ 𝐴 ⊆ ∪ {𝐴} |
| 32 | 22, 31 | eqssi 3954 | 1 ⊢ ∪ {𝐴} = 𝐴 |
| Colors of variables: wff setvar class |
| This proof depends on syntax axioms: → wi 4 ∧ wa 401 ∀wal 1568 = wceq 1570 ∃wex 1812 ∈ wcel 2146 Vcvv 3457 ⊆ wss 3906 {csn 4591 ∪ cuni 4874 |
| This proof depends on axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1828 ax-4 1842 ax-5 1943 ax-6 2000 ax-7 2041 ax-8 2148 ax-9 2156 ax-ext 2737 |
| This proof depends on definitions: df-bi 210 df-an 402 df-tru 1573 df-ex 1813 df-sb 2100 df-clab 2744 df-cleq 2757 df-clel 2840 df-v 3459 df-ss 3923 df-sn 4592 df-uni 4875 |
| This theorem is used by: (None) |
| Copyright terms: Public domain | W3C validator |