Table of ContentsTable of Contents Mathbox for Frédéric Liné < Previous   Next >
Related theorems
Unicode version

Theorem iepiclem 15172
Description: Lemma for isepic 15173.
Hypotheses
Ref Expression
iepiclem.1 |- O = dom (id` T)
iepiclem.2 |- H = ( hom ` T)
iepiclem.3 |- R = (o` T)
Assertion
Ref Expression
iepiclem |- ((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) -> (A.c e. O A.g e. (H` <.B, c>.)A.h e. (H` <.B, c>.)((gRF) = (hRF) -> g = h) -> (F e. dom (dom` T) /\ A.g e. dom (dom` T)A.h e. dom (dom` T)((((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F)) -> ((gRF) = (hRF) -> g = h)))))
Distinct variable groups:   A,c,g,h   B,c,g,h   F,c,g,h   H,c,g,h   O,c,g,h   R,c   T,c,g,h

Proof of Theorem iepiclem
StepHypRef Expression
1 iepiclem.1 . . . . . . 7 |- O = dom (id` T)
2 eqid 1884 . . . . . . 7 |- dom (dom` T) = dom (dom` T)
3 iepiclem.2 . . . . . . 7 |- H = ( hom ` T)
41, 2, 3ehm 15140 . . . . . 6 |- ((T e. Cat /\ A e. O /\ B e. O) -> (F e. (H` <.A, B>.) -> F e. dom (dom` T)))
543expib 1070 . . . . 5 |- (T e. Cat -> ((A e. O /\ B e. O) -> (F e. (H` <.A, B>.) -> F e. dom (dom` T))))
653imp 1061 . . . 4 |- ((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) -> F e. dom (dom` T))
76adantr 425 . . 3 |- (((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) /\ A.c e. O A.g e. (H` <.B, c>.)A.h e. (H` <.B, c>.)((gRF) = (hRF) -> g = h)) -> F e. dom (dom` T))
8 ax-17 1317 . . . . . 6 |- ((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) -> A.g(T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)))
9 ax-17 1317 . . . . . . 7 |- (c e. O -> A.g c e. O)
10 hbra1 2147 . . . . . . 7 |- (A.g e. (H` <.B, c>.)A.h e. (H` <.B, c>.)((gRF) = (hRF) -> g = h) -> A.gA.g e. (H` <.B, c>.)A.h e. (H` <.B, c>.)((gRF) = (hRF) -> g = h))
119, 10hbral 2146 . . . . . 6 |- (A.c e. O A.g e. (H` <.B, c>.)A.h e. (H` <.B, c>.)((gRF) = (hRF) -> g = h) -> A.gA.c e. O A.g e. (H` <.B, c>.)A.h e. (H` <.B, c>.)((gRF) = (hRF) -> g = h))
128, 11hban 1356 . . . . 5 |- (((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) /\ A.c e. O A.g e. (H` <.B, c>.)A.h e. (H` <.B, c>.)((gRF) = (hRF) -> g = h)) -> A.g((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) /\ A.c e. O A.g e. (H` <.B, c>.)A.h e. (H` <.B, c>.)((gRF) = (hRF) -> g = h)))
13 ax-17 1317 . . . . . . 7 |- ((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) -> A.h(T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)))
14 ax-17 1317 . . . . . . . 8 |- (c e. O -> A.h c e. O)
15 ax-17 1317 . . . . . . . . 9 |- (g e. (H` <.B, c>.) -> A.h g e. (H` <.B, c>.))
16 hbra1 2147 . . . . . . . . 9 |- (A.h e. (H` <.B, c>.)((gRF) = (hRF) -> g = h) -> A.hA.h e. (H` <.B, c>.)((gRF) = (hRF) -> g = h))
1715, 16hbral 2146 . . . . . . . 8 |- (A.g e. (H` <.B, c>.)A.h e. (H` <.B, c>.)((gRF) = (hRF) -> g = h) -> A.hA.g e. (H` <.B, c>.)A.h e. (H` <.B, c>.)((gRF) = (hRF) -> g = h))
1814, 17hbral 2146 . . . . . . 7 |- (A.c e. O A.g e. (H` <.B, c>.)A.h e. (H` <.B, c>.)((gRF) = (hRF) -> g = h) -> A.hA.c e. O A.g e. (H` <.B, c>.)A.h e. (H` <.B, c>.)((gRF) = (hRF) -> g = h))
1913, 18hban 1356 . . . . . 6 |- (((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) /\ A.c e. O A.g e. (H` <.B, c>.)A.h e. (H` <.B, c>.)((gRF) = (hRF) -> g = h)) -> A.h((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) /\ A.c e. O A.g e. (H` <.B, c>.)A.h e. (H` <.B, c>.)((gRF) = (hRF) -> g = h)))
20 eqid 1884 . . . . . . . . . . . . . . 15 |- (cod` T) = (cod` T)
212, 1, 20cdmo 15124 . . . . . . . . . . . . . 14 |- ((T e. Cat /\ g e. dom (dom` T)) -> ((cod` T)` g) e. O)
2221ex 402 . . . . . . . . . . . . 13 |- (T e. Cat -> (g e. dom (dom` T) -> ((cod` T)` g) e. O))
2322adantrd 427 . . . . . . . . . . . 12 |- (T e. Cat -> ((g e. dom (dom` T) /\ h e. dom (dom` T)) -> ((cod` T)` g) e. O))
24233ad2ant1 897 . . . . . . . . . . 11 |- ((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) -> ((g e. dom (dom` T) /\ h e. dom (dom` T)) -> ((cod` T)` g) e. O))
2524imp 377 . . . . . . . . . 10 |- (((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) /\ (g e. dom (dom` T) /\ h e. dom (dom` T))) -> ((cod` T)` g) e. O)
26 opeq2 3159 . . . . . . . . . . . . . . . . 17 |- (c = ((cod` T)` g) -> <.B, c>. = <.B, ((cod` T)` g)>.)
2726fveq2d 4685 . . . . . . . . . . . . . . . 16 |- (c = ((cod` T)` g) -> (H` <.B, c>.) = (H` <.B, ((cod` T)` g)>.))
2827eleq2d 1964 . . . . . . . . . . . . . . 15 |- (c = ((cod` T)` g) -> (g e. (H` <.B, c>.) <-> g e. (H` <.B, ((cod` T)` g)>.)))
2927eleq2d 1964 . . . . . . . . . . . . . . 15 |- (c = ((cod` T)` g) -> (h e. (H` <.B, c>.) <-> h e. (H` <.B, ((cod` T)` g)>.)))
3028, 29anbi12d 690 . . . . . . . . . . . . . 14 |- (c = ((cod` T)` g) -> ((g e. (H` <.B, c>.) /\ h e. (H` <.B, c>.)) <-> (g e. (H` <.B, ((cod` T)` g)>.) /\ h e. (H` <.B, ((cod` T)` g)>.))))
312, 1, 20cdmo 15124 . . . . . . . . . . . . . . . . . . . 20 |- ((T e. Cat /\ h e. dom (dom` T)) -> ((cod` T)` h) e. O)
3231ex 402 . . . . . . . . . . . . . . . . . . 19 |- (T e. Cat -> (h e. dom (dom` T) -> ((cod` T)` h) e. O))
3322, 32anim12d 617 . . . . . . . . . . . . . . . . . 18 |- (T e. Cat -> ((g e. dom (dom` T) /\ h e. dom (dom` T)) -> (((cod` T)` g) e. O /\ ((cod` T)` h) e. O)))
34333ad2ant1 897 . . . . . . . . . . . . . . . . 17 |- ((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) -> ((g e. dom (dom` T) /\ h e. dom (dom` T)) -> (((cod` T)` g) e. O /\ ((cod` T)` h) e. O)))
3534ancrd 323 . . . . . . . . . . . . . . . 16 |- ((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) -> ((g e. dom (dom` T) /\ h e. dom (dom` T)) -> ((((cod` T)` g) e. O /\ ((cod` T)` h) e. O) /\ (g e. dom (dom` T) /\ h e. dom (dom` T)))))
36 eqid 1884 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 |- (dom` T) = (dom` T)
371, 2, 36, 20, 3ishomd 15139 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 |- ((T e. Cat /\ B e. O /\ ((cod` T)` g) e. O) -> (g e. (H` <.B, ((cod` T)` g)>.) <-> (g e. dom (dom` T) /\ ((dom` T)` g) = B /\ ((cod` T)` g) = ((cod` T)` g))))
38373exp 1066 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 |- (T e. Cat -> (B e. O -> (((cod` T)` g) e. O -> (g e. (H` <.B, ((cod` T)` g)>.) <-> (g e. dom (dom` T) /\ ((dom` T)` g) = B /\ ((cod` T)` g) = ((cod` T)` g))))))
3938com12 14 . . . . . . . . . . . . . . . . . . . . . . . . . 26 |- (B e. O -> (T e. Cat -> (((cod` T)` g) e. O -> (g e. (H` <.B, ((cod` T)` g)>.) <-> (g e. dom (dom` T) /\ ((dom` T)` g) = B /\ ((cod` T)` g) = ((cod` T)` g))))))
4039adantl 424 . . . . . . . . . . . . . . . . . . . . . . . . 25 |- ((A e. O /\ B e. O) -> (T e. Cat -> (((cod` T)` g) e. O -> (g e. (H` <.B, ((cod` T)` g)>.) <-> (g e. dom (dom` T) /\ ((dom` T)` g) = B /\ ((cod` T)` g) = ((cod` T)` g))))))
4140impcom 378 . . . . . . . . . . . . . . . . . . . . . . . 24 |- ((T e. Cat /\ (A e. O /\ B e. O)) -> (((cod` T)` g) e. O -> (g e. (H` <.B, ((cod` T)` g)>.) <-> (g e. dom (dom` T) /\ ((dom` T)` g) = B /\ ((cod` T)` g) = ((cod` T)` g)))))
42413adant3 896 . . . . . . . . . . . . . . . . . . . . . . 23 |- ((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) -> (((cod` T)` g) e. O -> (g e. (H` <.B, ((cod` T)` g)>.) <-> (g e. dom (dom` T) /\ ((dom` T)` g) = B /\ ((cod` T)` g) = ((cod` T)` g)))))
4342com12 14 . . . . . . . . . . . . . . . . . . . . . 22 |- (((cod` T)` g) e. O -> ((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) -> (g e. (H` <.B, ((cod` T)` g)>.) <-> (g e. dom (dom` T) /\ ((dom` T)` g) = B /\ ((cod` T)` g) = ((cod` T)` g)))))
4443adantr 425 . . . . . . . . . . . . . . . . . . . . 21 |- ((((cod` T)` g) e. O /\ ((cod` T)` h) e. O) -> ((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) -> (g e. (H` <.B, ((cod` T)` g)>.) <-> (g e. dom (dom` T) /\ ((dom` T)` g) = B /\ ((cod` T)` g) = ((cod` T)` g)))))
4544impcom 378 . . . . . . . . . . . . . . . . . . . 20 |- (((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) /\ (((cod` T)` g) e. O /\ ((cod` T)` h) e. O)) -> (g e. (H` <.B, ((cod` T)` g)>.) <-> (g e. dom (dom` T) /\ ((dom` T)` g) = B /\ ((cod` T)` g) = ((cod` T)` g))))
461, 2, 36, 20, 3ishomd 15139 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 |- ((T e. Cat /\ B e. O /\ ((cod` T)` g) e. O) -> (h e. (H` <.B, ((cod` T)` g)>.) <-> (h e. dom (dom` T) /\ ((dom` T)` h) = B /\ ((cod` T)` h) = ((cod` T)` g))))
47463exp 1066 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 |- (T e. Cat -> (B e. O -> (((cod` T)` g) e. O -> (h e. (H` <.B, ((cod` T)` g)>.) <-> (h e. dom (dom` T) /\ ((dom` T)` h) = B /\ ((cod` T)` h) = ((cod` T)` g))))))
4847com12 14 . . . . . . . . . . . . . . . . . . . . . . . . . 26 |- (B e. O -> (T e. Cat -> (((cod` T)` g) e. O -> (h e. (H` <.B, ((cod` T)` g)>.) <-> (h e. dom (dom` T) /\ ((dom` T)` h) = B /\ ((cod` T)` h) = ((cod` T)` g))))))
4948adantl 424 . . . . . . . . . . . . . . . . . . . . . . . . 25 |- ((A e. O /\ B e. O) -> (T e. Cat -> (((cod` T)` g) e. O -> (h e. (H` <.B, ((cod` T)` g)>.) <-> (h e. dom (dom` T) /\ ((dom` T)` h) = B /\ ((cod` T)` h) = ((cod` T)` g))))))
5049impcom 378 . . . . . . . . . . . . . . . . . . . . . . . 24 |- ((T e. Cat /\ (A e. O /\ B e. O)) -> (((cod` T)` g) e. O -> (h e. (H` <.B, ((cod` T)` g)>.) <-> (h e. dom (dom` T) /\ ((dom` T)` h) = B /\ ((cod` T)` h) = ((cod` T)` g)))))
51503adant3 896 . . . . . . . . . . . . . . . . . . . . . . 23 |- ((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) -> (((cod` T)` g) e. O -> (h e. (H` <.B, ((cod` T)` g)>.) <-> (h e. dom (dom` T) /\ ((dom` T)` h) = B /\ ((cod` T)` h) = ((cod` T)` g)))))
5251com12 14 . . . . . . . . . . . . . . . . . . . . . 22 |- (((cod` T)` g) e. O -> ((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) -> (h e. (H` <.B, ((cod` T)` g)>.) <-> (h e. dom (dom` T) /\ ((dom` T)` h) = B /\ ((cod` T)` h) = ((cod` T)` g)))))
5352adantr 425 . . . . . . . . . . . . . . . . . . . . 21 |- ((((cod` T)` g) e. O /\ ((cod` T)` h) e. O) -> ((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) -> (h e. (H` <.B, ((cod` T)` g)>.) <-> (h e. dom (dom` T) /\ ((dom` T)` h) = B /\ ((cod` T)` h) = ((cod` T)` g)))))
5453impcom 378 . . . . . . . . . . . . . . . . . . . 20 |- (((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) /\ (((cod` T)` g) e. O /\ ((cod` T)` h) e. O)) -> (h e. (H` <.B, ((cod` T)` g)>.) <-> (h e. dom (dom` T) /\ ((dom` T)` h) = B /\ ((cod` T)` h) = ((cod` T)` g))))
5545, 54anbi12d 690 . . . . . . . . . . . . . . . . . . 19 |- (((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) /\ (((cod` T)` g) e. O /\ ((cod` T)` h) e. O)) -> ((g e. (H` <.B, ((cod` T)` g)>.) /\ h e. (H` <.B, ((cod` T)` g)>.)) <-> ((g e. dom (dom` T) /\ ((dom` T)` g) = B /\ ((cod` T)` g) = ((cod` T)` g)) /\ (h e. dom (dom` T) /\ ((dom` T)` h) = B /\ ((cod` T)` h) = ((cod` T)` g)))))
5655adantrr 431 . . . . . . . . . . . . . . . . . 18 |- (((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) /\ ((((cod` T)` g) e. O /\ ((cod` T)` h) e. O) /\ (g e. dom (dom` T) /\ h e. dom (dom` T)))) -> ((g e. (H` <.B, ((cod` T)` g)>.) /\ h e. (H` <.B, ((cod` T)` g)>.)) <-> ((g e. dom (dom` T) /\ ((dom` T)` g) = B /\ ((cod` T)` g) = ((cod` T)` g)) /\ (h e. dom (dom` T) /\ ((dom` T)` h) = B /\ ((cod` T)` h) = ((cod` T)` g)))))
571, 2, 36, 20, 3ishomd 15139 . . . . . . . . . . . . . . . . . . . . . . . . 25 |- ((T e. Cat /\ A e. O /\ B e. O) -> (F e. (H` <.A, B>.) <-> (F e. dom (dom` T) /\ ((dom` T)` F) = A /\ ((cod` T)` F) = B)))
5857biimpd 170 . . . . . . . . . . . . . . . . . . . . . . . 24 |- ((T e. Cat /\ A e. O /\ B e. O) -> (F e. (H` <.A, B>.) -> (F e. dom (dom` T) /\ ((dom` T)` F) = A /\ ((cod` T)` F) = B)))
59583expib 1070 . . . . . . . . . . . . . . . . . . . . . . 23 |- (T e. Cat -> ((A e. O /\ B e. O) -> (F e. (H` <.A, B>.) -> (F e. dom (dom` T) /\ ((dom` T)` F) = A /\ ((cod` T)` F) = B))))
60593imp 1061 . . . . . . . . . . . . . . . . . . . . . 22 |- ((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) -> (F e. dom (dom` T) /\ ((dom` T)` F) = A /\ ((cod` T)` F) = B))
61 eqeq2 1893 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 |- (B = ((cod` T)` F) -> (((dom` T)` g) = B <-> ((dom` T)` g) = ((cod` T)` F)))
6261eqcoms 1887 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 |- (((cod` T)` F) = B -> (((dom` T)` g) = B <-> ((dom` T)` g) = ((cod` T)` F)))
63623anbi2d 1173 . . . . . . . . . . . . . . . . . . . . . . . . . 26 |- (((cod` T)` F) = B -> ((g e. dom (dom` T) /\ ((dom` T)` g) = B /\ ((cod` T)` g) = ((cod` T)` g)) <-> (g e. dom (dom` T) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((cod` T)` g) = ((cod` T)` g))))
64 eqeq2 1893 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 |- (B = ((cod` T)` F) -> (((dom` T)` h) = B <-> ((dom` T)` h) = ((cod` T)` F)))
6564eqcoms 1887 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 |- (((cod` T)` F) = B -> (((dom` T)` h) = B <-> ((dom` T)` h) = ((cod` T)` F)))
66653anbi2d 1173 . . . . . . . . . . . . . . . . . . . . . . . . . 26 |- (((cod` T)` F) = B -> ((h e. dom (dom` T) /\ ((dom` T)` h) = B /\ ((cod` T)` h) = ((cod` T)` g)) <-> (h e. dom (dom` T) /\ ((dom` T)` h) = ((cod` T)` F) /\ ((cod` T)` h) = ((cod` T)` g))))
6763, 66anbi12d 690 . . . . . . . . . . . . . . . . . . . . . . . . 25 |- (((cod` T)` F) = B -> (((g e. dom (dom` T) /\ ((dom` T)` g) = B /\ ((cod` T)` g) = ((cod` T)` g)) /\ (h e. dom (dom` T) /\ ((dom` T)` h) = B /\ ((cod` T)` h) = ((cod` T)` g))) <-> ((g e. dom (dom` T) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((cod` T)` g) = ((cod` T)` g)) /\ (h e. dom (dom` T) /\ ((dom` T)` h) = ((cod` T)` F) /\ ((cod` T)` h) = ((cod` T)` g)))))
68 eqcom 1886 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 |- (((cod` T)` h) = ((cod` T)` g) <-> ((cod` T)` g) = ((cod` T)` h))
6968biimpi 168 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 |- (((cod` T)` h) = ((cod` T)` g) -> ((cod` T)` g) = ((cod` T)` h))
70693ad2ant3 899 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 |- ((h e. dom (dom` T) /\ ((dom` T)` h) = ((cod` T)` F) /\ ((cod` T)` h) = ((cod` T)` g)) -> ((cod` T)` g) = ((cod` T)` h))
7170adantl 424 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 |- (((g e. dom (dom` T) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((cod` T)` g) = ((cod` T)` g)) /\ (h e. dom (dom` T) /\ ((dom` T)` h) = ((cod` T)` F) /\ ((cod` T)` h) = ((cod` T)` g))) -> ((cod` T)` g) = ((cod` T)` h))
72 simpl2 880 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 |- (((g e. dom (dom` T) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((cod` T)` g) = ((cod` T)` g)) /\ (h e. dom (dom` T) /\ ((dom` T)` h) = ((cod` T)` F) /\ ((cod` T)` h) = ((cod` T)` g))) -> ((dom` T)` g) = ((cod` T)` F))
73 simpr2 883 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 |- (((g e. dom (dom` T) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((cod` T)` g) = ((cod` T)` g)) /\ (h e. dom (dom` T) /\ ((dom` T)` h) = ((cod` T)` F) /\ ((cod` T)` h) = ((cod` T)` g))) -> ((dom` T)` h) = ((cod` T)` F))
7471, 72, 733jca 1050 . . . . . . . . . . . . . . . . . . . . . . . . . 26 |- (((g e. dom (dom` T) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((cod` T)` g) = ((cod` T)` g)) /\ (h e. dom (dom` T) /\ ((dom` T)` h) = ((cod` T)` F) /\ ((cod` T)` h) = ((cod` T)` g))) -> (((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F)))
75 simpll 448 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 |- (((g e. dom (dom` T) /\ h e. dom (dom` T)) /\ (((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F))) -> g e. dom (dom` T))
76 simpr2 883 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 |- (((g e. dom (dom` T) /\ h e. dom (dom` T)) /\ (((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F))) -> ((dom` T)` g) = ((cod` T)` F))
77 eqidd 1885 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 |- (((g e. dom (dom` T) /\ h e. dom (dom` T)) /\ (((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F))) -> ((cod` T)` g) = ((cod` T)` g))
7875, 76, 773jca 1050 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 |- (((g e. dom (dom` T) /\ h e. dom (dom` T)) /\ (((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F))) -> (g e. dom (dom` T) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((cod` T)` g) = ((cod` T)` g)))
79 simplr 449 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 |- (((g e. dom (dom` T) /\ h e. dom (dom` T)) /\ (((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F))) -> h e. dom (dom` T))
80 simpr3 884 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 |- (((g e. dom (dom` T) /\ h e. dom (dom` T)) /\ (((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F))) -> ((dom` T)` h) = ((cod` T)` F))
81 eqcom 1886 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 |- (((cod` T)` g) = ((cod` T)` h) <-> ((cod` T)` h) = ((cod` T)` g))
8281biimpi 168 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 |- (((cod` T)` g) = ((cod` T)` h) -> ((cod` T)` h) = ((cod` T)` g))
83823ad2ant1 897 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 |- ((((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F)) -> ((cod` T)` h) = ((cod` T)` g))
8483adantl 424 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 |- (((g e. dom (dom` T) /\ h e. dom (dom` T)) /\ (((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F))) -> ((cod` T)` h) = ((cod` T)` g))
8579, 80, 843jca 1050 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 |- (((g e. dom (dom` T) /\ h e. dom (dom` T)) /\ (((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F))) -> (h e. dom (dom` T) /\ ((dom` T)` h) = ((cod` T)` F) /\ ((cod` T)` h) = ((cod` T)` g)))
8678, 85jca 310 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 |- (((g e. dom (dom` T) /\ h e. dom (dom` T)) /\ (((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F))) -> ((g e. dom (dom` T) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((cod` T)` g) = ((cod` T)` g)) /\ (h e. dom (dom` T) /\ ((dom` T)` h) = ((cod` T)` F) /\ ((cod` T)` h) = ((cod` T)` g))))
8786ex 402 . . . . . . . . . . . . . . . . . . . . . . . . . 26 |- ((g e. dom (dom` T) /\ h e. dom (dom` T)) -> ((((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F)) -> ((g e. dom (dom` T) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((cod` T)` g) = ((cod` T)` g)) /\ (h e. dom (dom` T) /\ ((dom` T)` h) = ((cod` T)` F) /\ ((cod` T)` h) = ((cod` T)` g)))))
8874, 87impbid2 576 . . . . . . . . . . . . . . . . . . . . . . . . 25 |- ((g e. dom (dom` T) /\ h e. dom (dom` T)) -> (((g e. dom (dom` T) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((cod` T)` g) = ((cod` T)` g)) /\ (h e. dom (dom` T) /\ ((dom` T)` h) = ((cod` T)` F) /\ ((cod` T)` h) = ((cod` T)` g))) <-> (((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F))))
8967, 88sylan9bb 599 . . . . . . . . . . . . . . . . . . . . . . . 24 |- ((((cod` T)` F) = B /\ (g e. dom (dom` T) /\ h e. dom (dom` T))) -> (((g e. dom (dom` T) /\ ((dom` T)` g) = B /\ ((cod` T)` g) = ((cod` T)` g)) /\ (h e. dom (dom` T) /\ ((dom` T)` h) = B /\ ((cod` T)` h) = ((cod` T)` g))) <-> (((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F))))
9089ex 402 . . . . . . . . . . . . . . . . . . . . . . 23 |- (((cod` T)` F) = B -> ((g e. dom (dom` T) /\ h e. dom (dom` T)) -> (((g e. dom (dom` T) /\ ((dom` T)` g) = B /\ ((cod` T)` g) = ((cod` T)` g)) /\ (h e. dom (dom` T) /\ ((dom` T)` h) = B /\ ((cod` T)` h) = ((cod` T)` g))) <-> (((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F)))))
91903ad2ant3 899 . . . . . . . . . . . . . . . . . . . . . 22 |- ((F e. dom (dom` T) /\ ((dom` T)` F) = A /\ ((cod` T)` F) = B) -> ((g e. dom (dom` T) /\ h e. dom (dom` T)) -> (((g e. dom (dom` T) /\ ((dom` T)` g) = B /\ ((cod` T)` g) = ((cod` T)` g)) /\ (h e. dom (dom` T) /\ ((dom` T)` h) = B /\ ((cod` T)` h) = ((cod` T)` g))) <-> (((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F)))))
9260, 91syl 12 . . . . . . . . . . . . . . . . . . . . 21 |- ((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) -> ((g e. dom (dom` T) /\ h e. dom (dom` T)) -> (((g e. dom (dom` T) /\ ((dom` T)` g) = B /\ ((cod` T)` g) = ((cod` T)` g)) /\ (h e. dom (dom` T) /\ ((dom` T)` h) = B /\ ((cod` T)` h) = ((cod` T)` g))) <-> (((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F)))))
9392com12 14 . . . . . . . . . . . . . . . . . . . 20 |- ((g e. dom (dom` T) /\ h e. dom (dom` T)) -> ((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) -> (((g e. dom (dom` T) /\ ((dom` T)` g) = B /\ ((cod` T)` g) = ((cod` T)` g)) /\ (h e. dom (dom` T) /\ ((dom` T)` h) = B /\ ((cod` T)` h) = ((cod` T)` g))) <-> (((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F)))))
9493adantl 424 . . . . . . . . . . . . . . . . . . 19 |- (((((cod` T)` g) e. O /\ ((cod` T)` h) e. O) /\ (g e. dom (dom` T) /\ h e. dom (dom` T))) -> ((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) -> (((g e. dom (dom` T) /\ ((dom` T)` g) = B /\ ((cod` T)` g) = ((cod` T)` g)) /\ (h e. dom (dom` T) /\ ((dom` T)` h) = B /\ ((cod` T)` h) = ((cod` T)` g))) <-> (((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F)))))
9594impcom 378 . . . . . . . . . . . . . . . . . 18 |- (((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) /\ ((((cod` T)` g) e. O /\ ((cod` T)` h) e. O) /\ (g e. dom (dom` T) /\ h e. dom (dom` T)))) -> (((g e. dom (dom` T) /\ ((dom` T)` g) = B /\ ((cod` T)` g) = ((cod` T)` g)) /\ (h e. dom (dom` T) /\ ((dom` T)` h) = B /\ ((cod` T)` h) = ((cod` T)` g))) <-> (((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F))))
9656, 95bitrd 587 . . . . . . . . . . . . . . . . 17 |- (((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) /\ ((((cod` T)` g) e. O /\ ((cod` T)` h) e. O) /\ (g e. dom (dom` T) /\ h e. dom (dom` T)))) -> ((g e. (H` <.B, ((cod` T)` g)>.) /\ h e. (H` <.B, ((cod` T)` g)>.)) <-> (((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F))))
9796ex 402 . . . . . . . . . . . . . . . 16 |- ((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) -> (((((cod` T)` g) e. O /\ ((cod` T)` h) e. O) /\ (g e. dom (dom` T) /\ h e. dom (dom` T))) -> ((g e. (H` <.B, ((cod` T)` g)>.) /\ h e. (H` <.B, ((cod` T)` g)>.)) <-> (((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F)))))
9835, 97syld 30 . . . . . . . . . . . . . . 15 |- ((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) -> ((g e. dom (dom` T) /\ h e. dom (dom` T)) -> ((g e. (H` <.B, ((cod` T)` g)>.) /\ h e. (H` <.B, ((cod` T)` g)>.)) <-> (((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F)))))
9998imp 377 . . . . . . . . . . . . . 14 |- (((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) /\ (g e. dom (dom` T) /\ h e. dom (dom` T))) -> ((g e. (H` <.B, ((cod` T)` g)>.) /\ h e. (H` <.B, ((cod` T)` g)>.)) <-> (((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F))))
10030, 99sylan9bbr 600 . . . . . . . . . . . . 13 |- ((((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) /\ (g e. dom (dom` T) /\ h e. dom (dom` T))) /\ c = ((cod` T)` g)) -> ((g e. (H` <.B, c>.) /\ h e. (H` <.B, c>.)) <-> (((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F))))
101100imbi1d 675 . . . . . . . . . . . 12 |- ((((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) /\ (g e. dom (dom` T) /\ h e. dom (dom` T))) /\ c = ((cod` T)` g)) -> (((g e. (H` <.B, c>.) /\ h e. (H` <.B, c>.)) -> ((gRF) = (hRF) -> g = h)) <-> ((((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F)) -> ((gRF) = (hRF) -> g = h))))
102101rcla4dv 2382 . . . . . . . . . . 11 |- ((((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) /\ (g e. dom (dom` T) /\ h e. dom (dom` T))) /\ ((cod` T)` g) e. O) -> (A.c e. O ((g e. (H` <.B, c>.) /\ h e. (H` <.B, c>.)) -> ((gRF) = (hRF) -> g = h)) -> ((((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F)) -> ((gRF) = (hRF) -> g = h))))
103 ra42 2157 . . . . . . . . . . . 12 |- (A.g e. (H` <.B, c>.)A.h e. (H` <.B, c>.)((gRF) = (hRF) -> g = h) -> ((g e. (H` <.B, c>.) /\ h e. (H` <.B, c>.)) -> ((gRF) = (hRF) -> g = h)))
104103ralimi 2168 . . . . . . . . . . 11 |- (A.c e. O A.g e. (H` <.B, c>.)A.h e. (H` <.B, c>.)((gRF) = (hRF) -> g = h) -> A.c e. O ((g e. (H` <.B, c>.) /\ h e. (H` <.B, c>.)) -> ((gRF) = (hRF) -> g = h)))
105102, 104syl5 20 . . . . . . . . . 10 |- ((((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) /\ (g e. dom (dom` T) /\ h e. dom (dom` T))) /\ ((cod` T)` g) e. O) -> (A.c e. O A.g e. (H` <.B, c>.)A.h e. (H` <.B, c>.)((gRF) = (hRF) -> g = h) -> ((((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F)) -> ((gRF) = (hRF) -> g = h))))
10625, 105mpdan 768 . . . . . . . . 9 |- (((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) /\ (g e. dom (dom` T) /\ h e. dom (dom` T))) -> (A.c e. O A.g e. (H` <.B, c>.)A.h e. (H` <.B, c>.)((gRF) = (hRF) -> g = h) -> ((((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F)) -> ((gRF) = (hRF) -> g = h))))
107106ex 402 . . . . . . . 8 |- ((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) -> ((g e. dom (dom` T) /\ h e. dom (dom` T)) -> (A.c e. O A.g e. (H` <.B, c>.)A.h e. (H` <.B, c>.)((gRF) = (hRF) -> g = h) -> ((((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F)) -> ((gRF) = (hRF) -> g = h)))))
108107com23 36 . . . . . . 7 |- ((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) -> (A.c e. O A.g e. (H` <.B, c>.)A.h e. (H` <.B, c>.)((gRF) = (hRF) -> g = h) -> ((g e. dom (dom` T) /\ h e. dom (dom` T)) -> ((((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F)) -> ((gRF) = (hRF) -> g = h)))))
109108imp 377 . . . . . 6 |- (((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) /\ A.c e. O A.g e. (H` <.B, c>.)A.h e. (H` <.B, c>.)((gRF) = (hRF) -> g = h)) -> ((g e. dom (dom` T) /\ h e. dom (dom` T)) -> ((((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F)) -> ((gRF) = (hRF) -> g = h))))
11019, 10919.21ai 1345 . . . . 5 |- (((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) /\ A.c e. O A.g e. (H` <.B, c>.)A.h e. (H` <.B, c>.)((gRF) = (hRF) -> g = h)) -> A.h((g e. dom (dom` T) /\ h e. dom (dom` T)) -> ((((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F)) -> ((gRF) = (hRF) -> g = h))))
11112, 11019.21ai 1345 . . . 4 |- (((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) /\ A.c e. O A.g e. (H` <.B, c>.)A.h e. (H` <.B, c>.)((gRF) = (hRF) -> g = h)) -> A.gA.h((g e. dom (dom` T) /\ h e. dom (dom` T)) -> ((((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F)) -> ((gRF) = (hRF) -> g = h))))
112 r2al 2136 . . . 4 |- (A.g e. dom (dom` T)A.h e. dom (dom` T)((((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F)) -> ((gRF) = (hRF) -> g = h)) <-> A.gA.h((g e. dom (dom` T) /\ h e. dom (dom` T)) -> ((((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F)) -> ((gRF) = (hRF) -> g = h))))
113111, 112sylibr 217 . . 3 |- (((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) /\ A.c e. O A.g e. (H` <.B, c>.)A.h e. (H` <.B, c>.)((gRF) = (hRF) -> g = h)) -> A.g e. dom (dom` T)A.h e. dom (dom` T)((((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F)) -> ((gRF) = (hRF) -> g = h)))
1147, 113jca 310 . 2 |- (((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) /\ A.c e. O A.g e. (H` <.B, c>.)A.h e. (H` <.B, c>.)((gRF) = (hRF) -> g = h)) -> (F e. dom (dom` T) /\ A.g e. dom (dom` T)A.h e. dom (dom` T)((((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F)) -> ((gRF) = (hRF) -> g = h))))
115114ex 402 1 |- ((T e. Cat /\ (A e. O /\ B e. O) /\ F e. (H` <.A, B>.)) -> (A.c e. O A.g e. (H` <.B, c>.)A.h e. (H` <.B, c>.)((gRF) = (hRF) -> g = h) -> (F e. dom (dom` T) /\ A.g e. dom (dom` T)A.h e. dom (dom` T)((((cod` T)` g) = ((cod` T)` h) /\ ((dom` T)` g) = ((cod` T)` F) /\ ((dom` T)` h) = ((cod` T)` F)) -> ((gRF) = (hRF) -> g = h)))))
Colors of variables: wff set class
Syntax hints:   -> wi 3   <-> wb 163   /\ wa 240   /\ w3a 858  A.wal 1296   = wceq 1298   e. wcel 1300  A.wral 2105  <.cop 3046  dom cdm 3986  ` cfv 3998  (class class class)co 4884  domcdom_ 15059  codccod_ 15060  idcid_ 15061  oco_ 15062   Cat ccat 15099   hom chom 15134
This theorem is referenced by:  isepic 15173
This theorem was proved from axioms:  ax-1 4  ax-2 5  ax-3 6  ax-mp 7  ax-7 1304  ax-gen 1305  ax-8 1306  ax-9 1307  ax-10 1308  ax-11 1309  ax-12 1310  ax-13 1311  ax-14 1312  ax-17 1317  ax-4 1319  ax-5o 1321  ax-6o 1324  ax-9o 1481  ax-10o 1500  ax-16 1580  ax-11o 1588  ax-ext 1865  ax-rep 3428  ax-sep 3438  ax-nul 3445  ax-pow 3481  ax-pr 3524  ax-un 3790
This theorem depends on definitions:  df-bi 164  df-or 241  df-an 242  df-3an 860  df-ex 1327  df-sb 1536  df-eu 1775  df-mo 1776  df-clab 1872  df-cleq 1877  df-clel 1880  df-ne 2019  df-ral 2109  df-rex 2110  df-v 2294  df-sbc 2454  df-csb 2541  df-dif 2597  df-un 2600  df-in 2603  df-ss 2605  df-nul 2876  df-if 2983  df-pw 3035  df-sn 3049  df-pr 3050  df-op 3053  df-uni 3178  df-int 3215  df-br 3339  df-opab 3396  df-id 3586  df-xp 4000  df-rel 4001  df-cnv 4002  df-co 4003  df-dm 4004  df-rn 4005  df-res 4006  df-ima 4007  df-fun 4008  df-fn 4009  df-f 4010  df-f1 4011  df-fo 4012  df-f1o 4013  df-fv 4014  df-opr 4886  df-oprab 4887  df-1st 5020  df-2nd 5021  df-alg 15063  df-doma 15064  df-coda 15065  df-ida 15066  df-cmpa 15067  df-ded 15082  df-cat 15100  df-hom 15135
Copyright terms: Public domain