This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: An absolute value satisfies the triangle inequality. (Contributed by Mario Carneiro, 8-Sep-2014)
| Ref | Expression | ||
|---|---|---|---|
| Hypotheses | abvf.a | |- A = ( AbsVal ` R ) |
|
| abvf.b | |- B = ( Base ` R ) |
||
| abvtri.p | |- .+ = ( +g ` R ) |
||
| Assertion | abvtri | |- ( ( F e. A /\ X e. B /\ Y e. B ) -> ( F ` ( X .+ Y ) ) <_ ( ( F ` X ) + ( F ` Y ) ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | abvf.a | |- A = ( AbsVal ` R ) |
|
| 2 | abvf.b | |- B = ( Base ` R ) |
|
| 3 | abvtri.p | |- .+ = ( +g ` R ) |
|
| 4 | 1 | abvrcl | |- ( F e. A -> R e. Ring ) |
| 5 | eqid | |- ( .r ` R ) = ( .r ` R ) |
|
| 6 | eqid | |- ( 0g ` R ) = ( 0g ` R ) |
|
| 7 | 1 2 3 5 6 | isabv | |- ( R e. Ring -> ( F e. A <-> ( F : B --> ( 0 [,) +oo ) /\ A. x e. B ( ( ( F ` x ) = 0 <-> x = ( 0g ` R ) ) /\ A. y e. B ( ( F ` ( x ( .r ` R ) y ) ) = ( ( F ` x ) x. ( F ` y ) ) /\ ( F ` ( x .+ 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 = ( 0g ` R ) ) /\ A. y e. B ( ( F ` ( x ( .r ` R ) y ) ) = ( ( F ` x ) x. ( F ` y ) ) /\ ( F ` ( x .+ y ) ) <_ ( ( F ` x ) + ( F ` y ) ) ) ) ) ) ) |
| 9 | 8 | ibi | |- ( F e. A -> ( F : B --> ( 0 [,) +oo ) /\ A. x e. B ( ( ( F ` x ) = 0 <-> x = ( 0g ` R ) ) /\ A. y e. B ( ( F ` ( x ( .r ` R ) y ) ) = ( ( F ` x ) x. ( F ` y ) ) /\ ( F ` ( x .+ y ) ) <_ ( ( F ` x ) + ( F ` y ) ) ) ) ) ) |
| 10 | simpr | |- ( ( ( F ` ( x ( .r ` R ) y ) ) = ( ( F ` x ) x. ( F ` y ) ) /\ ( F ` ( x .+ y ) ) <_ ( ( F ` x ) + ( F ` y ) ) ) -> ( F ` ( x .+ y ) ) <_ ( ( F ` x ) + ( F ` y ) ) ) |
|
| 11 | 10 | ralimi | |- ( A. y e. B ( ( F ` ( x ( .r ` R ) y ) ) = ( ( F ` x ) x. ( F ` y ) ) /\ ( F ` ( x .+ y ) ) <_ ( ( F ` x ) + ( F ` y ) ) ) -> A. y e. B ( F ` ( x .+ y ) ) <_ ( ( F ` x ) + ( F ` y ) ) ) |
| 12 | 11 | adantl | |- ( ( ( ( F ` x ) = 0 <-> x = ( 0g ` R ) ) /\ A. y e. B ( ( F ` ( x ( .r ` R ) y ) ) = ( ( F ` x ) x. ( F ` y ) ) /\ ( F ` ( x .+ y ) ) <_ ( ( F ` x ) + ( F ` y ) ) ) ) -> A. y e. B ( F ` ( x .+ y ) ) <_ ( ( F ` x ) + ( F ` y ) ) ) |
| 13 | 12 | ralimi | |- ( A. x e. B ( ( ( F ` x ) = 0 <-> x = ( 0g ` R ) ) /\ A. y e. B ( ( F ` ( x ( .r ` R ) y ) ) = ( ( F ` x ) x. ( F ` y ) ) /\ ( F ` ( x .+ y ) ) <_ ( ( F ` x ) + ( F ` y ) ) ) ) -> A. x e. B A. y e. B ( F ` ( x .+ y ) ) <_ ( ( F ` x ) + ( F ` y ) ) ) |
| 14 | 9 13 | simpl2im | |- ( F e. A -> A. x e. B A. y e. B ( F ` ( x .+ y ) ) <_ ( ( F ` x ) + ( F ` y ) ) ) |
| 15 | fvoveq1 | |- ( x = X -> ( F ` ( x .+ y ) ) = ( F ` ( X .+ y ) ) ) |
|
| 16 | fveq2 | |- ( x = X -> ( F ` x ) = ( F ` X ) ) |
|
| 17 | 16 | oveq1d | |- ( x = X -> ( ( F ` x ) + ( F ` y ) ) = ( ( F ` X ) + ( F ` y ) ) ) |
| 18 | 15 17 | breq12d | |- ( x = X -> ( ( F ` ( x .+ y ) ) <_ ( ( F ` x ) + ( F ` y ) ) <-> ( F ` ( X .+ y ) ) <_ ( ( F ` X ) + ( F ` y ) ) ) ) |
| 19 | oveq2 | |- ( y = Y -> ( X .+ y ) = ( X .+ Y ) ) |
|
| 20 | 19 | fveq2d | |- ( y = Y -> ( F ` ( X .+ y ) ) = ( F ` ( X .+ Y ) ) ) |
| 21 | fveq2 | |- ( y = Y -> ( F ` y ) = ( F ` Y ) ) |
|
| 22 | 21 | oveq2d | |- ( y = Y -> ( ( F ` X ) + ( F ` y ) ) = ( ( F ` X ) + ( F ` Y ) ) ) |
| 23 | 20 22 | breq12d | |- ( y = Y -> ( ( F ` ( X .+ y ) ) <_ ( ( F ` X ) + ( F ` y ) ) <-> ( F ` ( X .+ Y ) ) <_ ( ( F ` X ) + ( F ` Y ) ) ) ) |
| 24 | 18 23 | rspc2v | |- ( ( X e. B /\ Y e. B ) -> ( A. x e. B A. y e. B ( F ` ( x .+ y ) ) <_ ( ( F ` x ) + ( F ` y ) ) -> ( F ` ( X .+ Y ) ) <_ ( ( F ` X ) + ( F ` Y ) ) ) ) |
| 25 | 14 24 | syl5com | |- ( F e. A -> ( ( X e. B /\ Y e. B ) -> ( F ` ( X .+ Y ) ) <_ ( ( F ` X ) + ( F ` Y ) ) ) ) |
| 26 | 25 | 3impib | |- ( ( F e. A /\ X e. B /\ Y e. B ) -> ( F ` ( X .+ Y ) ) <_ ( ( F ` X ) + ( F ` Y ) ) ) |