Metamath Proof Explorer


Theorem abveq0

Description: The value of an absolute value is zero iff the argument is zero. (Contributed by Mario Carneiro, 8-Sep-2014)

Ref Expression
Hypotheses abvf.a
|- A = ( AbsVal ` R )
abvf.b
|- B = ( Base ` R )
abveq0.z
|- .0. = ( 0g ` R )
Assertion abveq0
|- ( ( F e. A /\ X e. B ) -> ( ( F ` X ) = 0 <-> X = .0. ) )

Proof

Step Hyp Ref Expression
1 abvf.a
 |-  A = ( AbsVal ` R )
2 abvf.b
 |-  B = ( Base ` R )
3 abveq0.z
 |-  .0. = ( 0g ` R )
4 1 abvrcl
 |-  ( F e. A -> R e. Ring )
5 eqid
 |-  ( +g ` R ) = ( +g ` R )
6 eqid
 |-  ( .r ` R ) = ( .r ` R )
7 1 2 5 6 3 isabv
 |-  ( R e. Ring -> ( F e. A <-> ( F : B --> ( 0 [,) +oo ) /\ A. x e. B ( ( ( F ` x ) = 0 <-> x = .0. ) /\ A. y e. B ( ( F ` ( x ( .r ` R ) y ) ) = ( ( F ` x ) x. ( F ` y ) ) /\ ( F ` ( x ( +g ` R ) y ) ) <_ ( ( F ` x ) + ( F ` y ) ) ) ) ) ) )
8 4 7 syl
 |-  ( F e. A -> ( F e. A <-> ( F : B --> ( 0 [,) +oo ) /\ A. x e. B ( ( ( F ` x ) = 0 <-> x = .0. ) /\ A. y e. B ( ( F ` ( x ( .r ` R ) y ) ) = ( ( F ` x ) x. ( F ` y ) ) /\ ( F ` ( x ( +g ` R ) y ) ) <_ ( ( F ` x ) + ( F ` y ) ) ) ) ) ) )
9 8 ibi
 |-  ( F e. A -> ( F : B --> ( 0 [,) +oo ) /\ A. x e. B ( ( ( F ` x ) = 0 <-> x = .0. ) /\ A. y e. B ( ( F ` ( x ( .r ` R ) y ) ) = ( ( F ` x ) x. ( F ` y ) ) /\ ( F ` ( x ( +g ` R ) y ) ) <_ ( ( F ` x ) + ( F ` y ) ) ) ) ) )
10 simpl
 |-  ( ( ( ( F ` x ) = 0 <-> x = .0. ) /\ A. y e. B ( ( F ` ( x ( .r ` R ) y ) ) = ( ( F ` x ) x. ( F ` y ) ) /\ ( F ` ( x ( +g ` R ) y ) ) <_ ( ( F ` x ) + ( F ` y ) ) ) ) -> ( ( F ` x ) = 0 <-> x = .0. ) )
11 10 ralimi
 |-  ( A. x e. B ( ( ( F ` x ) = 0 <-> x = .0. ) /\ A. y e. B ( ( F ` ( x ( .r ` R ) y ) ) = ( ( F ` x ) x. ( F ` y ) ) /\ ( F ` ( x ( +g ` R ) y ) ) <_ ( ( F ` x ) + ( F ` y ) ) ) ) -> A. x e. B ( ( F ` x ) = 0 <-> x = .0. ) )
12 9 11 simpl2im
 |-  ( F e. A -> A. x e. B ( ( F ` x ) = 0 <-> x = .0. ) )
13 fveqeq2
 |-  ( x = X -> ( ( F ` x ) = 0 <-> ( F ` X ) = 0 ) )
14 eqeq1
 |-  ( x = X -> ( x = .0. <-> X = .0. ) )
15 13 14 bibi12d
 |-  ( x = X -> ( ( ( F ` x ) = 0 <-> x = .0. ) <-> ( ( F ` X ) = 0 <-> X = .0. ) ) )
16 15 rspccva
 |-  ( ( A. x e. B ( ( F ` x ) = 0 <-> x = .0. ) /\ X e. B ) -> ( ( F ` X ) = 0 <-> X = .0. ) )
17 12 16 sylan
 |-  ( ( F e. A /\ X e. B ) -> ( ( F ` X ) = 0 <-> X = .0. ) )