Metamath Proof Explorer


Theorem spansncvi

Description: Hilbert space has the covering property (using spans of singletons to represent atoms). Exercise 5 of Kalmbach p. 153. (Contributed by NM, 7-Jun-2004) (New usage is discouraged.)

Ref Expression
Hypotheses spansncv.1 𝐴C
spansncv.2 𝐵C
spansncv.3 𝐶 ∈ ℋ
Assertion spansncvi ( ( 𝐴𝐵𝐵 ⊆ ( 𝐴 ( span ‘ { 𝐶 } ) ) ) → 𝐵 = ( 𝐴 ( span ‘ { 𝐶 } ) ) )

Proof

Step Hyp Ref Expression
1 spansncv.1 𝐴C
2 spansncv.2 𝐵C
3 spansncv.3 𝐶 ∈ ℋ
4 simpr ( ( 𝐴𝐵𝐵 ⊆ ( 𝐴 ( span ‘ { 𝐶 } ) ) ) → 𝐵 ⊆ ( 𝐴 ( span ‘ { 𝐶 } ) ) )
5 pssss ( 𝐴𝐵𝐴𝐵 )
6 5 adantr ( ( 𝐴𝐵𝐵 ⊆ ( 𝐴 ( span ‘ { 𝐶 } ) ) ) → 𝐴𝐵 )
7 pssnel ( 𝐴𝐵 → ∃ 𝑥 ( 𝑥𝐵 ∧ ¬ 𝑥𝐴 ) )
8 ssel2 ( ( 𝐵 ⊆ ( 𝐴 ( span ‘ { 𝐶 } ) ) ∧ 𝑥𝐵 ) → 𝑥 ∈ ( 𝐴 ( span ‘ { 𝐶 } ) ) )
9 1 3 spansnji ( 𝐴 + ( span ‘ { 𝐶 } ) ) = ( 𝐴 ( span ‘ { 𝐶 } ) )
10 9 eleq2i ( 𝑥 ∈ ( 𝐴 + ( span ‘ { 𝐶 } ) ) ↔ 𝑥 ∈ ( 𝐴 ( span ‘ { 𝐶 } ) ) )
11 3 spansnchi ( span ‘ { 𝐶 } ) ∈ C
12 1 11 chseli ( 𝑥 ∈ ( 𝐴 + ( span ‘ { 𝐶 } ) ) ↔ ∃ 𝑦𝐴𝑧 ∈ ( span ‘ { 𝐶 } ) 𝑥 = ( 𝑦 + 𝑧 ) )
13 10 12 bitr3i ( 𝑥 ∈ ( 𝐴 ( span ‘ { 𝐶 } ) ) ↔ ∃ 𝑦𝐴𝑧 ∈ ( span ‘ { 𝐶 } ) 𝑥 = ( 𝑦 + 𝑧 ) )
14 eleq1 ( 𝑥 = ( 𝑦 + 𝑧 ) → ( 𝑥𝐵 ↔ ( 𝑦 + 𝑧 ) ∈ 𝐵 ) )
15 14 biimpac ( ( 𝑥𝐵𝑥 = ( 𝑦 + 𝑧 ) ) → ( 𝑦 + 𝑧 ) ∈ 𝐵 )
16 5 sselda ( ( 𝐴𝐵𝑦𝐴 ) → 𝑦𝐵 )
17 2 chshii 𝐵S
18 shsubcl ( ( 𝐵S ∧ ( 𝑦 + 𝑧 ) ∈ 𝐵𝑦𝐵 ) → ( ( 𝑦 + 𝑧 ) − 𝑦 ) ∈ 𝐵 )
19 17 18 mp3an1 ( ( ( 𝑦 + 𝑧 ) ∈ 𝐵𝑦𝐵 ) → ( ( 𝑦 + 𝑧 ) − 𝑦 ) ∈ 𝐵 )
20 15 16 19 syl2an ( ( ( 𝑥𝐵𝑥 = ( 𝑦 + 𝑧 ) ) ∧ ( 𝐴𝐵𝑦𝐴 ) ) → ( ( 𝑦 + 𝑧 ) − 𝑦 ) ∈ 𝐵 )
21 20 exp43 ( 𝑥𝐵 → ( 𝑥 = ( 𝑦 + 𝑧 ) → ( 𝐴𝐵 → ( 𝑦𝐴 → ( ( 𝑦 + 𝑧 ) − 𝑦 ) ∈ 𝐵 ) ) ) )
22 21 com14 ( 𝑦𝐴 → ( 𝑥 = ( 𝑦 + 𝑧 ) → ( 𝐴𝐵 → ( 𝑥𝐵 → ( ( 𝑦 + 𝑧 ) − 𝑦 ) ∈ 𝐵 ) ) ) )
23 22 imp45 ( ( 𝑦𝐴 ∧ ( 𝑥 = ( 𝑦 + 𝑧 ) ∧ ( 𝐴𝐵𝑥𝐵 ) ) ) → ( ( 𝑦 + 𝑧 ) − 𝑦 ) ∈ 𝐵 )
24 1 cheli ( 𝑦𝐴𝑦 ∈ ℋ )
25 11 cheli ( 𝑧 ∈ ( span ‘ { 𝐶 } ) → 𝑧 ∈ ℋ )
26 hvpncan2 ( ( 𝑦 ∈ ℋ ∧ 𝑧 ∈ ℋ ) → ( ( 𝑦 + 𝑧 ) − 𝑦 ) = 𝑧 )
27 24 25 26 syl2an ( ( 𝑦𝐴𝑧 ∈ ( span ‘ { 𝐶 } ) ) → ( ( 𝑦 + 𝑧 ) − 𝑦 ) = 𝑧 )
28 27 eleq1d ( ( 𝑦𝐴𝑧 ∈ ( span ‘ { 𝐶 } ) ) → ( ( ( 𝑦 + 𝑧 ) − 𝑦 ) ∈ 𝐵𝑧𝐵 ) )
29 23 28 syl5ib ( ( 𝑦𝐴𝑧 ∈ ( span ‘ { 𝐶 } ) ) → ( ( 𝑦𝐴 ∧ ( 𝑥 = ( 𝑦 + 𝑧 ) ∧ ( 𝐴𝐵𝑥𝐵 ) ) ) → 𝑧𝐵 ) )
30 29 imp ( ( ( 𝑦𝐴𝑧 ∈ ( span ‘ { 𝐶 } ) ) ∧ ( 𝑦𝐴 ∧ ( 𝑥 = ( 𝑦 + 𝑧 ) ∧ ( 𝐴𝐵𝑥𝐵 ) ) ) ) → 𝑧𝐵 )
31 30 anandis ( ( 𝑦𝐴 ∧ ( 𝑧 ∈ ( span ‘ { 𝐶 } ) ∧ ( 𝑥 = ( 𝑦 + 𝑧 ) ∧ ( 𝐴𝐵𝑥𝐵 ) ) ) ) → 𝑧𝐵 )
32 31 exp45 ( 𝑦𝐴 → ( 𝑧 ∈ ( span ‘ { 𝐶 } ) → ( 𝑥 = ( 𝑦 + 𝑧 ) → ( ( 𝐴𝐵𝑥𝐵 ) → 𝑧𝐵 ) ) ) )
33 32 imp41 ( ( ( ( 𝑦𝐴𝑧 ∈ ( span ‘ { 𝐶 } ) ) ∧ 𝑥 = ( 𝑦 + 𝑧 ) ) ∧ ( 𝐴𝐵𝑥𝐵 ) ) → 𝑧𝐵 )
34 33 adantrr ( ( ( ( 𝑦𝐴𝑧 ∈ ( span ‘ { 𝐶 } ) ) ∧ 𝑥 = ( 𝑦 + 𝑧 ) ) ∧ ( ( 𝐴𝐵𝑥𝐵 ) ∧ ¬ 𝑥𝐴 ) ) → 𝑧𝐵 )
35 oveq2 ( 𝑧 = 0 → ( 𝑦 + 𝑧 ) = ( 𝑦 + 0 ) )
36 ax-hvaddid ( 𝑦 ∈ ℋ → ( 𝑦 + 0 ) = 𝑦 )
37 24 36 syl ( 𝑦𝐴 → ( 𝑦 + 0 ) = 𝑦 )
38 35 37 sylan9eqr ( ( 𝑦𝐴𝑧 = 0 ) → ( 𝑦 + 𝑧 ) = 𝑦 )
39 38 eqeq2d ( ( 𝑦𝐴𝑧 = 0 ) → ( 𝑥 = ( 𝑦 + 𝑧 ) ↔ 𝑥 = 𝑦 ) )
40 eleq1a ( 𝑦𝐴 → ( 𝑥 = 𝑦𝑥𝐴 ) )
41 40 adantr ( ( 𝑦𝐴𝑧 = 0 ) → ( 𝑥 = 𝑦𝑥𝐴 ) )
42 39 41 sylbid ( ( 𝑦𝐴𝑧 = 0 ) → ( 𝑥 = ( 𝑦 + 𝑧 ) → 𝑥𝐴 ) )
43 42 impancom ( ( 𝑦𝐴𝑥 = ( 𝑦 + 𝑧 ) ) → ( 𝑧 = 0𝑥𝐴 ) )
44 43 necon3bd ( ( 𝑦𝐴𝑥 = ( 𝑦 + 𝑧 ) ) → ( ¬ 𝑥𝐴𝑧 ≠ 0 ) )
45 44 imp ( ( ( 𝑦𝐴𝑥 = ( 𝑦 + 𝑧 ) ) ∧ ¬ 𝑥𝐴 ) → 𝑧 ≠ 0 )
46 spansnss ( ( 𝐵S𝑧𝐵 ) → ( span ‘ { 𝑧 } ) ⊆ 𝐵 )
47 17 46 mpan ( 𝑧𝐵 → ( span ‘ { 𝑧 } ) ⊆ 𝐵 )
48 spansneleq ( ( 𝐶 ∈ ℋ ∧ 𝑧 ≠ 0 ) → ( 𝑧 ∈ ( span ‘ { 𝐶 } ) → ( span ‘ { 𝑧 } ) = ( span ‘ { 𝐶 } ) ) )
49 3 48 mpan ( 𝑧 ≠ 0 → ( 𝑧 ∈ ( span ‘ { 𝐶 } ) → ( span ‘ { 𝑧 } ) = ( span ‘ { 𝐶 } ) ) )
50 49 imp ( ( 𝑧 ≠ 0𝑧 ∈ ( span ‘ { 𝐶 } ) ) → ( span ‘ { 𝑧 } ) = ( span ‘ { 𝐶 } ) )
51 50 sseq1d ( ( 𝑧 ≠ 0𝑧 ∈ ( span ‘ { 𝐶 } ) ) → ( ( span ‘ { 𝑧 } ) ⊆ 𝐵 ↔ ( span ‘ { 𝐶 } ) ⊆ 𝐵 ) )
52 47 51 syl5ib ( ( 𝑧 ≠ 0𝑧 ∈ ( span ‘ { 𝐶 } ) ) → ( 𝑧𝐵 → ( span ‘ { 𝐶 } ) ⊆ 𝐵 ) )
53 52 ancoms ( ( 𝑧 ∈ ( span ‘ { 𝐶 } ) ∧ 𝑧 ≠ 0 ) → ( 𝑧𝐵 → ( span ‘ { 𝐶 } ) ⊆ 𝐵 ) )
54 45 53 sylan2 ( ( 𝑧 ∈ ( span ‘ { 𝐶 } ) ∧ ( ( 𝑦𝐴𝑥 = ( 𝑦 + 𝑧 ) ) ∧ ¬ 𝑥𝐴 ) ) → ( 𝑧𝐵 → ( span ‘ { 𝐶 } ) ⊆ 𝐵 ) )
55 54 exp44 ( 𝑧 ∈ ( span ‘ { 𝐶 } ) → ( 𝑦𝐴 → ( 𝑥 = ( 𝑦 + 𝑧 ) → ( ¬ 𝑥𝐴 → ( 𝑧𝐵 → ( span ‘ { 𝐶 } ) ⊆ 𝐵 ) ) ) ) )
56 55 com12 ( 𝑦𝐴 → ( 𝑧 ∈ ( span ‘ { 𝐶 } ) → ( 𝑥 = ( 𝑦 + 𝑧 ) → ( ¬ 𝑥𝐴 → ( 𝑧𝐵 → ( span ‘ { 𝐶 } ) ⊆ 𝐵 ) ) ) ) )
57 56 imp41 ( ( ( ( 𝑦𝐴𝑧 ∈ ( span ‘ { 𝐶 } ) ) ∧ 𝑥 = ( 𝑦 + 𝑧 ) ) ∧ ¬ 𝑥𝐴 ) → ( 𝑧𝐵 → ( span ‘ { 𝐶 } ) ⊆ 𝐵 ) )
58 57 adantrl ( ( ( ( 𝑦𝐴𝑧 ∈ ( span ‘ { 𝐶 } ) ) ∧ 𝑥 = ( 𝑦 + 𝑧 ) ) ∧ ( ( 𝐴𝐵𝑥𝐵 ) ∧ ¬ 𝑥𝐴 ) ) → ( 𝑧𝐵 → ( span ‘ { 𝐶 } ) ⊆ 𝐵 ) )
59 34 58 mpd ( ( ( ( 𝑦𝐴𝑧 ∈ ( span ‘ { 𝐶 } ) ) ∧ 𝑥 = ( 𝑦 + 𝑧 ) ) ∧ ( ( 𝐴𝐵𝑥𝐵 ) ∧ ¬ 𝑥𝐴 ) ) → ( span ‘ { 𝐶 } ) ⊆ 𝐵 )
60 59 exp43 ( ( 𝑦𝐴𝑧 ∈ ( span ‘ { 𝐶 } ) ) → ( 𝑥 = ( 𝑦 + 𝑧 ) → ( ( 𝐴𝐵𝑥𝐵 ) → ( ¬ 𝑥𝐴 → ( span ‘ { 𝐶 } ) ⊆ 𝐵 ) ) ) )
61 60 rexlimivv ( ∃ 𝑦𝐴𝑧 ∈ ( span ‘ { 𝐶 } ) 𝑥 = ( 𝑦 + 𝑧 ) → ( ( 𝐴𝐵𝑥𝐵 ) → ( ¬ 𝑥𝐴 → ( span ‘ { 𝐶 } ) ⊆ 𝐵 ) ) )
62 13 61 sylbi ( 𝑥 ∈ ( 𝐴 ( span ‘ { 𝐶 } ) ) → ( ( 𝐴𝐵𝑥𝐵 ) → ( ¬ 𝑥𝐴 → ( span ‘ { 𝐶 } ) ⊆ 𝐵 ) ) )
63 8 62 syl ( ( 𝐵 ⊆ ( 𝐴 ( span ‘ { 𝐶 } ) ) ∧ 𝑥𝐵 ) → ( ( 𝐴𝐵𝑥𝐵 ) → ( ¬ 𝑥𝐴 → ( span ‘ { 𝐶 } ) ⊆ 𝐵 ) ) )
64 63 imp ( ( ( 𝐵 ⊆ ( 𝐴 ( span ‘ { 𝐶 } ) ) ∧ 𝑥𝐵 ) ∧ ( 𝐴𝐵𝑥𝐵 ) ) → ( ¬ 𝑥𝐴 → ( span ‘ { 𝐶 } ) ⊆ 𝐵 ) )
65 64 anandirs ( ( ( 𝐵 ⊆ ( 𝐴 ( span ‘ { 𝐶 } ) ) ∧ 𝐴𝐵 ) ∧ 𝑥𝐵 ) → ( ¬ 𝑥𝐴 → ( span ‘ { 𝐶 } ) ⊆ 𝐵 ) )
66 65 expimpd ( ( 𝐵 ⊆ ( 𝐴 ( span ‘ { 𝐶 } ) ) ∧ 𝐴𝐵 ) → ( ( 𝑥𝐵 ∧ ¬ 𝑥𝐴 ) → ( span ‘ { 𝐶 } ) ⊆ 𝐵 ) )
67 66 exlimdv ( ( 𝐵 ⊆ ( 𝐴 ( span ‘ { 𝐶 } ) ) ∧ 𝐴𝐵 ) → ( ∃ 𝑥 ( 𝑥𝐵 ∧ ¬ 𝑥𝐴 ) → ( span ‘ { 𝐶 } ) ⊆ 𝐵 ) )
68 7 67 syl5 ( ( 𝐵 ⊆ ( 𝐴 ( span ‘ { 𝐶 } ) ) ∧ 𝐴𝐵 ) → ( 𝐴𝐵 → ( span ‘ { 𝐶 } ) ⊆ 𝐵 ) )
69 68 ex ( 𝐵 ⊆ ( 𝐴 ( span ‘ { 𝐶 } ) ) → ( 𝐴𝐵 → ( 𝐴𝐵 → ( span ‘ { 𝐶 } ) ⊆ 𝐵 ) ) )
70 69 pm2.43d ( 𝐵 ⊆ ( 𝐴 ( span ‘ { 𝐶 } ) ) → ( 𝐴𝐵 → ( span ‘ { 𝐶 } ) ⊆ 𝐵 ) )
71 70 impcom ( ( 𝐴𝐵𝐵 ⊆ ( 𝐴 ( span ‘ { 𝐶 } ) ) ) → ( span ‘ { 𝐶 } ) ⊆ 𝐵 )
72 1 11 2 chlubii ( ( 𝐴𝐵 ∧ ( span ‘ { 𝐶 } ) ⊆ 𝐵 ) → ( 𝐴 ( span ‘ { 𝐶 } ) ) ⊆ 𝐵 )
73 6 71 72 syl2anc ( ( 𝐴𝐵𝐵 ⊆ ( 𝐴 ( span ‘ { 𝐶 } ) ) ) → ( 𝐴 ( span ‘ { 𝐶 } ) ) ⊆ 𝐵 )
74 4 73 eqssd ( ( 𝐴𝐵𝐵 ⊆ ( 𝐴 ( span ‘ { 𝐶 } ) ) ) → 𝐵 = ( 𝐴 ( span ‘ { 𝐶 } ) ) )