Description: The inner product of a free module. (Contributed by Thierry Arnoux, 20-Jun-2019)
Ref | Expression | ||
---|---|---|---|
Hypotheses | frlmphl.y | |
|
frlmphl.b | |
||
frlmphl.t | |
||
Assertion | frlmip | |
Step | Hyp | Ref | Expression |
---|---|---|---|
1 | frlmphl.y | |
|
2 | frlmphl.b | |
|
3 | frlmphl.t | |
|
4 | eqid | |
|
5 | eqid | |
|
6 | 4 5 | frlmpws | |
7 | 6 | ancoms | |
8 | 2 | ressid | |
9 | eqidd | |
|
10 | 2 | eqimssi | |
11 | 10 | a1i | |
12 | 9 11 | srasca | |
13 | 8 12 | eqtr3d | |
14 | 13 | oveq1d | |
15 | 14 | adantl | |
16 | fvex | |
|
17 | rlmval | |
|
18 | 2 | fveq2i | |
19 | 17 18 | eqtr4i | |
20 | 19 | oveq1i | |
21 | eqid | |
|
22 | 20 21 | pwsval | |
23 | 16 22 | mpan | |
24 | 23 | adantr | |
25 | 15 24 | eqtr4d | |
26 | 1 | fveq2i | |
27 | 26 | a1i | |
28 | 25 27 | oveq12d | |
29 | 7 28 | eqtr4d | |
30 | 1 29 | eqtrid | |
31 | 30 | fveq2d | |
32 | fvex | |
|
33 | eqid | |
|
34 | eqid | |
|
35 | 33 34 | ressip | |
36 | 32 35 | ax-mp | |
37 | eqid | |
|
38 | simpr | |
|
39 | snex | |
|
40 | xpexg | |
|
41 | 39 40 | mpan2 | |
42 | 41 | adantr | |
43 | eqid | |
|
44 | 16 | snnz | |
45 | dmxp | |
|
46 | 44 45 | mp1i | |
47 | 37 38 42 43 46 34 | prdsip | |
48 | 37 38 42 43 46 | prdsbas | |
49 | eqidd | |
|
50 | 10 | a1i | |
51 | 49 50 | srabase | |
52 | 2 | a1i | |
53 | 16 | fvconst2 | |
54 | 53 | fveq2d | |
55 | 51 52 54 | 3eqtr4rd | |
56 | 55 | adantl | |
57 | 56 | ixpeq2dva | |
58 | 2 | fvexi | |
59 | ixpconstg | |
|
60 | 58 59 | mpan2 | |
61 | 60 | adantr | |
62 | 48 57 61 | 3eqtrd | |
63 | 53 50 | sraip | |
64 | 3 63 | eqtr2id | |
65 | 64 | oveqd | |
66 | 65 | mpteq2ia | |
67 | 66 | oveq2i | |
68 | 67 | a1i | |
69 | 62 62 68 | mpoeq123dv | |
70 | 47 69 | eqtrd | |
71 | 36 70 | eqtr3id | |
72 | 31 71 | eqtr2d | |