Users' Mathboxes Mathbox for Scott Fenton < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  brapply Structured version   Visualization version   GIF version

Theorem brapply 36700
Description: Binary relation form of the Apply function. (Contributed by Scott Fenton, 12-Apr-2014.) (Revised by Mario Carneiro, 19-Apr-2014.) (Proof shortened by Peter Mazsa, 2-Oct-2022.)
Hypotheses
Ref Expression
brapply.1 𝐴 ∈ V
brapply.2 𝐵 ∈ V
brapply.3 𝐶 ∈ V
Assertion
Ref Expression
brapply (⟨𝐴, 𝐵⟩Apply𝐶 ↔ 𝐶 = (𝐴‘𝐵))

Proof of Theorem brapply
Dummy variables 𝑎 𝑏 𝑥 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 snex 5397 . . . 4 {(𝐴 “ {𝐵})} ∈ V
21inex1 5277 . . 3 ({(𝐴 “ {𝐵})} ∩ Singletons ) ∈ V
3 unieq 4878 . . . . 5 (𝑥 = ({(𝐴 “ {𝐵})} ∩ Singletons ) → ∪ 𝑥 = ∪ ({(𝐴 “ {𝐵})} ∩ Singletons ))
43unieqd 4880 . . . 4 (𝑥 = ({(𝐴 “ {𝐵})} ∩ Singletons ) → ∪ ∪ 𝑥 = ∪ ∪ ({(𝐴 “ {𝐵})} ∩ Singletons ))
54eqeq2d 2772 . . 3 (𝑥 = ({(𝐴 “ {𝐵})} ∩ Singletons ) → (𝐶 = ∪ ∪ 𝑥 ↔ 𝐶 = ∪ ∪ ({(𝐴 “ {𝐵})} ∩ Singletons )))
62, 5ceqsexv 3499 . 2 (∃𝑥(𝑥 = ({(𝐴 “ {𝐵})} ∩ Singletons ) ∧ 𝐶 = ∪ ∪ 𝑥) ↔ 𝐶 = ∪ ∪ ({(𝐴 “ {𝐵})} ∩ Singletons ))
7 df-apply 36635 . . . 4 Apply = (( Bigcup ∘ Bigcup ) ∘ (((V × V) ∖ ran ((V ⊗ E ) △ (( E ↾ Singletons ) ⊗ V))) ∘ ((Singleton ∘ Img) ∘ pprod( I , Singleton))))
87breqi 5109 . . 3 (⟨𝐴, 𝐵⟩Apply𝐶 ↔ ⟨𝐴, 𝐵⟩(( Bigcup ∘ Bigcup ) ∘ (((V × V) ∖ ran ((V ⊗ E ) △ (( E ↾ Singletons ) ⊗ V))) ∘ ((Singleton ∘ Img) ∘ pprod( I , Singleton))))𝐶)
9 opex 5432 . . . 4 ⟨𝐴, 𝐵⟩ ∈ V
10 brapply.3 . . . 4 𝐶 ∈ V
119, 10brco 5848 . . 3 (⟨𝐴, 𝐵⟩(( Bigcup ∘ Bigcup ) ∘ (((V × V) ∖ ran ((V ⊗ E ) △ (( E ↾ Singletons ) ⊗ V))) ∘ ((Singleton ∘ Img) ∘ pprod( I , Singleton))))𝐶 ↔ ∃𝑥(⟨𝐴, 𝐵⟩(((V × V) ∖ ran ((V ⊗ E ) △ (( E ↾ Singletons ) ⊗ V))) ∘ ((Singleton ∘ Img) ∘ pprod( I , Singleton)))𝑥 ∧ 𝑥( Bigcup ∘ Bigcup )𝐶))
12 vex 3455 . . . . . . 7 𝑥 ∈ V
139, 12brco 5848 . . . . . 6 (⟨𝐴, 𝐵⟩(((V × V) ∖ ran ((V ⊗ E ) △ (( E ↾ Singletons ) ⊗ V))) ∘ ((Singleton ∘ Img) ∘ pprod( I , Singleton)))𝑥 ↔ ∃𝑦(⟨𝐴, 𝐵⟩((Singleton ∘ Img) ∘ pprod( I , Singleton))𝑦 ∧ 𝑦((V × V) ∖ ran ((V ⊗ E ) △ (( E ↾ Singletons ) ⊗ V)))𝑥))
14 vex 3455 . . . . . . . . . 10 𝑦 ∈ V
159, 14brco 5848 . . . . . . . . 9 (⟨𝐴, 𝐵⟩((Singleton ∘ Img) ∘ pprod( I , Singleton))𝑦 ↔ ∃𝑧(⟨𝐴, 𝐵⟩pprod( I , Singleton)𝑧 ∧ 𝑧(Singleton ∘ Img)𝑦))
16 brapply.1 . . . . . . . . . . . . 13 𝐴 ∈ V
17 brapply.2 . . . . . . . . . . . . 13 𝐵 ∈ V
18 vex 3455 . . . . . . . . . . . . 13 𝑧 ∈ V
1916, 17, 18brpprod3a 36648 . . . . . . . . . . . 12 (⟨𝐴, 𝐵⟩pprod( I , Singleton)𝑧 ↔ ∃𝑎∃𝑏(𝑧 = ⟨𝑎, 𝑏⟩ ∧ 𝐴 I 𝑎 ∧ 𝐵Singleton𝑏))
20 3anrot 1117 . . . . . . . . . . . . . 14 ((𝑧 = ⟨𝑎, 𝑏⟩ ∧ 𝐴 I 𝑎 ∧ 𝐵Singleton𝑏) ↔ (𝐴 I 𝑎 ∧ 𝐵Singleton𝑏 ∧ 𝑧 = ⟨𝑎, 𝑏⟩))
21 vex 3455 . . . . . . . . . . . . . . . . 17 𝑎 ∈ V
2221ideq 5830 . . . . . . . . . . . . . . . 16 (𝐴 I 𝑎 ↔ 𝐴 = 𝑎)
23 eqcom 2768 . . . . . . . . . . . . . . . 16 (𝐴 = 𝑎 ↔ 𝑎 = 𝐴)
2422, 23bitri 278 . . . . . . . . . . . . . . 15 (𝐴 I 𝑎 ↔ 𝑎 = 𝐴)
25 vex 3455 . . . . . . . . . . . . . . . 16 𝑏 ∈ V
2617, 25brsingle 36679 . . . . . . . . . . . . . . 15 (𝐵Singleton𝑏 ↔ 𝑏 = {𝐵})
27 biid 264 . . . . . . . . . . . . . . 15 (𝑧 = ⟨𝑎, 𝑏⟩ ↔ 𝑧 = ⟨𝑎, 𝑏⟩)
2824, 26, 273anbi123i 1173 . . . . . . . . . . . . . 14 ((𝐴 I 𝑎 ∧ 𝐵Singleton𝑏 ∧ 𝑧 = ⟨𝑎, 𝑏⟩) ↔ (𝑎 = 𝐴 ∧ 𝑏 = {𝐵} ∧ 𝑧 = ⟨𝑎, 𝑏⟩))
2920, 28bitri 278 . . . . . . . . . . . . 13 ((𝑧 = ⟨𝑎, 𝑏⟩ ∧ 𝐴 I 𝑎 ∧ 𝐵Singleton𝑏) ↔ (𝑎 = 𝐴 ∧ 𝑏 = {𝐵} ∧ 𝑧 = ⟨𝑎, 𝑏⟩))
30292exbii 1882 . . . . . . . . . . . 12 (∃𝑎∃𝑏(𝑧 = ⟨𝑎, 𝑏⟩ ∧ 𝐴 I 𝑎 ∧ 𝐵Singleton𝑏) ↔ ∃𝑎∃𝑏(𝑎 = 𝐴 ∧ 𝑏 = {𝐵} ∧ 𝑧 = ⟨𝑎, 𝑏⟩))
31 snex 5397 . . . . . . . . . . . . 13 {𝐵} ∈ V
32 opeq1 4833 . . . . . . . . . . . . . 14 (𝑎 = 𝐴 → ⟨𝑎, 𝑏⟩ = ⟨𝐴, 𝑏⟩)
3332eqeq2d 2772 . . . . . . . . . . . . 13 (𝑎 = 𝐴 → (𝑧 = ⟨𝑎, 𝑏⟩ ↔ 𝑧 = ⟨𝐴, 𝑏⟩))
34 opeq2 4834 . . . . . . . . . . . . . 14 (𝑏 = {𝐵} → ⟨𝐴, 𝑏⟩ = ⟨𝐴, {𝐵}⟩)
3534eqeq2d 2772 . . . . . . . . . . . . 13 (𝑏 = {𝐵} → (𝑧 = ⟨𝐴, 𝑏⟩ ↔ 𝑧 = ⟨𝐴, {𝐵}⟩))
3616, 31, 33, 35ceqsex2v 3502 . . . . . . . . . . . 12 (∃𝑎∃𝑏(𝑎 = 𝐴 ∧ 𝑏 = {𝐵} ∧ 𝑧 = ⟨𝑎, 𝑏⟩) ↔ 𝑧 = ⟨𝐴, {𝐵}⟩)
3719, 30, 363bitri 300 . . . . . . . . . . 11 (⟨𝐴, 𝐵⟩pprod( I , Singleton)𝑧 ↔ 𝑧 = ⟨𝐴, {𝐵}⟩)
3837anbi1i 636 . . . . . . . . . 10 ((⟨𝐴, 𝐵⟩pprod( I , Singleton)𝑧 ∧ 𝑧(Singleton ∘ Img)𝑦) ↔ (𝑧 = ⟨𝐴, {𝐵}⟩ ∧ 𝑧(Singleton ∘ Img)𝑦))
3938exbii 1881 . . . . . . . . 9 (∃𝑧(⟨𝐴, 𝐵⟩pprod( I , Singleton)𝑧 ∧ 𝑧(Singleton ∘ Img)𝑦) ↔ ∃𝑧(𝑧 = ⟨𝐴, {𝐵}⟩ ∧ 𝑧(Singleton ∘ Img)𝑦))
40 opex 5432 . . . . . . . . . . 11 ⟨𝐴, {𝐵}⟩ ∈ V
41 breq1 5106 . . . . . . . . . . 11 (𝑧 = ⟨𝐴, {𝐵}⟩ → (𝑧(Singleton ∘ Img)𝑦 ↔ ⟨𝐴, {𝐵}⟩(Singleton ∘ Img)𝑦))
4240, 41ceqsexv 3499 . . . . . . . . . 10 (∃𝑧(𝑧 = ⟨𝐴, {𝐵}⟩ ∧ 𝑧(Singleton ∘ Img)𝑦) ↔ ⟨𝐴, {𝐵}⟩(Singleton ∘ Img)𝑦)
4340, 14brco 5848 . . . . . . . . . 10 (⟨𝐴, {𝐵}⟩(Singleton ∘ Img)𝑦 ↔ ∃𝑥(⟨𝐴, {𝐵}⟩Img𝑥 ∧ 𝑥Singleton𝑦))
4416, 31, 12brimg 36699 . . . . . . . . . . . . 13 (⟨𝐴, {𝐵}⟩Img𝑥 ↔ 𝑥 = (𝐴 “ {𝐵}))
4512, 14brsingle 36679 . . . . . . . . . . . . 13 (𝑥Singleton𝑦 ↔ 𝑦 = {𝑥})
4644, 45anbi12i 640 . . . . . . . . . . . 12 ((⟨𝐴, {𝐵}⟩Img𝑥 ∧ 𝑥Singleton𝑦) ↔ (𝑥 = (𝐴 “ {𝐵}) ∧ 𝑦 = {𝑥}))
4746exbii 1881 . . . . . . . . . . 11 (∃𝑥(⟨𝐴, {𝐵}⟩Img𝑥 ∧ 𝑥Singleton𝑦) ↔ ∃𝑥(𝑥 = (𝐴 “ {𝐵}) ∧ 𝑦 = {𝑥}))
4816imaex 7926 . . . . . . . . . . . 12 (𝐴 “ {𝐵}) ∈ V
49 sneq 4594 . . . . . . . . . . . . 13 (𝑥 = (𝐴 “ {𝐵}) → {𝑥} = {(𝐴 “ {𝐵})})
5049eqeq2d 2772 . . . . . . . . . . . 12 (𝑥 = (𝐴 “ {𝐵}) → (𝑦 = {𝑥} ↔ 𝑦 = {(𝐴 “ {𝐵})}))
5148, 50ceqsexv 3499 . . . . . . . . . . 11 (∃𝑥(𝑥 = (𝐴 “ {𝐵}) ∧ 𝑦 = {𝑥}) ↔ 𝑦 = {(𝐴 “ {𝐵})})
5247, 51bitri 278 . . . . . . . . . 10 (∃𝑥(⟨𝐴, {𝐵}⟩Img𝑥 ∧ 𝑥Singleton𝑦) ↔ 𝑦 = {(𝐴 “ {𝐵})})
5342, 43, 523bitri 300 . . . . . . . . 9 (∃𝑧(𝑧 = ⟨𝐴, {𝐵}⟩ ∧ 𝑧(Singleton ∘ Img)𝑦) ↔ 𝑦 = {(𝐴 “ {𝐵})})
5415, 39, 533bitri 300 . . . . . . . 8 (⟨𝐴, 𝐵⟩((Singleton ∘ Img) ∘ pprod( I , Singleton))𝑦 ↔ 𝑦 = {(𝐴 “ {𝐵})})
55 eqid 2761 . . . . . . . . 9 ((V × V) ∖ ran ((V ⊗ E ) △ (( E ↾ Singletons ) ⊗ V))) = ((V × V) ∖ ran ((V ⊗ E ) △ (( E ↾ Singletons ) ⊗ V)))
56 brxp 5700 . . . . . . . . . 10 (𝑦(V × V)𝑥 ↔ (𝑦 ∈ V ∧ 𝑥 ∈ V))
5714, 12, 56mpbir2an 724 . . . . . . . . 9 𝑦(V × V)𝑥
58 epel 5554 . . . . . . . . . . 11 (𝑧 E 𝑦 ↔ 𝑧 ∈ 𝑦)
5958anbi1ci 638 . . . . . . . . . 10 ((𝑧 ∈ Singletons ∧ 𝑧 E 𝑦) ↔ (𝑧 ∈ 𝑦 ∧ 𝑧 ∈ Singletons ))
6014brresi 5979 . . . . . . . . . 10 (𝑧( E ↾ Singletons )𝑦 ↔ (𝑧 ∈ Singletons ∧ 𝑧 E 𝑦))
61 elin 3915 . . . . . . . . . 10 (𝑧 ∈ (𝑦 ∩ Singletons ) ↔ (𝑧 ∈ 𝑦 ∧ 𝑧 ∈ Singletons ))
6259, 60, 613bitr4ri 307 . . . . . . . . 9 (𝑧 ∈ (𝑦 ∩ Singletons ) ↔ 𝑧( E ↾ Singletons )𝑦)
6314, 12, 55, 57, 62brtxpsd3 36658 . . . . . . . 8 (𝑦((V × V) ∖ ran ((V ⊗ E ) △ (( E ↾ Singletons ) ⊗ V)))𝑥 ↔ 𝑥 = (𝑦 ∩ Singletons ))
6454, 63anbi12i 640 . . . . . . 7 ((⟨𝐴, 𝐵⟩((Singleton ∘ Img) ∘ pprod( I , Singleton))𝑦 ∧ 𝑦((V × V) ∖ ran ((V ⊗ E ) △ (( E ↾ Singletons ) ⊗ V)))𝑥) ↔ (𝑦 = {(𝐴 “ {𝐵})} ∧ 𝑥 = (𝑦 ∩ Singletons )))
6564exbii 1881 . . . . . 6 (∃𝑦(⟨𝐴, 𝐵⟩((Singleton ∘ Img) ∘ pprod( I , Singleton))𝑦 ∧ 𝑦((V × V) ∖ ran ((V ⊗ E ) △ (( E ↾ Singletons ) ⊗ V)))𝑥) ↔ ∃𝑦(𝑦 = {(𝐴 “ {𝐵})} ∧ 𝑥 = (𝑦 ∩ Singletons )))
66 ineq1 4159 . . . . . . . 8 (𝑦 = {(𝐴 “ {𝐵})} → (𝑦 ∩ Singletons ) = ({(𝐴 “ {𝐵})} ∩ Singletons ))
6766eqeq2d 2772 . . . . . . 7 (𝑦 = {(𝐴 “ {𝐵})} → (𝑥 = (𝑦 ∩ Singletons ) ↔ 𝑥 = ({(𝐴 “ {𝐵})} ∩ Singletons )))
681, 67ceqsexv 3499 . . . . . 6 (∃𝑦(𝑦 = {(𝐴 “ {𝐵})} ∧ 𝑥 = (𝑦 ∩ Singletons )) ↔ 𝑥 = ({(𝐴 “ {𝐵})} ∩ Singletons ))
6913, 65, 683bitri 300 . . . . 5 (⟨𝐴, 𝐵⟩(((V × V) ∖ ran ((V ⊗ E ) △ (( E ↾ Singletons ) ⊗ V))) ∘ ((Singleton ∘ Img) ∘ pprod( I , Singleton)))𝑥 ↔ 𝑥 = ({(𝐴 “ {𝐵})} ∩ Singletons ))
7012, 10brco 5848 . . . . . 6 (𝑥( Bigcup ∘ Bigcup )𝐶 ↔ ∃𝑦(𝑥 Bigcup 𝑦 ∧ 𝑦 Bigcup 𝐶))
7114brbigcup 36660 . . . . . . . . 9 (𝑥 Bigcup 𝑦 ↔ ∪ 𝑥 = 𝑦)
72 eqcom 2768 . . . . . . . . 9 (∪ 𝑥 = 𝑦 ↔ 𝑦 = ∪ 𝑥)
7371, 72bitri 278 . . . . . . . 8 (𝑥 Bigcup 𝑦 ↔ 𝑦 = ∪ 𝑥)
7410brbigcup 36660 . . . . . . . . 9 (𝑦 Bigcup 𝐶 ↔ ∪ 𝑦 = 𝐶)
75 eqcom 2768 . . . . . . . . 9 (∪ 𝑦 = 𝐶 ↔ 𝐶 = ∪ 𝑦)
7674, 75bitri 278 . . . . . . . 8 (𝑦 Bigcup 𝐶 ↔ 𝐶 = ∪ 𝑦)
7773, 76anbi12i 640 . . . . . . 7 ((𝑥 Bigcup 𝑦 ∧ 𝑦 Bigcup 𝐶) ↔ (𝑦 = ∪ 𝑥 ∧ 𝐶 = ∪ 𝑦))
7877exbii 1881 . . . . . 6 (∃𝑦(𝑥 Bigcup 𝑦 ∧ 𝑦 Bigcup 𝐶) ↔ ∃𝑦(𝑦 = ∪ 𝑥 ∧ 𝐶 = ∪ 𝑦))
79 vuniex 7756 . . . . . . 7 ∪ 𝑥 ∈ V
80 unieq 4878 . . . . . . . 8 (𝑦 = ∪ 𝑥 → ∪ 𝑦 = ∪ ∪ 𝑥)
8180eqeq2d 2772 . . . . . . 7 (𝑦 = ∪ 𝑥 → (𝐶 = ∪ 𝑦 ↔ 𝐶 = ∪ ∪ 𝑥))
8279, 81ceqsexv 3499 . . . . . 6 (∃𝑦(𝑦 = ∪ 𝑥 ∧ 𝐶 = ∪ 𝑦) ↔ 𝐶 = ∪ ∪ 𝑥)
8370, 78, 823bitri 300 . . . . 5 (𝑥( Bigcup ∘ Bigcup )𝐶 ↔ 𝐶 = ∪ ∪ 𝑥)
8469, 83anbi12i 640 . . . 4 ((⟨𝐴, 𝐵⟩(((V × V) ∖ ran ((V ⊗ E ) △ (( E ↾ Singletons ) ⊗ V))) ∘ ((Singleton ∘ Img) ∘ pprod( I , Singleton)))𝑥 ∧ 𝑥( Bigcup ∘ Bigcup )𝐶) ↔ (𝑥 = ({(𝐴 “ {𝐵})} ∩ Singletons ) ∧ 𝐶 = ∪ ∪ 𝑥))
8584exbii 1881 . . 3 (∃𝑥(⟨𝐴, 𝐵⟩(((V × V) ∖ ran ((V ⊗ E ) △ (( E ↾ Singletons ) ⊗ V))) ∘ ((Singleton ∘ Img) ∘ pprod( I , Singleton)))𝑥 ∧ 𝑥( Bigcup ∘ Bigcup )𝐶) ↔ ∃𝑥(𝑥 = ({(𝐴 “ {𝐵})} ∩ Singletons ) ∧ 𝐶 = ∪ ∪ 𝑥))
868, 11, 853bitri 300 . 2 (⟨𝐴, 𝐵⟩Apply𝐶 ↔ ∃𝑥(𝑥 = ({(𝐴 “ {𝐵})} ∩ Singletons ) ∧ 𝐶 = ∪ ∪ 𝑥))
87 dffv5 36686 . . 3 (𝐴‘𝐵) = ∪ ∪ ({(𝐴 “ {𝐵})} ∩ Singletons )
8887eqeq2i 2774 . 2 (𝐶 = (𝐴‘𝐵) ↔ 𝐶 = ∪ ∪ ({(𝐴 “ {𝐵})} ∩ Singletons ))
896, 86, 883bitr4i 306 1 (⟨𝐴, 𝐵⟩Apply𝐶 ↔ 𝐶 = (𝐴‘𝐵))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:   ↔ wb 209   ∧ wa 401   ∧ w3a 1103   = wceq 1570  ∃wex 1812   ∈ wcel 2145  Vcvv 3451   ∖ cdif 3896   ∩ cin 3898   △ csymdif 4198  {csn 4584  ⟨cop 4590  ∪ cuni 4867   class class class wbr 5103   I cid 5545   E cep 5550   × cxp 5649  ran crn 5652   ↾ cres 5653   “ cima 5654   ∘ ccom 5655  ‘cfv 6538   ⊗ ctxp 36592  pprodcpprod 36593   Bigcup cbigcup 36596  Singletoncsingle 36600   Singletons csingles 36601  Imgcimg 36604  Applycapply 36607
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2213  ax-ext 2733  ax-sep 5249  ax-nul 5260  ax-pow 5327  ax-pr 5391  ax-un 7751
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2565  df-eu 2595  df-clab 2740  df-cleq 2753  df-clel 2836  df-nfc 2910  df-ne 2957  df-ral 3078  df-rex 3088  df-rab 3414  df-v 3453  df-dif 3902  df-un 3904  df-in 3906  df-ss 3916  df-symdif 4199  df-nul 4280  df-if 4483  df-pw 4559  df-sn 4585  df-pr 4587  df-op 4591  df-uni 4868  df-br 5104  df-opab 5168  df-mpt 5187  df-id 5546  df-eprel 5551  df-xp 5657  df-rel 5658  df-cnv 5659  df-co 5660  df-dm 5661  df-rn 5662  df-res 5663  df-ima 5664  df-iota 6494  df-fun 6540  df-fn 6541  df-f 6542  df-fo 6544  df-fv 6546  df-1st 8001  df-2nd 8002  df-txp 36616  df-pprod 36617  df-bigcup 36620  df-singleton 36624  df-singles 36625  df-image 36626  df-cart 36627  df-img 36628  df-apply 36635
This theorem is used by:  dfrecs2  36714  dfrdg4  36715
  Copyright terms: Public domain W3C validator