HomeHome Metamath Proof Explorer < Previous   Next >
Related theorems
Unicode version

Theorem funcnvuni 2706
Description: The union of a chain (with respect to inclusion) of single-rooted sets is single-rooted. (See funcnv 2703 for "single-rooted" definition.)
Assertion
Ref Expression
funcnvuni |- (A.f e. A (Fun `'f /\ A.g e. A (f (_ g \/ g (_ f)) -> Fun `'U.A)
Distinct variable group(s):   f,g,A

Proof of Theorem funcnvuni
StepHypRef Expression
1 cnveq 2513 . . . . . . . . . . 11 |- (f = v -> `'f = `'v)
2 funeq 2683 . . . . . . . . . . 11 |- (`'f = `'v -> (Fun `'f <-> Fun `'v))
31, 2syl 12 . . . . . . . . . 10 |- (f = v -> (Fun `'f <-> Fun `'v))
4 sseq1 1521 . . . . . . . . . . . 12 |- (f = v -> (f (_ g <-> v (_ g))
5 sseq2 1522 . . . . . . . . . . . 12 |- (f = v -> (g (_ f <-> g (_ v))
64, 5orbi12d 475 . . . . . . . . . . 11 |- (f = v -> ((f (_ g \/ g (_ f) <-> (v (_ g \/ g (_ v)))
76biraldv 1219 . . . . . . . . . 10 |- (f = v -> (A.g e. A (f (_ g \/ g (_ f) <-> A.g e. A (v (_ g \/ g (_ v)))
83, 7anbi12d 476 . . . . . . . . 9 |- (f = v -> ((Fun `'f /\ A.g e. A (f (_ g \/ g (_ f)) <-> (Fun `'v /\ A.g e. A (v (_ g \/ g (_ v))))
98rcla4v 1402 . . . . . . . 8 |- (A.f e. A (Fun `'f /\ A.g e. A (f (_ g \/ g (_ f)) -> (v e. A -> (Fun `'v /\ A.g e. A (v (_ g \/ g (_ v))))
10 funeq 2683 . . . . . . . . . . 11 |- (z = `'v -> (Fun z <-> Fun `'v))
1110biimprcd 138 . . . . . . . . . 10 |- (Fun `'v -> (z = `'v -> Fun z))
1211adantr 306 . . . . . . . . 9 |- ((Fun `'v /\ A.g e. A (v (_ g \/ g (_ v)) -> (z = `'v -> Fun z))
13 sseq2 1522 . . . . . . . . . . . . . . . 16 |- (g = x -> (v (_ g <-> v (_ x))
14 sseq1 1521 . . . . . . . . . . . . . . . 16 |- (g = x -> (g (_ v <-> x (_ v))
1513, 14orbi12d 475 . . . . . . . . . . . . . . 15 |- (g = x -> ((v (_ g \/ g (_ v) <-> (v (_ x \/ x (_ v)))
1615rcla4v 1402 . . . . . . . . . . . . . 14 |- (A.g e. A (v (_ g \/ g (_ v) -> (x e. A -> (v (_ x \/ x (_ v)))
17 sseq12 1523 . . . . . . . . . . . . . . . . . . 19 |- ((z = `'v /\ w = `'x) -> (z (_ w <-> `'v (_ `'x))
1817ancoms 334 . . . . . . . . . . . . . . . . . 18 |- ((w = `'x /\ z = `'v) -> (z (_ w <-> `'v (_ `'x))
19 sseq12 1523 . . . . . . . . . . . . . . . . . 18 |- ((w = `'x /\ z = `'v) -> (w (_ z <-> `'x (_ `'v))
2018, 19orbi12d 475 . . . . . . . . . . . . . . . . 17 |- ((w = `'x /\ z = `'v) -> ((z (_ w \/ w (_ z) <-> (`'v (_ `'x \/ `'x (_ `'v)))
21 cnvss 2512 . . . . . . . . . . . . . . . . . 18 |- (v (_ x -> `'v (_ `'x)
22 cnvss 2512 . . . . . . . . . . . . . . . . . 18 |- (x (_ v -> `'x (_ `'v)
2321, 22orim12i 271 . . . . . . . . . . . . . . . . 17 |- ((v (_ x \/ x (_ v) -> (`'v (_ `'x \/ `'x (_ `'v))
2420, 23syl5bir 184 . . . . . . . . . . . . . . . 16 |- ((w = `'x /\ z = `'v) -> ((v (_ x \/ x (_ v) -> (z (_ w \/ w (_ z)))
2524com12 13 . . . . . . . . . . . . . . 15 |- ((v (_ x \/ x (_ v) -> ((w = `'x /\ z = `'v) -> (z (_ w \/ w (_ z)))
2625exp3a 292 . . . . . . . . . . . . . 14 |- ((v (_ x \/ x (_ v) -> (w = `'x -> (z = `'v -> (z (_ w \/ w (_ z))))
2716, 26syl6 23 . . . . . . . . . . . . 13 |- (A.g e. A (v (_ g \/ g (_ v) -> (x e. A -> (w = `'x -> (z = `'v -> (z (_ w \/ w (_ z)))))
2827r19.23adv 1286 . . . . . . . . . . . 12 |- (A.g e. A (v (_ g \/ g (_ v) -> (E.x e. A w = `'x -> (z = `'v -> (z (_ w \/ w (_ z))))
2928com23 32 . . . . . . . . . . 11 |- (A.g e. A (v (_ g \/ g (_ v) -> (z = `'v -> (E.x e. A w = `'x -> (z (_ w \/ w (_ z))))
302919.21adv 945 . . . . . . . . . 10 |- (A.g e. A (v (_ g \/ g (_ v) -> (z = `'v -> A.w(E.x e. A w = `'x -> (z (_ w \/ w (_ z))))
3130adantl 305 . . . . . . . . 9 |- ((Fun `'v /\ A.g e. A (v (_ g \/ g (_ v)) -> (z = `'v -> A.w(E.x e. A w = `'x -> (z (_ w \/ w (_ z))))
3212, 31jcad 455 . . . . . . . 8 |- ((Fun `'v /\ A.g e. A (v (_ g \/ g (_ v)) -> (z = `'v -> (Fun z /\ A.w(E.x e. A w = `'x -> (z (_ w \/ w (_ z)))))
339, 32syl6 23 . . . . . . 7 |- (A.f e. A (Fun `'f /\ A.g e. A (f (_ g \/ g (_ f)) -> (v e. A -> (z = `'v -> (Fun z /\ A.w(E.x e. A w = `'x -> (z (_ w \/ w (_ z))))))
3433r19.23adv 1286 . . . . . 6 |- (A.f e. A (Fun `'f /\ A.g e. A (f (_ g \/ g (_ f)) -> (E.v e. A z = `'v -> (Fun z /\ A.w(E.x e. A w = `'x -> (z (_ w \/ w (_ z)))))
35 cnveq 2513 . . . . . . . 8 |- (x = v -> `'x = `'v)
3635cleq2d 1112 . . . . . . 7 |- (x = v -> (z = `'x <-> z = `'v))
3736cbvrexv 1334 . . . . . 6 |- (E.x e. A z = `'x <-> E.v e. A z = `'v)
3834, 37syl5ib 181 . . . . 5 |- (A.f e. A (Fun `'f /\ A.g e. A (f (_ g \/ g (_ f)) -> (E.x e. A z = `'x -> (Fun z /\ A.w(E.x e. A w = `'x -> (z (_ w \/ w (_ z)))))
393819.21aiv 943 . . . 4 |- (A.f e. A (Fun `'f /\ A.g e. A (f (_ g \/ g (_ f)) -> A.z(E.x e. A z = `'x -> (Fun z /\ A.w(E.x e. A w = `'x -> (z (_ w \/ w (_ z)))))
40 df-ral 1205 . . . . 5 |- (A.z e. {y | E.x e. A y = `'x} (Fun z /\ A.w e. {y | E.x e. A y = `'x} (z (_ w \/ w (_ z)) <-> A.z(z e. {y | E.x e. A y = `'x} -> (Fun z /\ A.w e. {y | E.x e. A y = `'x} (z (_ w \/ w (_ z))))
41 visset 1350 . . . . . . . 8 |- z e. V
42 cleq1 1107 . . . . . . . . 9 |- (y = z -> (y = `'x <-> z = `'x))
4342birexdv 1220 . . . . . . . 8 |- (y = z -> (E.x e. A y = `'x <-> E.x e. A z = `'x))
4441, 43elab 1415 . . . . . . 7 |- (z e. {y | E.x e. A y = `'x} <-> E.x e. A z = `'x)
45 df-ral 1205 . . . . . . . . 9 |- (A.w e. {y | E.x e. A y = `'x} (z (_ w \/ w (_ z) <-> A.w(w e. {y | E.x e. A y = `'x} -> (z (_ w \/ w (_ z)))
46 visset 1350 . . . . . . . . . . . 12 |- w e. V
47 cleq1 1107 . . . . . . . . . . . . 13 |- (y = w -> (y = `'x <-> w = `'x))
4847birexdv 1220 . . . . . . . . . . . 12 |- (y = w -> (E.x e. A y = `'x <-> E.x e. A w = `'x))
4946, 48elab 1415 . . . . . . . . . . 11 |- (w e. {y | E.x e. A y = `'x} <-> E.x e. A w = `'x)
5049imbi1i 161 . . . . . . . . . 10 |- ((w e. {y | E.x e. A y = `'x} -> (z (_ w \/ w (_ z)) <-> (E.x e. A w = `'x -> (z (_ w \/ w (_ z)))
5150bial 695 . . . . . . . . 9 |- (A.w(w e. {y | E.x e. A y = `'x} -> (z (_ w \/ w (_ z)) <-> A.w(E.x e. A w = `'x -> (z (_ w \/ w (_ z)))
5245, 51bitr 151 . . . . . . . 8 |- (A.w e. {y | E.x e. A y = `'x} (z (_ w \/ w (_ z) <-> A.w(E.x e. A w = `'x -> (z (_ w \/ w (_ z)))
5352anbi2i 367 . . . . . . 7 |- ((Fun z /\ A.w e. {y | E.x e. A y = `'x} (z (_ w \/ w (_ z)) <-> (Fun z /\ A.w(E.x e. A w = `'x -> (z (_ w \/ w (_ z))))
5444, 53imbi12i 163 . . . . . 6 |- ((z e. {y | E.x e. A y = `'x} -> (Fun z /\ A.w e. {y | E.x e. A y = `'x} (z (_ w \/ w (_ z))) <-> (E.x e. A z = `'x -> (Fun z /\ A.w(E.x e. A w = `'x -> (z (_ w \/ w (_ z)))))
5554bial 695 . . . . 5 |- (A.z(z e. {y | E.x e. A y = `'x} -> (Fun z /\ A.w e. {y | E.x e. A y = `'x} (z (_ w \/ w (_ z))) <-> A.z(E.x e. A z = `'x -> (Fun z /\ A.w(E.x e. A w = `'x -> (z (_ w \/ w (_ z)))))
5640, 55bitr2 152 . . . 4 |- (A.z(E.x e. A z = `'x -> (Fun z /\ A.w(E.x e. A w = `'x -> (z (_ w \/ w (_ z)))) <-> A.z e. {y | E.x e. A y = `'x}