This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: Closure of the metric in a binary structure product. (Contributed by Mario Carneiro, 20-Aug-2015)
| Ref | Expression | ||
|---|---|---|---|
| Hypotheses | xpsds.t | ⊢ 𝑇 = ( 𝑅 ×s 𝑆 ) | |
| xpsds.x | ⊢ 𝑋 = ( Base ‘ 𝑅 ) | ||
| xpsds.y | ⊢ 𝑌 = ( Base ‘ 𝑆 ) | ||
| xpsds.1 | ⊢ ( 𝜑 → 𝑅 ∈ 𝑉 ) | ||
| xpsds.2 | ⊢ ( 𝜑 → 𝑆 ∈ 𝑊 ) | ||
| xpsds.p | ⊢ 𝑃 = ( dist ‘ 𝑇 ) | ||
| Assertion | xpsdsfn | ⊢ ( 𝜑 → 𝑃 Fn ( ( 𝑋 × 𝑌 ) × ( 𝑋 × 𝑌 ) ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | xpsds.t | ⊢ 𝑇 = ( 𝑅 ×s 𝑆 ) | |
| 2 | xpsds.x | ⊢ 𝑋 = ( Base ‘ 𝑅 ) | |
| 3 | xpsds.y | ⊢ 𝑌 = ( Base ‘ 𝑆 ) | |
| 4 | xpsds.1 | ⊢ ( 𝜑 → 𝑅 ∈ 𝑉 ) | |
| 5 | xpsds.2 | ⊢ ( 𝜑 → 𝑆 ∈ 𝑊 ) | |
| 6 | xpsds.p | ⊢ 𝑃 = ( dist ‘ 𝑇 ) | |
| 7 | eqid | ⊢ ( 𝑥 ∈ 𝑋 , 𝑦 ∈ 𝑌 ↦ { 〈 ∅ , 𝑥 〉 , 〈 1o , 𝑦 〉 } ) = ( 𝑥 ∈ 𝑋 , 𝑦 ∈ 𝑌 ↦ { 〈 ∅ , 𝑥 〉 , 〈 1o , 𝑦 〉 } ) | |
| 8 | eqid | ⊢ ( Scalar ‘ 𝑅 ) = ( Scalar ‘ 𝑅 ) | |
| 9 | eqid | ⊢ ( ( Scalar ‘ 𝑅 ) Xs { 〈 ∅ , 𝑅 〉 , 〈 1o , 𝑆 〉 } ) = ( ( Scalar ‘ 𝑅 ) Xs { 〈 ∅ , 𝑅 〉 , 〈 1o , 𝑆 〉 } ) | |
| 10 | 1 2 3 4 5 7 8 9 | xpsval | ⊢ ( 𝜑 → 𝑇 = ( ◡ ( 𝑥 ∈ 𝑋 , 𝑦 ∈ 𝑌 ↦ { 〈 ∅ , 𝑥 〉 , 〈 1o , 𝑦 〉 } ) “s ( ( Scalar ‘ 𝑅 ) Xs { 〈 ∅ , 𝑅 〉 , 〈 1o , 𝑆 〉 } ) ) ) |
| 11 | 1 2 3 4 5 7 8 9 | xpsrnbas | ⊢ ( 𝜑 → ran ( 𝑥 ∈ 𝑋 , 𝑦 ∈ 𝑌 ↦ { 〈 ∅ , 𝑥 〉 , 〈 1o , 𝑦 〉 } ) = ( Base ‘ ( ( Scalar ‘ 𝑅 ) Xs { 〈 ∅ , 𝑅 〉 , 〈 1o , 𝑆 〉 } ) ) ) |
| 12 | 7 | xpsff1o2 | ⊢ ( 𝑥 ∈ 𝑋 , 𝑦 ∈ 𝑌 ↦ { 〈 ∅ , 𝑥 〉 , 〈 1o , 𝑦 〉 } ) : ( 𝑋 × 𝑌 ) –1-1-onto→ ran ( 𝑥 ∈ 𝑋 , 𝑦 ∈ 𝑌 ↦ { 〈 ∅ , 𝑥 〉 , 〈 1o , 𝑦 〉 } ) |
| 13 | 12 | a1i | ⊢ ( 𝜑 → ( 𝑥 ∈ 𝑋 , 𝑦 ∈ 𝑌 ↦ { 〈 ∅ , 𝑥 〉 , 〈 1o , 𝑦 〉 } ) : ( 𝑋 × 𝑌 ) –1-1-onto→ ran ( 𝑥 ∈ 𝑋 , 𝑦 ∈ 𝑌 ↦ { 〈 ∅ , 𝑥 〉 , 〈 1o , 𝑦 〉 } ) ) |
| 14 | f1ocnv | ⊢ ( ( 𝑥 ∈ 𝑋 , 𝑦 ∈ 𝑌 ↦ { 〈 ∅ , 𝑥 〉 , 〈 1o , 𝑦 〉 } ) : ( 𝑋 × 𝑌 ) –1-1-onto→ ran ( 𝑥 ∈ 𝑋 , 𝑦 ∈ 𝑌 ↦ { 〈 ∅ , 𝑥 〉 , 〈 1o , 𝑦 〉 } ) → ◡ ( 𝑥 ∈ 𝑋 , 𝑦 ∈ 𝑌 ↦ { 〈 ∅ , 𝑥 〉 , 〈 1o , 𝑦 〉 } ) : ran ( 𝑥 ∈ 𝑋 , 𝑦 ∈ 𝑌 ↦ { 〈 ∅ , 𝑥 〉 , 〈 1o , 𝑦 〉 } ) –1-1-onto→ ( 𝑋 × 𝑌 ) ) | |
| 15 | f1ofo | ⊢ ( ◡ ( 𝑥 ∈ 𝑋 , 𝑦 ∈ 𝑌 ↦ { 〈 ∅ , 𝑥 〉 , 〈 1o , 𝑦 〉 } ) : ran ( 𝑥 ∈ 𝑋 , 𝑦 ∈ 𝑌 ↦ { 〈 ∅ , 𝑥 〉 , 〈 1o , 𝑦 〉 } ) –1-1-onto→ ( 𝑋 × 𝑌 ) → ◡ ( 𝑥 ∈ 𝑋 , 𝑦 ∈ 𝑌 ↦ { 〈 ∅ , 𝑥 〉 , 〈 1o , 𝑦 〉 } ) : ran ( 𝑥 ∈ 𝑋 , 𝑦 ∈ 𝑌 ↦ { 〈 ∅ , 𝑥 〉 , 〈 1o , 𝑦 〉 } ) –onto→ ( 𝑋 × 𝑌 ) ) | |
| 16 | 13 14 15 | 3syl | ⊢ ( 𝜑 → ◡ ( 𝑥 ∈ 𝑋 , 𝑦 ∈ 𝑌 ↦ { 〈 ∅ , 𝑥 〉 , 〈 1o , 𝑦 〉 } ) : ran ( 𝑥 ∈ 𝑋 , 𝑦 ∈ 𝑌 ↦ { 〈 ∅ , 𝑥 〉 , 〈 1o , 𝑦 〉 } ) –onto→ ( 𝑋 × 𝑌 ) ) |
| 17 | ovexd | ⊢ ( 𝜑 → ( ( Scalar ‘ 𝑅 ) Xs { 〈 ∅ , 𝑅 〉 , 〈 1o , 𝑆 〉 } ) ∈ V ) | |
| 18 | eqid | ⊢ ( dist ‘ ( ( Scalar ‘ 𝑅 ) Xs { 〈 ∅ , 𝑅 〉 , 〈 1o , 𝑆 〉 } ) ) = ( dist ‘ ( ( Scalar ‘ 𝑅 ) Xs { 〈 ∅ , 𝑅 〉 , 〈 1o , 𝑆 〉 } ) ) | |
| 19 | 10 11 16 17 18 6 | imasdsfn | ⊢ ( 𝜑 → 𝑃 Fn ( ( 𝑋 × 𝑌 ) × ( 𝑋 × 𝑌 ) ) ) |