| 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 46168 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 46168. 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 46168, 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 4875 | . . . . . 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 4601 | . . . . . . . . 9 ⊢ (𝑞 ∈ {𝐴} → 𝑞 = 𝐴) | |
| 9 | 7, 8 | syl 18 | . . . . . . . 8 ⊢ ((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑞 = 𝐴) |
| 10 | eleq2 2853 | . . . . . . . . 9 ⊢ (𝑞 = 𝐴 → (𝑥 ∈ 𝑞 ↔ 𝑥 ∈ 𝐴)) | |
| 11 | 10 | biimpac 484 | . . . . . . . 8 ⊢ ((𝑥 ∈ 𝑞 ∧ 𝑞 = 𝐴) → 𝑥 ∈ 𝐴) |
| 12 | 5, 9, 11 | syl2anc 596 | . . . . . . 7 ⊢ ((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴) |
| 13 | 12 | ax-gen 1828 | . . . . . 6 ⊢ ∀𝑞((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴) |
| 14 | 19.23v 1977 | . . . . . . 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 3901 | . . . 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 4624 | . . . . 5 ⊢ 𝐴 ∈ {𝐴} |
| 26 | elunii 4877 | . . . . 5 ⊢ ((𝑥 ∈ 𝐴 ∧ 𝐴 ∈ {𝐴}) → 𝑥 ∈ ∪ {𝐴}) | |
| 27 | 23, 25, 26 | sylancl 598 | . . . 4 ⊢ (𝑥 ∈ 𝐴 → 𝑥 ∈ ∪ {𝐴}) |
| 28 | 27 | ax-gen 1828 | . . 3 ⊢ ∀𝑥(𝑥 ∈ 𝐴 → 𝑥 ∈ ∪ {𝐴}) |
| 29 | df-ss 3901 | . . . 4 ⊢ (𝐴 ⊆ ∪ {𝐴} ↔ ∀𝑥(𝑥 ∈ 𝐴 → 𝑥 ∈ ∪ {𝐴})) | |
| 30 | 29 | biimpri 231 | . . 3 ⊢ (∀𝑥(𝑥 ∈ 𝐴 → 𝑥 ∈ ∪ {𝐴}) → 𝐴 ⊆ ∪ {𝐴}) |
| 31 | 28, 30 | ax-mp 5 | . 2 ⊢ 𝐴 ⊆ ∪ {𝐴} |
| 32 | 22, 31 | eqssi 3929 | 1 ⊢ ∪ {𝐴} = 𝐴 |
| Colors of variables: wff setvar class |
| This proof depends on syntax axioms: → wi 4 ∧ wa 401 ∀wal 1568 = wceq 1570 ∃wex 1812 ∈ wcel 2147 Vcvv 3454 ⊆ wss 3900 {csn 4588 ∪ cuni 4872 |
| 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 1945 ax-6 2002 ax-7 2043 ax-8 2149 ax-9 2157 ax-ext 2735 |
| This proof depends on definitions: df-bi 210 df-an 402 df-tru 1573 df-ex 1813 df-sb 2102 df-clab 2742 df-cleq 2755 df-clel 2839 df-v 3456 df-ss 3901 df-sn 4589 df-uni 4873 |
| This theorem is used by: (None) |
| Copyright terms: Public domain | W3C validator |