Users' Mathboxes Mathbox for Alan Sare < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  trsbcVD Structured version   Visualization version   GIF version

Theorem trsbcVD 39113
Description: Formula-building inference rule for class substitution, substituting a class variable for the setvar variable of the transitivity predicate. The following User's Proof is a Virtual Deduction proof completed automatically by the tools program completeusersproof.cmd, which invokes Mel L. O'Cat's mmj2 and Norm Megill's Metamath Proof Assistant. trsbc 38750 is trsbcVD 39113 without virtual deductions and was automatically derived from trsbcVD 39113.
1:: (   𝐴𝐵   ▶   𝐴𝐵   )
2:1: (   𝐴𝐵   ▶   ([𝐴 / 𝑥]𝑧𝑦 𝑧𝑦)   )
3:1: (   𝐴𝐵   ▶   ([𝐴 / 𝑥]𝑦𝑥 𝑦𝐴)   )
4:1: (   𝐴𝐵   ▶   ([𝐴 / 𝑥]𝑧𝑥 𝑧𝐴)   )
5:1,2,3,4: (   𝐴𝐵   ▶   (([𝐴 / 𝑥]𝑧𝑦 → ([𝐴 / 𝑥]𝑦𝑥[𝐴 / 𝑥]𝑧𝑥)) ↔ (𝑧𝑦 → (𝑦𝐴𝑧𝐴)))   )
6:1: (   𝐴𝐵   ▶   ([𝐴 / 𝑥](𝑧𝑦 → (𝑦𝑥𝑧𝑥)) ↔ ([𝐴 / 𝑥]𝑧𝑦 ([𝐴 / 𝑥]𝑦𝑥[𝐴 / 𝑥]𝑧𝑥)))   )
7:5,6: (   𝐴𝐵   ▶   ([𝐴 / 𝑥](𝑧𝑦 → (𝑦𝑥𝑧𝑥)) ↔ (𝑧𝑦 → (𝑦𝐴 𝑧𝐴)))   )
8:: ((𝑧𝑦 → (𝑦𝐴 𝑧𝐴)) ↔ ((𝑧𝑦𝑦𝐴) → 𝑧𝐴))
9:7,8: (   𝐴𝐵   ▶   ([𝐴 / 𝑥](𝑧𝑦 → (𝑦𝑥𝑧𝑥)) ↔ ((𝑧𝑦𝑦𝐴) 𝑧𝐴))   )
10:: ((𝑧𝑦 → (𝑦𝑥 𝑧𝑥)) ↔ ((𝑧𝑦𝑦𝑥) → 𝑧𝑥))
11:10: 𝑥((𝑧𝑦 → (𝑦𝑥 𝑧𝑥)) ↔ ((𝑧𝑦𝑦𝑥) → 𝑧𝑥))
12:1,11: (   𝐴𝐵   ▶   ([𝐴 / 𝑥](𝑧𝑦 → (𝑦𝑥𝑧𝑥)) ↔ [𝐴 / 𝑥]((𝑧𝑦𝑦𝑥) 𝑧𝑥))   )
13:9,12: (   𝐴𝐵   ▶   ([𝐴 / 𝑥]((𝑧𝑦 𝑦𝑥) → 𝑧𝑥) ↔ ((𝑧𝑦𝑦𝐴) 𝑧𝐴))   )
14:13: (   𝐴𝐵   ▶   𝑦([𝐴 / 𝑥]((𝑧 𝑦𝑦𝑥) → 𝑧𝑥) ↔ ((𝑧𝑦𝑦𝐴) 𝑧𝐴))   )
15:14: (   𝐴𝐵   ▶   (∀𝑦[𝐴 / 𝑥]((𝑧 𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑦((𝑧𝑦𝑦𝐴) 𝑧𝐴))   )
16:1: (   𝐴𝐵   ▶   ([𝐴 / 𝑥]𝑦((𝑧 𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑦[𝐴 / 𝑥]((𝑧𝑦 𝑦𝑥) → 𝑧𝑥))   )
17:15,16: (   𝐴𝐵   ▶   ([𝐴 / 𝑥]𝑦((𝑧 𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑦((𝑧𝑦𝑦𝐴) 𝑧𝐴))   )
18:17: (   𝐴𝐵   ▶   𝑧([𝐴 / 𝑥]𝑦(( 𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑦((𝑧𝑦𝑦𝐴) 𝑧𝐴))   )
19:18: (   𝐴𝐵   ▶   (∀𝑧[𝐴 / 𝑥]𝑦(( 𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑧𝑦((𝑧𝑦 𝑦𝐴) → 𝑧𝐴))   )
20:1: (   𝐴𝐵   ▶   ([𝐴 / 𝑥]𝑧𝑦(( 𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑧[𝐴 / 𝑥]𝑦((𝑧 𝑦𝑦𝑥) → 𝑧𝑥))   )
21:19,20: (   𝐴𝐵   ▶   ([𝐴 / 𝑥]𝑧𝑦(( 𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑧𝑦((𝑧𝑦 𝑦𝐴) → 𝑧𝐴))   )
22:: (Tr 𝐴 ↔ ∀𝑧𝑦((𝑧𝑦 𝑦𝐴) → 𝑧𝐴))
23:21,22: (   𝐴𝐵   ▶   ([𝐴 / 𝑥]𝑧𝑦(( 𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ Tr 𝐴)   )
24:: (Tr 𝑥 ↔ ∀𝑧𝑦((𝑧𝑦𝑦 𝑥) → 𝑧𝑥))
25:24: 𝑥(Tr 𝑥 ↔ ∀𝑧𝑦((𝑧𝑦 𝑦𝑥) → 𝑧𝑥))
26:1,25: (   𝐴𝐵   ▶   ([𝐴 / 𝑥]Tr 𝑥 [𝐴 / 𝑥]𝑧𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥))   )
27:23,26: (   𝐴𝐵   ▶   ([𝐴 / 𝑥]Tr 𝑥 ↔ Tr 𝐴)   )
qed:27: (𝐴𝐵 → ([𝐴 / 𝑥]Tr 𝑥 ↔ Tr 𝐴))
(Contributed by Alan Sare, 18-Mar-2012.) (Proof modification is discouraged.) (New usage is discouraged.)
Assertion
Ref Expression
trsbcVD (𝐴𝐵 → ([𝐴 / 𝑥]Tr 𝑥 ↔ Tr 𝐴))
Distinct variable group:   𝑥,𝐴
Allowed substitution hint:   𝐵(𝑥)

Proof of Theorem trsbcVD
Dummy variables 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 idn1 38790 . . . . . . . . . . . . . 14 (   𝐴𝐵   ▶   𝐴𝐵   )
2 biidd 252 . . . . . . . . . . . . . . . 16 (𝑥 = 𝐴 → (𝑧𝑦𝑧𝑦))
32sbcieg 3468 . . . . . . . . . . . . . . 15 (𝐴𝐵 → ([𝐴 / 𝑥]𝑧𝑦𝑧𝑦))
41, 3e1a 38852 . . . . . . . . . . . . . 14 (   𝐴𝐵   ▶   ([𝐴 / 𝑥]𝑧𝑦𝑧𝑦)   )
5 sbcel2gv 3496 . . . . . . . . . . . . . . 15 (𝐴𝐵 → ([𝐴 / 𝑥]𝑦𝑥𝑦𝐴))
61, 5e1a 38852 . . . . . . . . . . . . . 14 (   𝐴𝐵   ▶   ([𝐴 / 𝑥]𝑦𝑥𝑦𝐴)   )
7 sbcel2gv 3496 . . . . . . . . . . . . . . 15 (𝐴𝐵 → ([𝐴 / 𝑥]𝑧𝑥𝑧𝐴))
81, 7e1a 38852 . . . . . . . . . . . . . 14 (   𝐴𝐵   ▶   ([𝐴 / 𝑥]𝑧𝑥𝑧𝐴)   )
9 imbi13 38726 . . . . . . . . . . . . . . 15 (([𝐴 / 𝑥]𝑧𝑦𝑧𝑦) → (([𝐴 / 𝑥]𝑦𝑥𝑦𝐴) → (([𝐴 / 𝑥]𝑧𝑥𝑧𝐴) → (([𝐴 / 𝑥]𝑧𝑦 → ([𝐴 / 𝑥]𝑦𝑥[𝐴 / 𝑥]𝑧𝑥)) ↔ (𝑧𝑦 → (𝑦𝐴𝑧𝐴))))))
109a1i 11 . . . . . . . . . . . . . 14 (𝐴𝐵 → (([𝐴 / 𝑥]𝑧𝑦𝑧𝑦) → (([𝐴 / 𝑥]𝑦𝑥𝑦𝐴) → (([𝐴 / 𝑥]𝑧𝑥𝑧𝐴) → (([𝐴 / 𝑥]𝑧𝑦 → ([𝐴 / 𝑥]𝑦𝑥[𝐴 / 𝑥]𝑧𝑥)) ↔ (𝑧𝑦 → (𝑦𝐴𝑧𝐴)))))))
111, 4, 6, 8, 10e1111 38900 . . . . . . . . . . . . 13 (   𝐴𝐵   ▶   (([𝐴 / 𝑥]𝑧𝑦 → ([𝐴 / 𝑥]𝑦𝑥[𝐴 / 𝑥]𝑧𝑥)) ↔ (𝑧𝑦 → (𝑦𝐴𝑧𝐴)))   )
12 sbcim2g 38748 . . . . . . . . . . . . . 14 (𝐴𝐵 → ([𝐴 / 𝑥](𝑧𝑦 → (𝑦𝑥𝑧𝑥)) ↔ ([𝐴 / 𝑥]𝑧𝑦 → ([𝐴 / 𝑥]𝑦𝑥[𝐴 / 𝑥]𝑧𝑥))))
131, 12e1a 38852 . . . . . . . . . . . . 13 (   𝐴𝐵   ▶   ([𝐴 / 𝑥](𝑧𝑦 → (𝑦𝑥𝑧𝑥)) ↔ ([𝐴 / 𝑥]𝑧𝑦 → ([𝐴 / 𝑥]𝑦𝑥[𝐴 / 𝑥]𝑧𝑥)))   )
14 bibi1 341 . . . . . . . . . . . . . 14 (([𝐴 / 𝑥](𝑧𝑦 → (𝑦𝑥𝑧𝑥)) ↔ ([𝐴 / 𝑥]𝑧𝑦 → ([𝐴 / 𝑥]𝑦𝑥[𝐴 / 𝑥]𝑧𝑥))) → (([𝐴 / 𝑥](𝑧𝑦 → (𝑦𝑥𝑧𝑥)) ↔ (𝑧𝑦 → (𝑦𝐴𝑧𝐴))) ↔ (([𝐴 / 𝑥]𝑧𝑦 → ([𝐴 / 𝑥]𝑦𝑥[𝐴 / 𝑥]𝑧𝑥)) ↔ (𝑧𝑦 → (𝑦𝐴𝑧𝐴)))))
1514biimprcd 240 . . . . . . . . . . . . 13 ((([𝐴 / 𝑥]𝑧𝑦 → ([𝐴 / 𝑥]𝑦𝑥[𝐴 / 𝑥]𝑧𝑥)) ↔ (𝑧𝑦 → (𝑦𝐴𝑧𝐴))) → (([𝐴 / 𝑥](𝑧𝑦 → (𝑦𝑥𝑧𝑥)) ↔ ([𝐴 / 𝑥]𝑧𝑦 → ([𝐴 / 𝑥]𝑦𝑥[𝐴 / 𝑥]𝑧𝑥))) → ([𝐴 / 𝑥](𝑧𝑦 → (𝑦𝑥𝑧𝑥)) ↔ (𝑧𝑦 → (𝑦𝐴𝑧𝐴)))))
1611, 13, 15e11 38913 . . . . . . . . . . . 12 (   𝐴𝐵   ▶   ([𝐴 / 𝑥](𝑧𝑦 → (𝑦𝑥𝑧𝑥)) ↔ (𝑧𝑦 → (𝑦𝐴𝑧𝐴)))   )
17 pm3.31 461 . . . . . . . . . . . . 13 ((𝑧𝑦 → (𝑦𝐴𝑧𝐴)) → ((𝑧𝑦𝑦𝐴) → 𝑧𝐴))
18 pm3.3 460 . . . . . . . . . . . . 13 (((𝑧𝑦𝑦𝐴) → 𝑧𝐴) → (𝑧𝑦 → (𝑦𝐴𝑧𝐴)))
1917, 18impbii 199 . . . . . . . . . . . 12 ((𝑧𝑦 → (𝑦𝐴𝑧𝐴)) ↔ ((𝑧𝑦𝑦𝐴) → 𝑧𝐴))
20 bibi1 341 . . . . . . . . . . . . 13 (([𝐴 / 𝑥](𝑧𝑦 → (𝑦𝑥𝑧𝑥)) ↔ (𝑧𝑦 → (𝑦𝐴𝑧𝐴))) → (([𝐴 / 𝑥](𝑧𝑦 → (𝑦𝑥𝑧𝑥)) ↔ ((𝑧𝑦𝑦𝐴) → 𝑧𝐴)) ↔ ((𝑧𝑦 → (𝑦𝐴𝑧𝐴)) ↔ ((𝑧𝑦𝑦𝐴) → 𝑧𝐴))))
2120biimprd 238 . . . . . . . . . . . 12 (([𝐴 / 𝑥](𝑧𝑦 → (𝑦𝑥𝑧𝑥)) ↔ (𝑧𝑦 → (𝑦𝐴𝑧𝐴))) → (((𝑧𝑦 → (𝑦𝐴𝑧𝐴)) ↔ ((𝑧𝑦𝑦𝐴) → 𝑧𝐴)) → ([𝐴 / 𝑥](𝑧𝑦 → (𝑦𝑥𝑧𝑥)) ↔ ((𝑧𝑦𝑦𝐴) → 𝑧𝐴))))
2216, 19, 21e10 38919 . . . . . . . . . . 11 (   𝐴𝐵   ▶   ([𝐴 / 𝑥](𝑧𝑦 → (𝑦𝑥𝑧𝑥)) ↔ ((𝑧𝑦𝑦𝐴) → 𝑧𝐴))   )
23 pm3.31 461 . . . . . . . . . . . . . 14 ((𝑧𝑦 → (𝑦𝑥𝑧𝑥)) → ((𝑧𝑦𝑦𝑥) → 𝑧𝑥))
24 pm3.3 460 . . . . . . . . . . . . . 14 (((𝑧𝑦𝑦𝑥) → 𝑧𝑥) → (𝑧𝑦 → (𝑦𝑥𝑧𝑥)))
2523, 24impbii 199 . . . . . . . . . . . . 13 ((𝑧𝑦 → (𝑦𝑥𝑧𝑥)) ↔ ((𝑧𝑦𝑦𝑥) → 𝑧𝑥))
2625ax-gen 1722 . . . . . . . . . . . 12 𝑥((𝑧𝑦 → (𝑦𝑥𝑧𝑥)) ↔ ((𝑧𝑦𝑦𝑥) → 𝑧𝑥))
27 sbcbi 38749 . . . . . . . . . . . 12 (𝐴𝐵 → (∀𝑥((𝑧𝑦 → (𝑦𝑥𝑧𝑥)) ↔ ((𝑧𝑦𝑦𝑥) → 𝑧𝑥)) → ([𝐴 / 𝑥](𝑧𝑦 → (𝑦𝑥𝑧𝑥)) ↔ [𝐴 / 𝑥]((𝑧𝑦𝑦𝑥) → 𝑧𝑥))))
281, 26, 27e10 38919 . . . . . . . . . . 11 (   𝐴𝐵   ▶   ([𝐴 / 𝑥](𝑧𝑦 → (𝑦𝑥𝑧𝑥)) ↔ [𝐴 / 𝑥]((𝑧𝑦𝑦𝑥) → 𝑧𝑥))   )
29 bitr3 342 . . . . . . . . . . . 12 (([𝐴 / 𝑥](𝑧𝑦 → (𝑦𝑥𝑧𝑥)) ↔ [𝐴 / 𝑥]((𝑧𝑦𝑦𝑥) → 𝑧𝑥)) → (([𝐴 / 𝑥](𝑧𝑦 → (𝑦𝑥𝑧𝑥)) ↔ ((𝑧𝑦𝑦𝐴) → 𝑧𝐴)) → ([𝐴 / 𝑥]((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ((𝑧𝑦𝑦𝐴) → 𝑧𝐴))))
3029com12 32 . . . . . . . . . . 11 (([𝐴 / 𝑥](𝑧𝑦 → (𝑦𝑥𝑧𝑥)) ↔ ((𝑧𝑦𝑦𝐴) → 𝑧𝐴)) → (([𝐴 / 𝑥](𝑧𝑦 → (𝑦𝑥𝑧𝑥)) ↔ [𝐴 / 𝑥]((𝑧𝑦𝑦𝑥) → 𝑧𝑥)) → ([𝐴 / 𝑥]((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ((𝑧𝑦𝑦𝐴) → 𝑧𝐴))))
3122, 28, 30e11 38913 . . . . . . . . . 10 (   𝐴𝐵   ▶   ([𝐴 / 𝑥]((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ((𝑧𝑦𝑦𝐴) → 𝑧𝐴))   )
3231gen11 38841 . . . . . . . . 9 (   𝐴𝐵   ▶   𝑦([𝐴 / 𝑥]((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ((𝑧𝑦𝑦𝐴) → 𝑧𝐴))   )
33 albi 1746 . . . . . . . . 9 (∀𝑦([𝐴 / 𝑥]((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ((𝑧𝑦𝑦𝐴) → 𝑧𝐴)) → (∀𝑦[𝐴 / 𝑥]((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑦((𝑧𝑦𝑦𝐴) → 𝑧𝐴)))
3432, 33e1a 38852 . . . . . . . 8 (   𝐴𝐵   ▶   (∀𝑦[𝐴 / 𝑥]((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑦((𝑧𝑦𝑦𝐴) → 𝑧𝐴))   )
35 sbcalgOLD 38752 . . . . . . . . 9 (𝐴𝐵 → ([𝐴 / 𝑥]𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑦[𝐴 / 𝑥]((𝑧𝑦𝑦𝑥) → 𝑧𝑥)))
361, 35e1a 38852 . . . . . . . 8 (   𝐴𝐵   ▶   ([𝐴 / 𝑥]𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑦[𝐴 / 𝑥]((𝑧𝑦𝑦𝑥) → 𝑧𝑥))   )
37 bibi1 341 . . . . . . . . 9 (([𝐴 / 𝑥]𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑦[𝐴 / 𝑥]((𝑧𝑦𝑦𝑥) → 𝑧𝑥)) → (([𝐴 / 𝑥]𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑦((𝑧𝑦𝑦𝐴) → 𝑧𝐴)) ↔ (∀𝑦[𝐴 / 𝑥]((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑦((𝑧𝑦𝑦𝐴) → 𝑧𝐴))))
3837biimprcd 240 . . . . . . . 8 ((∀𝑦[𝐴 / 𝑥]((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑦((𝑧𝑦𝑦𝐴) → 𝑧𝐴)) → (([𝐴 / 𝑥]𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑦[𝐴 / 𝑥]((𝑧𝑦𝑦𝑥) → 𝑧𝑥)) → ([𝐴 / 𝑥]𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑦((𝑧𝑦𝑦𝐴) → 𝑧𝐴))))
3934, 36, 38e11 38913 . . . . . . 7 (   𝐴𝐵   ▶   ([𝐴 / 𝑥]𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑦((𝑧𝑦𝑦𝐴) → 𝑧𝐴))   )
4039gen11 38841 . . . . . 6 (   𝐴𝐵   ▶   𝑧([𝐴 / 𝑥]𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑦((𝑧𝑦𝑦𝐴) → 𝑧𝐴))   )
41 albi 1746 . . . . . 6 (∀𝑧([𝐴 / 𝑥]𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑦((𝑧𝑦𝑦𝐴) → 𝑧𝐴)) → (∀𝑧[𝐴 / 𝑥]𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑧𝑦((𝑧𝑦𝑦𝐴) → 𝑧𝐴)))
4240, 41e1a 38852 . . . . 5 (   𝐴𝐵   ▶   (∀𝑧[𝐴 / 𝑥]𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑧𝑦((𝑧𝑦𝑦𝐴) → 𝑧𝐴))   )
43 sbcalgOLD 38752 . . . . . 6 (𝐴𝐵 → ([𝐴 / 𝑥]𝑧𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑧[𝐴 / 𝑥]𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥)))
441, 43e1a 38852 . . . . 5 (   𝐴𝐵   ▶   ([𝐴 / 𝑥]𝑧𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑧[𝐴 / 𝑥]𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥))   )
45 bibi1 341 . . . . . 6 (([𝐴 / 𝑥]𝑧𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑧[𝐴 / 𝑥]𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥)) → (([𝐴 / 𝑥]𝑧𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑧𝑦((𝑧𝑦𝑦𝐴) → 𝑧𝐴)) ↔ (∀𝑧[𝐴 / 𝑥]𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑧𝑦((𝑧𝑦𝑦𝐴) → 𝑧𝐴))))
4645biimprcd 240 . . . . 5 ((∀𝑧[𝐴 / 𝑥]𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑧𝑦((𝑧𝑦𝑦𝐴) → 𝑧𝐴)) → (([𝐴 / 𝑥]𝑧𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑧[𝐴 / 𝑥]𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥)) → ([𝐴 / 𝑥]𝑧𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑧𝑦((𝑧𝑦𝑦𝐴) → 𝑧𝐴))))
4742, 44, 46e11 38913 . . . 4 (   𝐴𝐵   ▶   ([𝐴 / 𝑥]𝑧𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑧𝑦((𝑧𝑦𝑦𝐴) → 𝑧𝐴))   )
48 dftr2 4754 . . . 4 (Tr 𝐴 ↔ ∀𝑧𝑦((𝑧𝑦𝑦𝐴) → 𝑧𝐴))
49 biantr 972 . . . . 5 ((([𝐴 / 𝑥]𝑧𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑧𝑦((𝑧𝑦𝑦𝐴) → 𝑧𝐴)) ∧ (Tr 𝐴 ↔ ∀𝑧𝑦((𝑧𝑦𝑦𝐴) → 𝑧𝐴))) → ([𝐴 / 𝑥]𝑧𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ Tr 𝐴))
5049ex 450 . . . 4 (([𝐴 / 𝑥]𝑧𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ ∀𝑧𝑦((𝑧𝑦𝑦𝐴) → 𝑧𝐴)) → ((Tr 𝐴 ↔ ∀𝑧𝑦((𝑧𝑦𝑦𝐴) → 𝑧𝐴)) → ([𝐴 / 𝑥]𝑧𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ Tr 𝐴)))
5147, 48, 50e10 38919 . . 3 (   𝐴𝐵   ▶   ([𝐴 / 𝑥]𝑧𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ Tr 𝐴)   )
52 dftr2 4754 . . . . 5 (Tr 𝑥 ↔ ∀𝑧𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥))
5352ax-gen 1722 . . . 4 𝑥(Tr 𝑥 ↔ ∀𝑧𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥))
54 sbcbi 38749 . . . 4 (𝐴𝐵 → (∀𝑥(Tr 𝑥 ↔ ∀𝑧𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥)) → ([𝐴 / 𝑥]Tr 𝑥[𝐴 / 𝑥]𝑧𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥))))
551, 53, 54e10 38919 . . 3 (   𝐴𝐵   ▶   ([𝐴 / 𝑥]Tr 𝑥[𝐴 / 𝑥]𝑧𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥))   )
56 bibi1 341 . . . 4 (([𝐴 / 𝑥]Tr 𝑥[𝐴 / 𝑥]𝑧𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥)) → (([𝐴 / 𝑥]Tr 𝑥 ↔ Tr 𝐴) ↔ ([𝐴 / 𝑥]𝑧𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ Tr 𝐴)))
5756biimprcd 240 . . 3 (([𝐴 / 𝑥]𝑧𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥) ↔ Tr 𝐴) → (([𝐴 / 𝑥]Tr 𝑥[𝐴 / 𝑥]𝑧𝑦((𝑧𝑦𝑦𝑥) → 𝑧𝑥)) → ([𝐴 / 𝑥]Tr 𝑥 ↔ Tr 𝐴)))
5851, 55, 57e11 38913 . 2 (   𝐴𝐵   ▶   ([𝐴 / 𝑥]Tr 𝑥 ↔ Tr 𝐴)   )
5958in1 38787 1 (𝐴𝐵 → ([𝐴 / 𝑥]Tr 𝑥 ↔ Tr 𝐴))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 196  wa 384  wal 1481   = wceq 1483  wcel 1990  [wsbc 3435  Tr wtr 4752
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1722  ax-4 1737  ax-5 1839  ax-6 1888  ax-7 1935  ax-9 1999  ax-10 2019  ax-11 2034  ax-12 2047  ax-13 2246  ax-ext 2602
This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-3an 1039  df-tru 1486  df-ex 1705  df-nf 1710  df-sb 1881  df-clab 2609  df-cleq 2615  df-clel 2618  df-nfc 2753  df-v 3202  df-sbc 3436  df-in 3581  df-ss 3588  df-uni 4437  df-tr 4753  df-vd1 38786
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator