Metamath Proof Explorer


Theorem ndmaovass

Description: Any operation is associative outside its domain. In contrast to ndmovass where it is required that the operation's domain doesn't contain the empty set ( -. (/) e. S ), no additional assumption is required. (Contributed by Alexander van der Vekens, 26-May-2017)

Ref Expression
Hypothesis ndmaov.1
|- dom F = ( S X. S )
Assertion ndmaovass
|- ( -. ( A e. S /\ B e. S /\ C e. S ) -> (( (( A F B )) F C )) = (( A F (( B F C )) )) )

Proof

Step Hyp Ref Expression
1 ndmaov.1
 |-  dom F = ( S X. S )
2 1 eleq2i
 |-  ( <. (( A F B )) , C >. e. dom F <-> <. (( A F B )) , C >. e. ( S X. S ) )
3 opelxp
 |-  ( <. (( A F B )) , C >. e. ( S X. S ) <-> ( (( A F B )) e. S /\ C e. S ) )
4 2 3 bitri
 |-  ( <. (( A F B )) , C >. e. dom F <-> ( (( A F B )) e. S /\ C e. S ) )
5 aovvdm
 |-  ( (( A F B )) e. S -> <. A , B >. e. dom F )
6 1 eleq2i
 |-  ( <. A , B >. e. dom F <-> <. A , B >. e. ( S X. S ) )
7 opelxp
 |-  ( <. A , B >. e. ( S X. S ) <-> ( A e. S /\ B e. S ) )
8 6 7 bitri
 |-  ( <. A , B >. e. dom F <-> ( A e. S /\ B e. S ) )
9 df-3an
 |-  ( ( A e. S /\ B e. S /\ C e. S ) <-> ( ( A e. S /\ B e. S ) /\ C e. S ) )
10 9 simplbi2
 |-  ( ( A e. S /\ B e. S ) -> ( C e. S -> ( A e. S /\ B e. S /\ C e. S ) ) )
11 8 10 sylbi
 |-  ( <. A , B >. e. dom F -> ( C e. S -> ( A e. S /\ B e. S /\ C e. S ) ) )
12 5 11 syl
 |-  ( (( A F B )) e. S -> ( C e. S -> ( A e. S /\ B e. S /\ C e. S ) ) )
13 12 imp
 |-  ( ( (( A F B )) e. S /\ C e. S ) -> ( A e. S /\ B e. S /\ C e. S ) )
14 4 13 sylbi
 |-  ( <. (( A F B )) , C >. e. dom F -> ( A e. S /\ B e. S /\ C e. S ) )
15 ndmaov
 |-  ( -. <. (( A F B )) , C >. e. dom F -> (( (( A F B )) F C )) = _V )
16 14 15 nsyl5
 |-  ( -. ( A e. S /\ B e. S /\ C e. S ) -> (( (( A F B )) F C )) = _V )
17 1 eleq2i
 |-  ( <. A , (( B F C )) >. e. dom F <-> <. A , (( B F C )) >. e. ( S X. S ) )
18 opelxp
 |-  ( <. A , (( B F C )) >. e. ( S X. S ) <-> ( A e. S /\ (( B F C )) e. S ) )
19 17 18 bitri
 |-  ( <. A , (( B F C )) >. e. dom F <-> ( A e. S /\ (( B F C )) e. S ) )
20 aovvdm
 |-  ( (( B F C )) e. S -> <. B , C >. e. dom F )
21 1 eleq2i
 |-  ( <. B , C >. e. dom F <-> <. B , C >. e. ( S X. S ) )
22 opelxp
 |-  ( <. B , C >. e. ( S X. S ) <-> ( B e. S /\ C e. S ) )
23 21 22 bitri
 |-  ( <. B , C >. e. dom F <-> ( B e. S /\ C e. S ) )
24 3anass
 |-  ( ( A e. S /\ B e. S /\ C e. S ) <-> ( A e. S /\ ( B e. S /\ C e. S ) ) )
25 24 biimpri
 |-  ( ( A e. S /\ ( B e. S /\ C e. S ) ) -> ( A e. S /\ B e. S /\ C e. S ) )
26 25 a1d
 |-  ( ( A e. S /\ ( B e. S /\ C e. S ) ) -> ( <. A , (( B F C )) >. e. dom F -> ( A e. S /\ B e. S /\ C e. S ) ) )
27 26 expcom
 |-  ( ( B e. S /\ C e. S ) -> ( A e. S -> ( <. A , (( B F C )) >. e. dom F -> ( A e. S /\ B e. S /\ C e. S ) ) ) )
28 23 27 sylbi
 |-  ( <. B , C >. e. dom F -> ( A e. S -> ( <. A , (( B F C )) >. e. dom F -> ( A e. S /\ B e. S /\ C e. S ) ) ) )
29 20 28 syl
 |-  ( (( B F C )) e. S -> ( A e. S -> ( <. A , (( B F C )) >. e. dom F -> ( A e. S /\ B e. S /\ C e. S ) ) ) )
30 29 impcom
 |-  ( ( A e. S /\ (( B F C )) e. S ) -> ( <. A , (( B F C )) >. e. dom F -> ( A e. S /\ B e. S /\ C e. S ) ) )
31 19 30 sylbi
 |-  ( <. A , (( B F C )) >. e. dom F -> ( <. A , (( B F C )) >. e. dom F -> ( A e. S /\ B e. S /\ C e. S ) ) )
32 31 pm2.43i
 |-  ( <. A , (( B F C )) >. e. dom F -> ( A e. S /\ B e. S /\ C e. S ) )
33 ndmaov
 |-  ( -. <. A , (( B F C )) >. e. dom F -> (( A F (( B F C )) )) = _V )
34 32 33 nsyl5
 |-  ( -. ( A e. S /\ B e. S /\ C e. S ) -> (( A F (( B F C )) )) = _V )
35 16 34 eqtr4d
 |-  ( -. ( A e. S /\ B e. S /\ C e. S ) -> (( (( A F B )) F C )) = (( A F (( B F C )) )) )