Metamath Proof Explorer


Theorem caragendifcl

Description: The Caratheodory's construction is closed under the complement operation. Second part of Step (b) in the proof of Theorem 113C of Fremlin1 p. 19. (Contributed by Glauco Siliprandi, 17-Aug-2020)

Ref Expression
Hypotheses caragendifcl.o ( 𝜑𝑂 ∈ OutMeas )
caragendifcl.s 𝑆 = ( CaraGen ‘ 𝑂 )
caragendifcl.e ( 𝜑𝐸𝑆 )
Assertion caragendifcl ( 𝜑 → ( 𝑆𝐸 ) ∈ 𝑆 )

Proof

Step Hyp Ref Expression
1 caragendifcl.o ( 𝜑𝑂 ∈ OutMeas )
2 caragendifcl.s 𝑆 = ( CaraGen ‘ 𝑂 )
3 caragendifcl.e ( 𝜑𝐸𝑆 )
4 eqid dom 𝑂 = dom 𝑂
5 2 caragenss ( 𝑂 ∈ OutMeas → 𝑆 ⊆ dom 𝑂 )
6 1 5 syl ( 𝜑𝑆 ⊆ dom 𝑂 )
7 6 unissd ( 𝜑 𝑆 dom 𝑂 )
8 7 ssdifssd ( 𝜑 → ( 𝑆𝐸 ) ⊆ dom 𝑂 )
9 2 fvexi 𝑆 ∈ V
10 9 uniex 𝑆 ∈ V
11 difexg ( 𝑆 ∈ V → ( 𝑆𝐸 ) ∈ V )
12 10 11 ax-mp ( 𝑆𝐸 ) ∈ V
13 12 a1i ( 𝜑 → ( 𝑆𝐸 ) ∈ V )
14 elpwg ( ( 𝑆𝐸 ) ∈ V → ( ( 𝑆𝐸 ) ∈ 𝒫 dom 𝑂 ↔ ( 𝑆𝐸 ) ⊆ dom 𝑂 ) )
15 13 14 syl ( 𝜑 → ( ( 𝑆𝐸 ) ∈ 𝒫 dom 𝑂 ↔ ( 𝑆𝐸 ) ⊆ dom 𝑂 ) )
16 8 15 mpbird ( 𝜑 → ( 𝑆𝐸 ) ∈ 𝒫 dom 𝑂 )
17 elpwi ( 𝑎 ∈ 𝒫 dom 𝑂𝑎 dom 𝑂 )
18 17 adantl ( ( 𝜑𝑎 ∈ 𝒫 dom 𝑂 ) → 𝑎 dom 𝑂 )
19 1 2 caragenuni ( 𝜑 𝑆 = dom 𝑂 )
20 19 eqcomd ( 𝜑 dom 𝑂 = 𝑆 )
21 20 adantr ( ( 𝜑𝑎 ∈ 𝒫 dom 𝑂 ) → dom 𝑂 = 𝑆 )
22 18 21 sseqtrd ( ( 𝜑𝑎 ∈ 𝒫 dom 𝑂 ) → 𝑎 𝑆 )
23 difin2 ( 𝑎 𝑆 → ( 𝑎𝐸 ) = ( ( 𝑆𝐸 ) ∩ 𝑎 ) )
24 22 23 syl ( ( 𝜑𝑎 ∈ 𝒫 dom 𝑂 ) → ( 𝑎𝐸 ) = ( ( 𝑆𝐸 ) ∩ 𝑎 ) )
25 incom ( ( 𝑆𝐸 ) ∩ 𝑎 ) = ( 𝑎 ∩ ( 𝑆𝐸 ) )
26 25 a1i ( ( 𝜑𝑎 ∈ 𝒫 dom 𝑂 ) → ( ( 𝑆𝐸 ) ∩ 𝑎 ) = ( 𝑎 ∩ ( 𝑆𝐸 ) ) )
27 24 26 eqtr2d ( ( 𝜑𝑎 ∈ 𝒫 dom 𝑂 ) → ( 𝑎 ∩ ( 𝑆𝐸 ) ) = ( 𝑎𝐸 ) )
28 27 fveq2d ( ( 𝜑𝑎 ∈ 𝒫 dom 𝑂 ) → ( 𝑂 ‘ ( 𝑎 ∩ ( 𝑆𝐸 ) ) ) = ( 𝑂 ‘ ( 𝑎𝐸 ) ) )
29 22 ssdifd ( ( 𝜑𝑎 ∈ 𝒫 dom 𝑂 ) → ( 𝑎𝐸 ) ⊆ ( 𝑆𝐸 ) )
30 sscon ( ( 𝑎𝐸 ) ⊆ ( 𝑆𝐸 ) → ( 𝑎 ∖ ( 𝑆𝐸 ) ) ⊆ ( 𝑎 ∖ ( 𝑎𝐸 ) ) )
31 29 30 syl ( ( 𝜑𝑎 ∈ 𝒫 dom 𝑂 ) → ( 𝑎 ∖ ( 𝑆𝐸 ) ) ⊆ ( 𝑎 ∖ ( 𝑎𝐸 ) ) )
32 dfin4 ( 𝑎𝐸 ) = ( 𝑎 ∖ ( 𝑎𝐸 ) )
33 32 a1i ( ( 𝜑𝑎 ∈ 𝒫 dom 𝑂 ) → ( 𝑎𝐸 ) = ( 𝑎 ∖ ( 𝑎𝐸 ) ) )
34 eqimss2 ( ( 𝑎𝐸 ) = ( 𝑎 ∖ ( 𝑎𝐸 ) ) → ( 𝑎 ∖ ( 𝑎𝐸 ) ) ⊆ ( 𝑎𝐸 ) )
35 33 34 syl ( ( 𝜑𝑎 ∈ 𝒫 dom 𝑂 ) → ( 𝑎 ∖ ( 𝑎𝐸 ) ) ⊆ ( 𝑎𝐸 ) )
36 31 35 sstrd ( ( 𝜑𝑎 ∈ 𝒫 dom 𝑂 ) → ( 𝑎 ∖ ( 𝑆𝐸 ) ) ⊆ ( 𝑎𝐸 ) )
37 elinel1 ( 𝑥 ∈ ( 𝑎𝐸 ) → 𝑥𝑎 )
38 elinel2 ( 𝑥 ∈ ( 𝑎𝐸 ) → 𝑥𝐸 )
39 elndif ( 𝑥𝐸 → ¬ 𝑥 ∈ ( 𝑆𝐸 ) )
40 38 39 syl ( 𝑥 ∈ ( 𝑎𝐸 ) → ¬ 𝑥 ∈ ( 𝑆𝐸 ) )
41 37 40 eldifd ( 𝑥 ∈ ( 𝑎𝐸 ) → 𝑥 ∈ ( 𝑎 ∖ ( 𝑆𝐸 ) ) )
42 41 ssriv ( 𝑎𝐸 ) ⊆ ( 𝑎 ∖ ( 𝑆𝐸 ) )
43 42 a1i ( ( 𝜑𝑎 ∈ 𝒫 dom 𝑂 ) → ( 𝑎𝐸 ) ⊆ ( 𝑎 ∖ ( 𝑆𝐸 ) ) )
44 36 43 eqssd ( ( 𝜑𝑎 ∈ 𝒫 dom 𝑂 ) → ( 𝑎 ∖ ( 𝑆𝐸 ) ) = ( 𝑎𝐸 ) )
45 44 fveq2d ( ( 𝜑𝑎 ∈ 𝒫 dom 𝑂 ) → ( 𝑂 ‘ ( 𝑎 ∖ ( 𝑆𝐸 ) ) ) = ( 𝑂 ‘ ( 𝑎𝐸 ) ) )
46 28 45 oveq12d ( ( 𝜑𝑎 ∈ 𝒫 dom 𝑂 ) → ( ( 𝑂 ‘ ( 𝑎 ∩ ( 𝑆𝐸 ) ) ) +𝑒 ( 𝑂 ‘ ( 𝑎 ∖ ( 𝑆𝐸 ) ) ) ) = ( ( 𝑂 ‘ ( 𝑎𝐸 ) ) +𝑒 ( 𝑂 ‘ ( 𝑎𝐸 ) ) ) )
47 iccssxr ( 0 [,] +∞ ) ⊆ ℝ*
48 1 adantr ( ( 𝜑𝑎 ∈ 𝒫 dom 𝑂 ) → 𝑂 ∈ OutMeas )
49 18 ssdifssd ( ( 𝜑𝑎 ∈ 𝒫 dom 𝑂 ) → ( 𝑎𝐸 ) ⊆ dom 𝑂 )
50 48 4 49 omecl ( ( 𝜑𝑎 ∈ 𝒫 dom 𝑂 ) → ( 𝑂 ‘ ( 𝑎𝐸 ) ) ∈ ( 0 [,] +∞ ) )
51 47 50 sselid ( ( 𝜑𝑎 ∈ 𝒫 dom 𝑂 ) → ( 𝑂 ‘ ( 𝑎𝐸 ) ) ∈ ℝ* )
52 ssinss1 ( 𝑎 dom 𝑂 → ( 𝑎𝐸 ) ⊆ dom 𝑂 )
53 17 52 syl ( 𝑎 ∈ 𝒫 dom 𝑂 → ( 𝑎𝐸 ) ⊆ dom 𝑂 )
54 53 adantl ( ( 𝜑𝑎 ∈ 𝒫 dom 𝑂 ) → ( 𝑎𝐸 ) ⊆ dom 𝑂 )
55 48 4 54 omecl ( ( 𝜑𝑎 ∈ 𝒫 dom 𝑂 ) → ( 𝑂 ‘ ( 𝑎𝐸 ) ) ∈ ( 0 [,] +∞ ) )
56 47 55 sselid ( ( 𝜑𝑎 ∈ 𝒫 dom 𝑂 ) → ( 𝑂 ‘ ( 𝑎𝐸 ) ) ∈ ℝ* )
57 51 56 xaddcomd ( ( 𝜑𝑎 ∈ 𝒫 dom 𝑂 ) → ( ( 𝑂 ‘ ( 𝑎𝐸 ) ) +𝑒 ( 𝑂 ‘ ( 𝑎𝐸 ) ) ) = ( ( 𝑂 ‘ ( 𝑎𝐸 ) ) +𝑒 ( 𝑂 ‘ ( 𝑎𝐸 ) ) ) )
58 1 2 caragenel ( 𝜑 → ( 𝐸𝑆 ↔ ( 𝐸 ∈ 𝒫 dom 𝑂 ∧ ∀ 𝑎 ∈ 𝒫 dom 𝑂 ( ( 𝑂 ‘ ( 𝑎𝐸 ) ) +𝑒 ( 𝑂 ‘ ( 𝑎𝐸 ) ) ) = ( 𝑂𝑎 ) ) ) )
59 3 58 mpbid ( 𝜑 → ( 𝐸 ∈ 𝒫 dom 𝑂 ∧ ∀ 𝑎 ∈ 𝒫 dom 𝑂 ( ( 𝑂 ‘ ( 𝑎𝐸 ) ) +𝑒 ( 𝑂 ‘ ( 𝑎𝐸 ) ) ) = ( 𝑂𝑎 ) ) )
60 59 simprd ( 𝜑 → ∀ 𝑎 ∈ 𝒫 dom 𝑂 ( ( 𝑂 ‘ ( 𝑎𝐸 ) ) +𝑒 ( 𝑂 ‘ ( 𝑎𝐸 ) ) ) = ( 𝑂𝑎 ) )
61 60 r19.21bi ( ( 𝜑𝑎 ∈ 𝒫 dom 𝑂 ) → ( ( 𝑂 ‘ ( 𝑎𝐸 ) ) +𝑒 ( 𝑂 ‘ ( 𝑎𝐸 ) ) ) = ( 𝑂𝑎 ) )
62 46 57 61 3eqtrd ( ( 𝜑𝑎 ∈ 𝒫 dom 𝑂 ) → ( ( 𝑂 ‘ ( 𝑎 ∩ ( 𝑆𝐸 ) ) ) +𝑒 ( 𝑂 ‘ ( 𝑎 ∖ ( 𝑆𝐸 ) ) ) ) = ( 𝑂𝑎 ) )
63 1 4 2 16 62 carageneld ( 𝜑 → ( 𝑆𝐸 ) ∈ 𝑆 )