Metamath Proof Explorer


Theorem ressval3d

Description: Value of structure restriction, deduction version. (Contributed by AV, 14-Mar-2020) (Revised by AV, 3-Jul-2022) (Proof shortened by AV, 17-Oct-2024)

Ref Expression
Hypotheses ressval3d.r 𝑅 = ( 𝑆s 𝐴 )
ressval3d.b 𝐵 = ( Base ‘ 𝑆 )
ressval3d.e 𝐸 = ( Base ‘ ndx )
ressval3d.s ( 𝜑𝑆𝑉 )
ressval3d.f ( 𝜑 → Fun 𝑆 )
ressval3d.d ( 𝜑𝐸 ∈ dom 𝑆 )
ressval3d.u ( 𝜑𝐴𝐵 )
Assertion ressval3d ( 𝜑𝑅 = ( 𝑆 sSet ⟨ 𝐸 , 𝐴 ⟩ ) )

Proof

Step Hyp Ref Expression
1 ressval3d.r 𝑅 = ( 𝑆s 𝐴 )
2 ressval3d.b 𝐵 = ( Base ‘ 𝑆 )
3 ressval3d.e 𝐸 = ( Base ‘ ndx )
4 ressval3d.s ( 𝜑𝑆𝑉 )
5 ressval3d.f ( 𝜑 → Fun 𝑆 )
6 ressval3d.d ( 𝜑𝐸 ∈ dom 𝑆 )
7 ressval3d.u ( 𝜑𝐴𝐵 )
8 sspss ( 𝐴𝐵 ↔ ( 𝐴𝐵𝐴 = 𝐵 ) )
9 dfpss3 ( 𝐴𝐵 ↔ ( 𝐴𝐵 ∧ ¬ 𝐵𝐴 ) )
10 9 orbi1i ( ( 𝐴𝐵𝐴 = 𝐵 ) ↔ ( ( 𝐴𝐵 ∧ ¬ 𝐵𝐴 ) ∨ 𝐴 = 𝐵 ) )
11 8 10 bitri ( 𝐴𝐵 ↔ ( ( 𝐴𝐵 ∧ ¬ 𝐵𝐴 ) ∨ 𝐴 = 𝐵 ) )
12 simplr ( ( ( 𝐴𝐵 ∧ ¬ 𝐵𝐴 ) ∧ 𝜑 ) → ¬ 𝐵𝐴 )
13 4 adantl ( ( ( 𝐴𝐵 ∧ ¬ 𝐵𝐴 ) ∧ 𝜑 ) → 𝑆𝑉 )
14 simpl ( ( 𝐴𝐵 ∧ ¬ 𝐵𝐴 ) → 𝐴𝐵 )
15 2 fvexi 𝐵 ∈ V
16 15 a1i ( 𝜑𝐵 ∈ V )
17 ssexg ( ( 𝐴𝐵𝐵 ∈ V ) → 𝐴 ∈ V )
18 14 16 17 syl2an ( ( ( 𝐴𝐵 ∧ ¬ 𝐵𝐴 ) ∧ 𝜑 ) → 𝐴 ∈ V )
19 1 2 ressval2 ( ( ¬ 𝐵𝐴𝑆𝑉𝐴 ∈ V ) → 𝑅 = ( 𝑆 sSet ⟨ ( Base ‘ ndx ) , ( 𝐴𝐵 ) ⟩ ) )
20 12 13 18 19 syl3anc ( ( ( 𝐴𝐵 ∧ ¬ 𝐵𝐴 ) ∧ 𝜑 ) → 𝑅 = ( 𝑆 sSet ⟨ ( Base ‘ ndx ) , ( 𝐴𝐵 ) ⟩ ) )
21 3 a1i ( ( ( 𝐴𝐵 ∧ ¬ 𝐵𝐴 ) ∧ 𝜑 ) → 𝐸 = ( Base ‘ ndx ) )
22 df-ss ( 𝐴𝐵 ↔ ( 𝐴𝐵 ) = 𝐴 )
23 22 biimpi ( 𝐴𝐵 → ( 𝐴𝐵 ) = 𝐴 )
24 23 eqcomd ( 𝐴𝐵𝐴 = ( 𝐴𝐵 ) )
25 24 adantr ( ( 𝐴𝐵 ∧ ¬ 𝐵𝐴 ) → 𝐴 = ( 𝐴𝐵 ) )
26 25 adantr ( ( ( 𝐴𝐵 ∧ ¬ 𝐵𝐴 ) ∧ 𝜑 ) → 𝐴 = ( 𝐴𝐵 ) )
27 21 26 opeq12d ( ( ( 𝐴𝐵 ∧ ¬ 𝐵𝐴 ) ∧ 𝜑 ) → ⟨ 𝐸 , 𝐴 ⟩ = ⟨ ( Base ‘ ndx ) , ( 𝐴𝐵 ) ⟩ )
28 27 eqcomd ( ( ( 𝐴𝐵 ∧ ¬ 𝐵𝐴 ) ∧ 𝜑 ) → ⟨ ( Base ‘ ndx ) , ( 𝐴𝐵 ) ⟩ = ⟨ 𝐸 , 𝐴 ⟩ )
29 28 oveq2d ( ( ( 𝐴𝐵 ∧ ¬ 𝐵𝐴 ) ∧ 𝜑 ) → ( 𝑆 sSet ⟨ ( Base ‘ ndx ) , ( 𝐴𝐵 ) ⟩ ) = ( 𝑆 sSet ⟨ 𝐸 , 𝐴 ⟩ ) )
30 20 29 eqtrd ( ( ( 𝐴𝐵 ∧ ¬ 𝐵𝐴 ) ∧ 𝜑 ) → 𝑅 = ( 𝑆 sSet ⟨ 𝐸 , 𝐴 ⟩ ) )
31 30 ex ( ( 𝐴𝐵 ∧ ¬ 𝐵𝐴 ) → ( 𝜑𝑅 = ( 𝑆 sSet ⟨ 𝐸 , 𝐴 ⟩ ) ) )
32 1 a1i ( ( 𝐴 = 𝐵𝜑 ) → 𝑅 = ( 𝑆s 𝐴 ) )
33 oveq2 ( 𝐴 = 𝐵 → ( 𝑆s 𝐴 ) = ( 𝑆s 𝐵 ) )
34 33 adantr ( ( 𝐴 = 𝐵𝜑 ) → ( 𝑆s 𝐴 ) = ( 𝑆s 𝐵 ) )
35 4 adantl ( ( 𝐴 = 𝐵𝜑 ) → 𝑆𝑉 )
36 2 ressid ( 𝑆𝑉 → ( 𝑆s 𝐵 ) = 𝑆 )
37 35 36 syl ( ( 𝐴 = 𝐵𝜑 ) → ( 𝑆s 𝐵 ) = 𝑆 )
38 32 34 37 3eqtrd ( ( 𝐴 = 𝐵𝜑 ) → 𝑅 = 𝑆 )
39 baseid Base = Slot ( Base ‘ ndx )
40 3 6 eqeltrrid ( 𝜑 → ( Base ‘ ndx ) ∈ dom 𝑆 )
41 39 4 5 40 setsidvald ( 𝜑𝑆 = ( 𝑆 sSet ⟨ ( Base ‘ ndx ) , ( Base ‘ 𝑆 ) ⟩ ) )
42 41 adantl ( ( 𝐴 = 𝐵𝜑 ) → 𝑆 = ( 𝑆 sSet ⟨ ( Base ‘ ndx ) , ( Base ‘ 𝑆 ) ⟩ ) )
43 3 a1i ( ( 𝐴 = 𝐵𝜑 ) → 𝐸 = ( Base ‘ ndx ) )
44 simpl ( ( 𝐴 = 𝐵𝜑 ) → 𝐴 = 𝐵 )
45 44 2 eqtrdi ( ( 𝐴 = 𝐵𝜑 ) → 𝐴 = ( Base ‘ 𝑆 ) )
46 43 45 opeq12d ( ( 𝐴 = 𝐵𝜑 ) → ⟨ 𝐸 , 𝐴 ⟩ = ⟨ ( Base ‘ ndx ) , ( Base ‘ 𝑆 ) ⟩ )
47 46 eqcomd ( ( 𝐴 = 𝐵𝜑 ) → ⟨ ( Base ‘ ndx ) , ( Base ‘ 𝑆 ) ⟩ = ⟨ 𝐸 , 𝐴 ⟩ )
48 47 oveq2d ( ( 𝐴 = 𝐵𝜑 ) → ( 𝑆 sSet ⟨ ( Base ‘ ndx ) , ( Base ‘ 𝑆 ) ⟩ ) = ( 𝑆 sSet ⟨ 𝐸 , 𝐴 ⟩ ) )
49 38 42 48 3eqtrd ( ( 𝐴 = 𝐵𝜑 ) → 𝑅 = ( 𝑆 sSet ⟨ 𝐸 , 𝐴 ⟩ ) )
50 49 ex ( 𝐴 = 𝐵 → ( 𝜑𝑅 = ( 𝑆 sSet ⟨ 𝐸 , 𝐴 ⟩ ) ) )
51 31 50 jaoi ( ( ( 𝐴𝐵 ∧ ¬ 𝐵𝐴 ) ∨ 𝐴 = 𝐵 ) → ( 𝜑𝑅 = ( 𝑆 sSet ⟨ 𝐸 , 𝐴 ⟩ ) ) )
52 11 51 sylbi ( 𝐴𝐵 → ( 𝜑𝑅 = ( 𝑆 sSet ⟨ 𝐸 , 𝐴 ⟩ ) ) )
53 7 52 mpcom ( 𝜑𝑅 = ( 𝑆 sSet ⟨ 𝐸 , 𝐴 ⟩ ) )