| 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 45369 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 45369. 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 45369, 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 4841 | . . . . . 6 ⊢ (𝑥 ∈ ∪ {𝐴} ↔ ∃𝑞(𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴})) | |
| 2 | 1 | biimpi 217 | . . . . 5 ⊢ (𝑥 ∈ ∪ {𝐴} → ∃𝑞(𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴})) |
| 3 | id 22 | . . . . . . . . 9 ⊢ ((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → (𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴})) | |
| 4 | simpl 483 | . . . . . . . . 9 ⊢ ((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝑞) | |
| 5 | 3, 4 | syl 17 | . . . . . . . 8 ⊢ ((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝑞) |
| 6 | simpr 485 | . . . . . . . . . 10 ⊢ ((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑞 ∈ {𝐴}) | |
| 7 | 3, 6 | syl 17 | . . . . . . . . 9 ⊢ ((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑞 ∈ {𝐴}) |
| 8 | elsni 4572 | . . . . . . . . 9 ⊢ (𝑞 ∈ {𝐴} → 𝑞 = 𝐴) | |
| 9 | 7, 8 | syl 17 | . . . . . . . 8 ⊢ ((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑞 = 𝐴) |
| 10 | eleq2 2828 | . . . . . . . . 9 ⊢ (𝑞 = 𝐴 → (𝑥 ∈ 𝑞 ↔ 𝑥 ∈ 𝐴)) | |
| 11 | 10 | biimpac 479 | . . . . . . . 8 ⊢ ((𝑥 ∈ 𝑞 ∧ 𝑞 = 𝐴) → 𝑥 ∈ 𝐴) |
| 12 | 5, 9, 11 | syl2anc 590 | . . . . . . 7 ⊢ ((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴) |
| 13 | 12 | ax-gen 1802 | . . . . . 6 ⊢ ∀𝑞((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴) |
| 14 | 19.23v 1949 | . . . . . . 7 ⊢ (∀𝑞((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴) ↔ (∃𝑞(𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴)) | |
| 15 | 14 | biimpi 217 | . . . . . 6 ⊢ (∀𝑞((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴) → (∃𝑞(𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴)) |
| 16 | 13, 15 | ax-mp 5 | . . . . 5 ⊢ (∃𝑞(𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴) |
| 17 | pm3.35 808 | . . . . 5 ⊢ ((∃𝑞(𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) ∧ (∃𝑞(𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴)) → 𝑥 ∈ 𝐴) | |
| 18 | 2, 16, 17 | sylancl 592 | . . . 4 ⊢ (𝑥 ∈ ∪ {𝐴} → 𝑥 ∈ 𝐴) |
| 19 | 18 | ax-gen 1802 | . . 3 ⊢ ∀𝑥(𝑥 ∈ ∪ {𝐴} → 𝑥 ∈ 𝐴) |
| 20 | df-ss 3900 | . . . 4 ⊢ (∪ {𝐴} ⊆ 𝐴 ↔ ∀𝑥(𝑥 ∈ ∪ {𝐴} → 𝑥 ∈ 𝐴)) | |
| 21 | 20 | biimpri 229 | . . 3 ⊢ (∀𝑥(𝑥 ∈ ∪ {𝐴} → 𝑥 ∈ 𝐴) → ∪ {𝐴} ⊆ 𝐴) |
| 22 | 19, 21 | ax-mp 5 | . 2 ⊢ ∪ {𝐴} ⊆ 𝐴 |
| 23 | id 22 | . . . . 5 ⊢ (𝑥 ∈ 𝐴 → 𝑥 ∈ 𝐴) | |
| 24 | unisnALT.1 | . . . . . 6 ⊢ 𝐴 ∈ V | |
| 25 | 24 | snid 4594 | . . . . 5 ⊢ 𝐴 ∈ {𝐴} |
| 26 | elunii 4843 | . . . . 5 ⊢ ((𝑥 ∈ 𝐴 ∧ 𝐴 ∈ {𝐴}) → 𝑥 ∈ ∪ {𝐴}) | |
| 27 | 23, 25, 26 | sylancl 592 | . . . 4 ⊢ (𝑥 ∈ 𝐴 → 𝑥 ∈ ∪ {𝐴}) |
| 28 | 27 | ax-gen 1802 | . . 3 ⊢ ∀𝑥(𝑥 ∈ 𝐴 → 𝑥 ∈ ∪ {𝐴}) |
| 29 | df-ss 3900 | . . . 4 ⊢ (𝐴 ⊆ ∪ {𝐴} ↔ ∀𝑥(𝑥 ∈ 𝐴 → 𝑥 ∈ ∪ {𝐴})) | |
| 30 | 29 | biimpri 229 | . . 3 ⊢ (∀𝑥(𝑥 ∈ 𝐴 → 𝑥 ∈ ∪ {𝐴}) → 𝐴 ⊆ ∪ {𝐴}) |
| 31 | 28, 30 | ax-mp 5 | . 2 ⊢ 𝐴 ⊆ ∪ {𝐴} |
| 32 | 22, 31 | eqssi 3931 | 1 ⊢ ∪ {𝐴} = 𝐴 |
| Colors of variables: wff setvar class |
| Syntax hints: → wi 4 ∧ wa 396 ∀wal 1545 = wceq 1547 ∃wex 1786 ∈ wcel 2119 Vcvv 3431 ⊆ wss 3883 {csn 4555 ∪ cuni 4838 |
| This theorem was proved from axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1802 ax-4 1816 ax-5 1917 ax-6 1974 ax-7 2015 ax-8 2121 ax-9 2129 ax-ext 2711 |
| This theorem depends on definitions: df-bi 208 df-an 397 df-tru 1550 df-ex 1787 df-sb 2074 df-clab 2718 df-cleq 2731 df-clel 2814 df-v 3433 df-ss 3900 df-sn 4556 df-uni 4839 |
| This theorem is referenced by: (None) |
| Copyright terms: Public domain | W3C validator |