Metamath Proof Explorer


Theorem kbass5

Description: Dirac bra-ket associative law ( | A >. <. B | ) ( | C >. <. D | ) = ( ( | A >. <. B | ) | C >. ) <. D | . (Contributed by NM, 30-May-2006) (New usage is discouraged.)

Ref Expression
Assertion kbass5 ABCDAketbraBCketbraD=AketbraBCketbraD

Proof

Step Hyp Ref Expression
1 kbval CDxCketbraDx=xihDC
2 1 3expa CDxCketbraDx=xihDC
3 2 adantll ABCDxCketbraDx=xihDC
4 3 fveq2d ABCDxAketbraBCketbraDx=AketbraBxihDC
5 simplll ABCDxA
6 simpllr ABCDxB
7 simpr ABCDxx
8 simplrr ABCDxD
9 hicl xDxihD
10 7 8 9 syl2anc ABCDxxihD
11 simplrl ABCDxC
12 hvmulcl xihDCxihDC
13 10 11 12 syl2anc ABCDxxihDC
14 kbval ABxihDCAketbraBxihDC=xihDCihBA
15 5 6 13 14 syl3anc ABCDxAketbraBxihDC=xihDCihBA
16 4 15 eqtrd ABCDxAketbraBCketbraDx=xihDCihBA
17 kbop CDCketbraD:
18 17 adantl ABCDCketbraD:
19 fvco3 CketbraD:xAketbraBCketbraDx=AketbraBCketbraDx
20 18 19 sylan ABCDxAketbraBCketbraDx=AketbraBCketbraDx
21 kbval ABCAketbraBC=CihBA
22 5 6 11 21 syl3anc ABCDxAketbraBC=CihBA
23 22 oveq2d ABCDxxihDAketbraBC=xihDCihBA
24 kbop ABAketbraB:
25 24 ffvelcdmda ABCAketbraBC
26 25 adantrr ABCDAketbraBC
27 26 adantr ABCDxAketbraBC
28 kbval AketbraBCDxAketbraBCketbraDx=xihDAketbraBC
29 27 8 7 28 syl3anc ABCDxAketbraBCketbraDx=xihDAketbraBC
30 ax-his3 xihDCBxihDCihB=xihDCihB
31 10 11 6 30 syl3anc ABCDxxihDCihB=xihDCihB
32 31 oveq1d ABCDxxihDCihBA=xihDCihBA
33 hicl CBCihB
34 11 6 33 syl2anc ABCDxCihB
35 ax-hvmulass xihDCihBAxihDCihBA=xihDCihBA
36 10 34 5 35 syl3anc ABCDxxihDCihBA=xihDCihBA
37 32 36 eqtrd ABCDxxihDCihBA=xihDCihBA
38 23 29 37 3eqtr4d ABCDxAketbraBCketbraDx=xihDCihBA
39 16 20 38 3eqtr4d ABCDxAketbraBCketbraDx=AketbraBCketbraDx
40 39 ralrimiva ABCDxAketbraBCketbraDx=AketbraBCketbraDx
41 fco AketbraB:CketbraD:AketbraBCketbraD:
42 24 17 41 syl2an ABCDAketbraBCketbraD:
43 kbop AketbraBCDAketbraBCketbraD:
44 25 43 sylan ABCDAketbraBCketbraD:
45 44 anasss ABCDAketbraBCketbraD:
46 ffn AketbraBCketbraD:AketbraBCketbraDFn
47 ffn AketbraBCketbraD:AketbraBCketbraDFn
48 eqfnfv AketbraBCketbraDFnAketbraBCketbraDFnAketbraBCketbraD=AketbraBCketbraDxAketbraBCketbraDx=AketbraBCketbraDx
49 46 47 48 syl2an AketbraBCketbraD:AketbraBCketbraD:AketbraBCketbraD=AketbraBCketbraDxAketbraBCketbraDx=AketbraBCketbraDx
50 42 45 49 syl2anc ABCDAketbraBCketbraD=AketbraBCketbraDxAketbraBCketbraDx=AketbraBCketbraDx
51 40 50 mpbird ABCDAketbraBCketbraD=AketbraBCketbraD