Metamath Proof Explorer


Theorem mptpreima

Description: The preimage of a function in maps-to notation. (Contributed by Stefan O'Rear, 25-Jan-2015)

Ref Expression
Hypothesis dmmpt.1 𝐹 = ( 𝑥𝐴𝐵 )
Assertion mptpreima ( 𝐹𝐶 ) = { 𝑥𝐴𝐵𝐶 }

Proof

Step Hyp Ref Expression
1 dmmpt.1 𝐹 = ( 𝑥𝐴𝐵 )
2 df-mpt ( 𝑥𝐴𝐵 ) = { ⟨ 𝑥 , 𝑦 ⟩ ∣ ( 𝑥𝐴𝑦 = 𝐵 ) }
3 1 2 eqtri 𝐹 = { ⟨ 𝑥 , 𝑦 ⟩ ∣ ( 𝑥𝐴𝑦 = 𝐵 ) }
4 3 cnveqi 𝐹 = { ⟨ 𝑥 , 𝑦 ⟩ ∣ ( 𝑥𝐴𝑦 = 𝐵 ) }
5 cnvopab { ⟨ 𝑥 , 𝑦 ⟩ ∣ ( 𝑥𝐴𝑦 = 𝐵 ) } = { ⟨ 𝑦 , 𝑥 ⟩ ∣ ( 𝑥𝐴𝑦 = 𝐵 ) }
6 4 5 eqtri 𝐹 = { ⟨ 𝑦 , 𝑥 ⟩ ∣ ( 𝑥𝐴𝑦 = 𝐵 ) }
7 6 imaeq1i ( 𝐹𝐶 ) = ( { ⟨ 𝑦 , 𝑥 ⟩ ∣ ( 𝑥𝐴𝑦 = 𝐵 ) } “ 𝐶 )
8 df-ima ( { ⟨ 𝑦 , 𝑥 ⟩ ∣ ( 𝑥𝐴𝑦 = 𝐵 ) } “ 𝐶 ) = ran ( { ⟨ 𝑦 , 𝑥 ⟩ ∣ ( 𝑥𝐴𝑦 = 𝐵 ) } ↾ 𝐶 )
9 resopab ( { ⟨ 𝑦 , 𝑥 ⟩ ∣ ( 𝑥𝐴𝑦 = 𝐵 ) } ↾ 𝐶 ) = { ⟨ 𝑦 , 𝑥 ⟩ ∣ ( 𝑦𝐶 ∧ ( 𝑥𝐴𝑦 = 𝐵 ) ) }
10 9 rneqi ran ( { ⟨ 𝑦 , 𝑥 ⟩ ∣ ( 𝑥𝐴𝑦 = 𝐵 ) } ↾ 𝐶 ) = ran { ⟨ 𝑦 , 𝑥 ⟩ ∣ ( 𝑦𝐶 ∧ ( 𝑥𝐴𝑦 = 𝐵 ) ) }
11 ancom ( ( 𝑦𝐶 ∧ ( 𝑥𝐴𝑦 = 𝐵 ) ) ↔ ( ( 𝑥𝐴𝑦 = 𝐵 ) ∧ 𝑦𝐶 ) )
12 anass ( ( ( 𝑥𝐴𝑦 = 𝐵 ) ∧ 𝑦𝐶 ) ↔ ( 𝑥𝐴 ∧ ( 𝑦 = 𝐵𝑦𝐶 ) ) )
13 11 12 bitri ( ( 𝑦𝐶 ∧ ( 𝑥𝐴𝑦 = 𝐵 ) ) ↔ ( 𝑥𝐴 ∧ ( 𝑦 = 𝐵𝑦𝐶 ) ) )
14 13 exbii ( ∃ 𝑦 ( 𝑦𝐶 ∧ ( 𝑥𝐴𝑦 = 𝐵 ) ) ↔ ∃ 𝑦 ( 𝑥𝐴 ∧ ( 𝑦 = 𝐵𝑦𝐶 ) ) )
15 19.42v ( ∃ 𝑦 ( 𝑥𝐴 ∧ ( 𝑦 = 𝐵𝑦𝐶 ) ) ↔ ( 𝑥𝐴 ∧ ∃ 𝑦 ( 𝑦 = 𝐵𝑦𝐶 ) ) )
16 dfclel ( 𝐵𝐶 ↔ ∃ 𝑦 ( 𝑦 = 𝐵𝑦𝐶 ) )
17 16 bicomi ( ∃ 𝑦 ( 𝑦 = 𝐵𝑦𝐶 ) ↔ 𝐵𝐶 )
18 17 anbi2i ( ( 𝑥𝐴 ∧ ∃ 𝑦 ( 𝑦 = 𝐵𝑦𝐶 ) ) ↔ ( 𝑥𝐴𝐵𝐶 ) )
19 15 18 bitri ( ∃ 𝑦 ( 𝑥𝐴 ∧ ( 𝑦 = 𝐵𝑦𝐶 ) ) ↔ ( 𝑥𝐴𝐵𝐶 ) )
20 14 19 bitri ( ∃ 𝑦 ( 𝑦𝐶 ∧ ( 𝑥𝐴𝑦 = 𝐵 ) ) ↔ ( 𝑥𝐴𝐵𝐶 ) )
21 20 abbii { 𝑥 ∣ ∃ 𝑦 ( 𝑦𝐶 ∧ ( 𝑥𝐴𝑦 = 𝐵 ) ) } = { 𝑥 ∣ ( 𝑥𝐴𝐵𝐶 ) }
22 rnopab ran { ⟨ 𝑦 , 𝑥 ⟩ ∣ ( 𝑦𝐶 ∧ ( 𝑥𝐴𝑦 = 𝐵 ) ) } = { 𝑥 ∣ ∃ 𝑦 ( 𝑦𝐶 ∧ ( 𝑥𝐴𝑦 = 𝐵 ) ) }
23 df-rab { 𝑥𝐴𝐵𝐶 } = { 𝑥 ∣ ( 𝑥𝐴𝐵𝐶 ) }
24 21 22 23 3eqtr4i ran { ⟨ 𝑦 , 𝑥 ⟩ ∣ ( 𝑦𝐶 ∧ ( 𝑥𝐴𝑦 = 𝐵 ) ) } = { 𝑥𝐴𝐵𝐶 }
25 10 24 eqtri ran ( { ⟨ 𝑦 , 𝑥 ⟩ ∣ ( 𝑥𝐴𝑦 = 𝐵 ) } ↾ 𝐶 ) = { 𝑥𝐴𝐵𝐶 }
26 8 25 eqtri ( { ⟨ 𝑦 , 𝑥 ⟩ ∣ ( 𝑥𝐴𝑦 = 𝐵 ) } “ 𝐶 ) = { 𝑥𝐴𝐵𝐶 }
27 7 26 eqtri ( 𝐹𝐶 ) = { 𝑥𝐴𝐵𝐶 }