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 42546 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 42546. 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 42546, 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 4842 | . . . . . 6 ⊢ (𝑥 ∈ ∪ {𝐴} ↔ ∃𝑞(𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴})) | |
2 | 1 | biimpi 215 | . . . . 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 4578 | . . . . . . . . 9 ⊢ (𝑞 ∈ {𝐴} → 𝑞 = 𝐴) | |
9 | 7, 8 | syl 17 | . . . . . . . 8 ⊢ ((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑞 = 𝐴) |
10 | eleq2 2827 | . . . . . . . . 9 ⊢ (𝑞 = 𝐴 → (𝑥 ∈ 𝑞 ↔ 𝑥 ∈ 𝐴)) | |
11 | 10 | biimpac 479 | . . . . . . . 8 ⊢ ((𝑥 ∈ 𝑞 ∧ 𝑞 = 𝐴) → 𝑥 ∈ 𝐴) |
12 | 5, 9, 11 | syl2anc 584 | . . . . . . 7 ⊢ ((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴) |
13 | 12 | ax-gen 1798 | . . . . . 6 ⊢ ∀𝑞((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴) |
14 | 19.23v 1945 | . . . . . . 7 ⊢ (∀𝑞((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴) ↔ (∃𝑞(𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴)) | |
15 | 14 | biimpi 215 | . . . . . 6 ⊢ (∀𝑞((𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴) → (∃𝑞(𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴)) |
16 | 13, 15 | ax-mp 5 | . . . . 5 ⊢ (∃𝑞(𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴) |
17 | pm3.35 800 | . . . . 5 ⊢ ((∃𝑞(𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) ∧ (∃𝑞(𝑥 ∈ 𝑞 ∧ 𝑞 ∈ {𝐴}) → 𝑥 ∈ 𝐴)) → 𝑥 ∈ 𝐴) | |
18 | 2, 16, 17 | sylancl 586 | . . . 4 ⊢ (𝑥 ∈ ∪ {𝐴} → 𝑥 ∈ 𝐴) |
19 | 18 | ax-gen 1798 | . . 3 ⊢ ∀𝑥(𝑥 ∈ ∪ {𝐴} → 𝑥 ∈ 𝐴) |
20 | dfss2 3907 | . . . 4 ⊢ (∪ {𝐴} ⊆ 𝐴 ↔ ∀𝑥(𝑥 ∈ ∪ {𝐴} → 𝑥 ∈ 𝐴)) | |
21 | 20 | biimpri 227 | . . 3 ⊢ (∀𝑥(𝑥 ∈ ∪ {𝐴} → 𝑥 ∈ 𝐴) → ∪ {𝐴} ⊆ 𝐴) |
22 | 19, 21 | ax-mp 5 | . 2 ⊢ ∪ {𝐴} ⊆ 𝐴 |
23 | id 22 | . . . . 5 ⊢ (𝑥 ∈ 𝐴 → 𝑥 ∈ 𝐴) | |
24 | unisnALT.1 | . . . . . 6 ⊢ 𝐴 ∈ V | |
25 | 24 | snid 4597 | . . . . 5 ⊢ 𝐴 ∈ {𝐴} |
26 | elunii 4844 | . . . . 5 ⊢ ((𝑥 ∈ 𝐴 ∧ 𝐴 ∈ {𝐴}) → 𝑥 ∈ ∪ {𝐴}) | |
27 | 23, 25, 26 | sylancl 586 | . . . 4 ⊢ (𝑥 ∈ 𝐴 → 𝑥 ∈ ∪ {𝐴}) |
28 | 27 | ax-gen 1798 | . . 3 ⊢ ∀𝑥(𝑥 ∈ 𝐴 → 𝑥 ∈ ∪ {𝐴}) |
29 | dfss2 3907 | . . . 4 ⊢ (𝐴 ⊆ ∪ {𝐴} ↔ ∀𝑥(𝑥 ∈ 𝐴 → 𝑥 ∈ ∪ {𝐴})) | |
30 | 29 | biimpri 227 | . . 3 ⊢ (∀𝑥(𝑥 ∈ 𝐴 → 𝑥 ∈ ∪ {𝐴}) → 𝐴 ⊆ ∪ {𝐴}) |
31 | 28, 30 | ax-mp 5 | . 2 ⊢ 𝐴 ⊆ ∪ {𝐴} |
32 | 22, 31 | eqssi 3937 | 1 ⊢ ∪ {𝐴} = 𝐴 |
Colors of variables: wff setvar class |
Syntax hints: → wi 4 ∧ wa 396 ∀wal 1537 = wceq 1539 ∃wex 1782 ∈ wcel 2106 Vcvv 3432 ⊆ wss 3887 {csn 4561 ∪ cuni 4839 |
This theorem was proved from axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1798 ax-4 1812 ax-5 1913 ax-6 1971 ax-7 2011 ax-8 2108 ax-9 2116 ax-ext 2709 |
This theorem depends on definitions: df-bi 206 df-an 397 df-tru 1542 df-ex 1783 df-sb 2068 df-clab 2716 df-cleq 2730 df-clel 2816 df-v 3434 df-in 3894 df-ss 3904 df-sn 4562 df-uni 4840 |
This theorem is referenced by: (None) |
Copyright terms: Public domain | W3C validator |