| 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 44922 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 44922. 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 44922, 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 216 | . . . . 5 ⊢ (𝑥 ∈ ∪ {𝐴} → ∃𝑞(𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴})) |
| 3 | id 22 | . . . . . . . . 9 ⊢ ((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → (𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴})) | |
| 4 | simpl 482 | . . . . . . . . 9 ⊢ ((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝑞) | |
| 5 | 3, 4 | syl 17 | . . . . . . . 8 ⊢ ((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝑞) |
| 6 | simpr 484 | . . . . . . . . . 10 ⊢ ((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑞 ∈ {𝐴}) | |
| 7 | 3, 6 | syl 17 | . . . . . . . . 9 ⊢ ((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑞 ∈ {𝐴}) |
| 8 | elsni 4609 | . . . . . . . . 9 ⊢ (𝑞 ∈ {𝐴} → 𝑞 = 𝐴) | |
| 9 | 7, 8 | syl 17 | . . . . . . . 8 ⊢ ((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑞 = 𝐴) |
| 10 | eleq2 2818 | . . . . . . . . 9 ⊢ (𝑞 = 𝐴 → (𝑥 ∈ 𝑞 ↔ 𝑥 ∈ 𝐴)) | |
| 11 | 10 | biimpac 478 | . . . . . . . 8 ⊢ ((𝑥 ∈ 𝑞 ∧ 𝑞 = 𝐴) → 𝑥 ∈ 𝐴) |
| 12 | 5, 9, 11 | syl2anc 584 | . . . . . . 7 ⊢ ((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴) |
| 13 | 12 | ax-gen 1795 | . . . . . 6 ⊢ ∀𝑞((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴) |
| 14 | 19.23v 1942 | . . . . . . 7 ⊢ (∀𝑞((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴) ↔ (∃𝑞(𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴)) | |
| 15 | 14 | biimpi 216 | . . . . . 6 ⊢ (∀𝑞((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴) → (∃𝑞(𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴)) |
| 16 | 13, 15 | ax-mp 5 | . . . . 5 ⊢ (∃𝑞(𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴) |
| 17 | pm3.35 802 | . . . . 5 ⊢ ((∃𝑞(𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) ∧ (∃𝑞(𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴)) → 𝑥 ∈ 𝐴) | |
| 18 | 2, 16, 17 | sylancl 586 | . . . 4 ⊢ (𝑥 ∈ ∪ {𝐴} → 𝑥 ∈ 𝐴) |
| 19 | 18 | ax-gen 1795 | . . 3 ⊢ ∀𝑥(𝑥 ∈ ∪ {𝐴} → 𝑥 ∈ 𝐴) |
| 20 | df-ss 3934 | . . . 4 ⊢ (∪ {𝐴} ⊆ 𝐴 ↔ ∀𝑥(𝑥 ∈ ∪ {𝐴} → 𝑥 ∈ 𝐴)) | |
| 21 | 20 | biimpri 228 | . . 3 ⊢ (∀𝑥(𝑥 ∈ ∪ {𝐴} → 𝑥 ∈ 𝐴) → ∪ {𝐴} ⊆ 𝐴) |
| 22 | 19, 21 | ax-mp 5 | . 2 ⊢ ∪ {𝐴} ⊆ 𝐴 |
| 23 | id 22 | . . . . 5 ⊢ (𝑥 ∈ 𝐴 → 𝑥 ∈ 𝐴) | |
| 24 | unisnALT.1 | . . . . . 6 ⊢ 𝐴 ∈ V | |
| 25 | 24 | snid 4629 | . . . . 5 ⊢ 𝐴 ∈ {𝐴} |
| 26 | elunii 4879 | . . . . 5 ⊢ ((𝑥 ∈ 𝐴 ∧ 𝐴 ∈ {𝐴}) → 𝑥 ∈ ∪ {𝐴}) | |
| 27 | 23, 25, 26 | sylancl 586 | . . . 4 ⊢ (𝑥 ∈ 𝐴 → 𝑥 ∈ ∪ {𝐴}) |
| 28 | 27 | ax-gen 1795 | . . 3 ⊢ ∀𝑥(𝑥 ∈ 𝐴 → 𝑥 ∈ ∪ {𝐴}) |
| 29 | df-ss 3934 | . . . 4 ⊢ (𝐴 ⊆ ∪ {𝐴} ↔ ∀𝑥(𝑥 ∈ 𝐴 → 𝑥 ∈ ∪ {𝐴})) | |
| 30 | 29 | biimpri 228 | . . 3 ⊢ (∀𝑥(𝑥 ∈ 𝐴 → 𝑥 ∈ ∪ {𝐴}) → 𝐴 ⊆ ∪ {𝐴}) |
| 31 | 28, 30 | ax-mp 5 | . 2 ⊢ 𝐴 ⊆ ∪ {𝐴} |
| 32 | 22, 31 | eqssi 3966 | 1 ⊢ ∪ {𝐴} = 𝐴 |
| Colors of variables: wff setvar class |
| Syntax hints: → wi 4 ∧ wa 395 ∀wal 1538 = wceq 1540 ∃wex 1779 ∈ wcel 2109 Vcvv 3450 ⊆ wss 3917 {csn 4592 ∪ cuni 4874 |
| This theorem was proved from axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1795 ax-4 1809 ax-5 1910 ax-6 1967 ax-7 2008 ax-8 2111 ax-9 2119 ax-ext 2702 |
| This theorem depends on definitions: df-bi 207 df-an 396 df-tru 1543 df-ex 1780 df-sb 2066 df-clab 2709 df-cleq 2722 df-clel 2804 df-v 3452 df-ss 3934 df-sn 4593 df-uni 4875 |
| This theorem is referenced by: (None) |
| Copyright terms: Public domain | W3C validator |