Metamath Proof Explorer


Theorem csbrngVD

Description: Virtual deduction proof of csbrn . 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. csbrn is csbrngVD without virtual deductions and was automatically derived from csbrngVD .

1:: |- (. A e. V ->. A e. V ).
2:1: |- (. A e. V ->. ( [. A / x ]. <. w ,. y >. e. B <-> [_ A / x ]_ <. w , y >. e. [_ A / x ]_ B ) ).
3:1: |- (. A e. V ->. [_ A / x ]_ <. w ,. y >. = <. w , y >. ).
4:3: |- (. A e. V ->. ( [_ A / x ]_ <. w ,. y >. e. [_ A / x ]_ B <-> <. w , y >. e. [_ A / x ]_ B ) ).
5:2,4: |- (. A e. V ->. ( [. A / x ]. <. w ,. y >. e. B <-> <. w , y >. e. [_ A / x ]_ B ) ).
6:5: |- (. A e. V ->. A. w ( [. A / x ]. <. w ,. y >. e. B <-> <. w , y >. e. [_ A / x ]_ B ) ).
7:6: |- (. A e. V ->. ( E. w [. A / x ]. <. w ,. y >. e. B <-> E. w <. w , y >. e. [_ A / x ]_ B ) ).
8:1: |- (. A e. V ->. ( E. w [. A / x ]. <. w ,. y >. e. B <-> [. A / x ]. E. w <. w , y >. e. B ) ).
9:7,8: |- (. A e. V ->. ( [. A / x ]. E. w <. w ,. y >. e. B <-> E. w <. w , y >. e. [_ A / x ]_ B ) ).
10:9: |- (. A e. V ->. A. y ( [. A / x ]. E. w <. w , y >. e. B <-> E. w <. w , y >. e. [_ A / x ]_ B ) ).
11:10: |- (. A e. V ->. { y | [. A / x ]. E. w <. w , y >. e. B } = { y | E. w <. w , y >. e. [_ A / x ]_ B } ).
12:1: |- (. A e. V ->. [_ A / x ]_ { y | E. w <. w , y >. e. B } = { y | [. A / x ]. E. w <. w , y >. e. B } ).
13:11,12: |- (. A e. V ->. [_ A / x ]_ { y | E. w <. w , y >. e. B } = { y | E. w <. w , y >. e. [_ A / x ]_ B } ).
14:: |- ran B = { y | E. w <. w ,. y >. e. B }
15:14: |- A. x ran B = { y | E. w <. w ,. y >. e. B }
16:1,15: |- (. A e. V ->. [_ A / x ]_ ran B = [_ A / x ]_ { y | E. w <. w , y >. e. B } ).
17:13,16: |- (. A e. V ->. [_ A / x ]_ ran B = { y | E. w <. w , y >. e. [_ A / x ]_ B } ).
18:: |- ran [_ A / x ]_ B = { y | E. w <. w ,. y >. e. [_ A / x ]_ B }
19:17,18: |- (. A e. V ->. [_ A / x ]_ ran B = ran [_ A / x ]_ B ).
qed:19: |- ( A e. V -> [_ A / x ]_ ran B = ran [_ A / x ]_ B )
(Contributed by Alan Sare, 10-Nov-2012) (Proof modification is discouraged.) (New usage is discouraged.)

Ref Expression
Assertion csbrngVD ⊢ A ∈ V → ⦋ A / x⦌ ran ⁡ B = ran ⁡ ⦋ A / x⦌ B

Proof

Step Hyp Ref Expression
1 idn1 ⊢ A ∈ V → A ∈ V
2 sbcel12 ⊢ [˙A / x]˙ w y ∈ B ↔ ⦋ A / x⦌ w y ∈ ⦋ A / x⦌ B
3 2 a1i ⊢ A ∈ V → [˙A / x]˙ w y ∈ B ↔ ⦋ A / x⦌ w y ∈ ⦋ A / x⦌ B
4 1 3 e1a ⊢ A ∈ V → [˙A / x]˙ w y ∈ B ↔ ⦋ A / x⦌ w y ∈ ⦋ A / x⦌ B
5 csbconstg ⊢ A ∈ V → ⦋ A / x⦌ w y = w y
6 1 5 e1a ⊢ A ∈ V → ⦋ A / x⦌ w y = w y
7 eleq1 ⊢ ⦋ A / x⦌ w y = w y → ⦋ A / x⦌ w y ∈ ⦋ A / x⦌ B ↔ w y ∈ ⦋ A / x⦌ B
8 6 7 e1a ⊢ A ∈ V → ⦋ A / x⦌ w y ∈ ⦋ A / x⦌ B ↔ w y ∈ ⦋ A / x⦌ B
9 bibi1 ⊢ [˙A / x]˙ w y ∈ B ↔ ⦋ A / x⦌ w y ∈ ⦋ A / x⦌ B → [˙A / x]˙ w y ∈ B ↔ w y ∈ ⦋ A / x⦌ B ↔ ⦋ A / x⦌ w y ∈ ⦋ A / x⦌ B ↔ w y ∈ ⦋ A / x⦌ B
10 9 biimprd ⊢ [˙A / x]˙ w y ∈ B ↔ ⦋ A / x⦌ w y ∈ ⦋ A / x⦌ B → ⦋ A / x⦌ w y ∈ ⦋ A / x⦌ B ↔ w y ∈ ⦋ A / x⦌ B → [˙A / x]˙ w y ∈ B ↔ w y ∈ ⦋ A / x⦌ B
11 4 8 10 e11 ⊢ A ∈ V → [˙A / x]˙ w y ∈ B ↔ w y ∈ ⦋ A / x⦌ B
12 11 gen11 ⊢ A ∈ V → ∀ w [˙A / x]˙ w y ∈ B ↔ w y ∈ ⦋ A / x⦌ B
13 exbi ⊢ ∀ w [˙A / x]˙ w y ∈ B ↔ w y ∈ ⦋ A / x⦌ B → ∃ w [˙A / x]˙ w y ∈ B ↔ ∃ w w y ∈ ⦋ A / x⦌ B
14 12 13 e1a ⊢ A ∈ V → ∃ w [˙A / x]˙ w y ∈ B ↔ ∃ w w y ∈ ⦋ A / x⦌ B
15 sbcex2 ⊢ [˙A / x]˙ ∃ w w y ∈ B ↔ ∃ w [˙A / x]˙ w y ∈ B
16 15 a1i ⊢ A ∈ V → [˙A / x]˙ ∃ w w y ∈ B ↔ ∃ w [˙A / x]˙ w y ∈ B
17 16 bicomd ⊢ A ∈ V → ∃ w [˙A / x]˙ w y ∈ B ↔ [˙A / x]˙ ∃ w w y ∈ B
18 1 17 e1a ⊢ A ∈ V → ∃ w [˙A / x]˙ w y ∈ B ↔ [˙A / x]˙ ∃ w w y ∈ B
19 bitr3 ⊢ ∃ w [˙A / x]˙ w y ∈ B ↔ [˙A / x]˙ ∃ w w y ∈ B → ∃ w [˙A / x]˙ w y ∈ B ↔ ∃ w w y ∈ ⦋ A / x⦌ B → [˙A / x]˙ ∃ w w y ∈ B ↔ ∃ w w y ∈ ⦋ A / x⦌ B
20 19 com12 ⊢ ∃ w [˙A / x]˙ w y ∈ B ↔ ∃ w w y ∈ ⦋ A / x⦌ B → ∃ w [˙A / x]˙ w y ∈ B ↔ [˙A / x]˙ ∃ w w y ∈ B → [˙A / x]˙ ∃ w w y ∈ B ↔ ∃ w w y ∈ ⦋ A / x⦌ B
21 14 18 20 e11 ⊢ A ∈ V → [˙A / x]˙ ∃ w w y ∈ B ↔ ∃ w w y ∈ ⦋ A / x⦌ B
22 21 gen11 ⊢ A ∈ V → ∀ y [˙A / x]˙ ∃ w w y ∈ B ↔ ∃ w w y ∈ ⦋ A / x⦌ B
23 abbib ⊢ y | [˙A / x]˙ ∃ w w y ∈ B = y | ∃ w w y ∈ ⦋ A / x⦌ B ↔ ∀ y [˙A / x]˙ ∃ w w y ∈ B ↔ ∃ w w y ∈ ⦋ A / x⦌ B
24 23 biimpri ⊢ ∀ y [˙A / x]˙ ∃ w w y ∈ B ↔ ∃ w w y ∈ ⦋ A / x⦌ B → y | [˙A / x]˙ ∃ w w y ∈ B = y | ∃ w w y ∈ ⦋ A / x⦌ B
25 22 24 e1a ⊢ A ∈ V → y | [˙A / x]˙ ∃ w w y ∈ B = y | ∃ w w y ∈ ⦋ A / x⦌ B
26 csbab ⊢ ⦋ A / x⦌ y | ∃ w w y ∈ B = y | [˙A / x]˙ ∃ w w y ∈ B
27 26 a1i ⊢ A ∈ V → ⦋ A / x⦌ y | ∃ w w y ∈ B = y | [˙A / x]˙ ∃ w w y ∈ B
28 1 27 e1a ⊢ A ∈ V → ⦋ A / x⦌ y | ∃ w w y ∈ B = y | [˙A / x]˙ ∃ w w y ∈ B
29 eqeq2 ⊢ y | [˙A / x]˙ ∃ w w y ∈ B = y | ∃ w w y ∈ ⦋ A / x⦌ B → ⦋ A / x⦌ y | ∃ w w y ∈ B = y | [˙A / x]˙ ∃ w w y ∈ B ↔ ⦋ A / x⦌ y | ∃ w w y ∈ B = y | ∃ w w y ∈ ⦋ A / x⦌ B
30 29 biimpd ⊢ y | [˙A / x]˙ ∃ w w y ∈ B = y | ∃ w w y ∈ ⦋ A / x⦌ B → ⦋ A / x⦌ y | ∃ w w y ∈ B = y | [˙A / x]˙ ∃ w w y ∈ B → ⦋ A / x⦌ y | ∃ w w y ∈ B = y | ∃ w w y ∈ ⦋ A / x⦌ B
31 25 28 30 e11 ⊢ A ∈ V → ⦋ A / x⦌ y | ∃ w w y ∈ B = y | ∃ w w y ∈ ⦋ A / x⦌ B
32 dfrn3 ⊢ ran ⁡ B = y | ∃ w w y ∈ B
33 32 ax-gen ⊢ ∀ x ran ⁡ B = y | ∃ w w y ∈ B
34 csbeq2 ⊢ ∀ x ran ⁡ B = y | ∃ w w y ∈ B → ⦋ A / x⦌ ran ⁡ B = ⦋ A / x⦌ y | ∃ w w y ∈ B
35 34 a1i ⊢ A ∈ V → ∀ x ran ⁡ B = y | ∃ w w y ∈ B → ⦋ A / x⦌ ran ⁡ B = ⦋ A / x⦌ y | ∃ w w y ∈ B
36 1 33 35 e10 ⊢ A ∈ V → ⦋ A / x⦌ ran ⁡ B = ⦋ A / x⦌ y | ∃ w w y ∈ B
37 eqeq2 ⊢ ⦋ A / x⦌ y | ∃ w w y ∈ B = y | ∃ w w y ∈ ⦋ A / x⦌ B → ⦋ A / x⦌ ran ⁡ B = ⦋ A / x⦌ y | ∃ w w y ∈ B ↔ ⦋ A / x⦌ ran ⁡ B = y | ∃ w w y ∈ ⦋ A / x⦌ B
38 37 biimpd ⊢ ⦋ A / x⦌ y | ∃ w w y ∈ B = y | ∃ w w y ∈ ⦋ A / x⦌ B → ⦋ A / x⦌ ran ⁡ B = ⦋ A / x⦌ y | ∃ w w y ∈ B → ⦋ A / x⦌ ran ⁡ B = y | ∃ w w y ∈ ⦋ A / x⦌ B
39 31 36 38 e11 ⊢ A ∈ V → ⦋ A / x⦌ ran ⁡ B = y | ∃ w w y ∈ ⦋ A / x⦌ B
40 dfrn3 ⊢ ran ⁡ ⦋ A / x⦌ B = y | ∃ w w y ∈ ⦋ A / x⦌ B
41 eqeq2 ⊢ ran ⁡ ⦋ A / x⦌ B = y | ∃ w w y ∈ ⦋ A / x⦌ B → ⦋ A / x⦌ ran ⁡ B = ran ⁡ ⦋ A / x⦌ B ↔ ⦋ A / x⦌ ran ⁡ B = y | ∃ w w y ∈ ⦋ A / x⦌ B
42 41 biimprcd ⊢ ⦋ A / x⦌ ran ⁡ B = y | ∃ w w y ∈ ⦋ A / x⦌ B → ran ⁡ ⦋ A / x⦌ B = y | ∃ w w y ∈ ⦋ A / x⦌ B → ⦋ A / x⦌ ran ⁡ B = ran ⁡ ⦋ A / x⦌ B
43 39 40 42 e10 ⊢ A ∈ V → ⦋ A / x⦌ ran ⁡ B = ran ⁡ ⦋ A / x⦌ B
44 43 in1 ⊢ A ∈ V → ⦋ A / x⦌ ran ⁡ B = ran ⁡ ⦋ A / x⦌ B