Function VECTOR-COMPONENT


Slots on this function:

Documentation:
Function to generate the ith scalar component for a vector-quantity in a particular basis. The ith scalar component is the dot (inner) product of the vector-quantity with the ith basis vector of the given basis.
Instance-Of: Function
Arity: 4

Equivalence Axioms:

(<=> (Vector-Component ?V ?I ?B)
     (And (Vector-Quantity ?V)
          (Positive-Integer ?I)
          (Orthonormal-Basis ?B)
          (Scalar-Quantity ?S)
          (= (Quantity.Dimension ?S) (Quantity.Dimension ?V))
          (= (Spatial.Dimension ?V) (Basis.Dimension ?B))
          (=< ?I (Spatial.Dimension ?V))
          (= ?S (Dot ?V (Basis.Vec ?B ?I)))))


Axioms:

(Nth-Domain Vector-Component 4 Scalar-Quantity)

(Nth-Domain Vector-Component 3 Orthonormal-Basis)

(Nth-Domain Vector-Component 2 Positive-Integer)

(Nth-Domain Vector-Component 1 Vector-Quantity)


Other Related Axioms:

(Forall (?B ?I)
        (=> (And (Orthonormal-Basis ?B)
                 (= (Basis.Dimension ?B) (Spatial.Dimension ?V))
                 (Positive-Integer ?I)
                 (=< ?I (Spatial.Dimension ?V)))
            (And (Defined (Vector-Component ?V ?I ?B))
                 (= (Quantity.Dimension (Vector-Component ?V ?I ?B))
                    (Quantity.Dimension ?V)))))

(<=> (Vector-Quantity ?V)
     (And (Constant-Quantity ?V)
          (Tensor-Quantity ?V)
          (= (Tensor-Order ?V) 1)
          (Forall (?B ?I)
                  (=> (And (Orthonormal-Basis ?B)
                           (= (Basis.Dimension ?B)
                              (Spatial.Dimension ?V))
                           (Positive-Integer ?I)
                           (=< ?I (Spatial.Dimension ?V)))
                      (And (Defined (Vector-Component ?V ?I ?B))
                           (= (Quantity.Dimension (Vector-Component ?V
                                                                    ?I
                                                                    ?B))
                              (Quantity.Dimension ?V)))))
          (Forall (?U)
                  (=> (And (Unit-Of-Measure ?U)
                           (= (Quantity.Dimension ?U)
                              (Quantity.Dimension ?V)))
                      (Numeric-Tensor (Magnitude ?V ?U))))))

(=> (= (Tensor-To-Matrix ?T ?Basis) ?M)
    (=> (= (Tensor-Order ?T) 1)
        (= (Row-Dimension ?M) 1)
        (= (Column-Dimension ?M) (Spatial.Dimension ?T))
        (Forall (?I)
                (= (Value ?M 1 ?I) (Vector-Component ?T ?I ?Basis)))))

(=> (= (Vector-Component ?V ?I ?B) ?S)
    (= ?S (Dot ?V (Basis.Vec ?B ?I))))

(=> (= (Vector-Component ?V ?I ?B) ?S)
    (=< ?I (Spatial.Dimension ?V)))

(=> (= (Vector-Component ?V ?I ?B) ?S)
    (= (Spatial.Dimension ?V) (Basis.Dimension ?B)))

(=> (= (Vector-Component ?V ?I ?B) ?S)
    (= (Quantity.Dimension ?S) (Quantity.Dimension ?V)))

(=> (= (Vector-Component ?V ?I ?B) ?S) (Scalar-Quantity ?S))

(=> (= (Vector-Component ?V ?I ?B) ?S) (Orthonormal-Basis ?B))

(=> (= (Vector-Component ?V ?I ?B) ?S) (Positive-Integer ?I))

(=> (= (Vector-Component ?V ?I ?B) ?S) (Vector-Quantity ?V))

(=> (And (Vector-Quantity ?X) (Vector-Quantity ?Y))
    (=> (+ ?X ?Y ?Z)
        (And (Vector-Quantity ?Z)
             (Forall (?B ?I)
                     (=> (And (Orthonormal-Basis ?B)
                              (= (Spatial.Dimension ?X)
                                 (Basis.Dimension ?B))
                              (Positive-Integer ?I)
                              (=< ?I (Spatial.Dimension ?X)))
                         (= (Vector-Component ?Z ?I ?B)
                            (+ (Vector-Component ?X ?I ?B)
                               (Vector-Component ?Y ?I ?B))))))))

(=> (And (Vector-Quantity ?V1) (Dyad ?T1))
    (<=> (Dot ?V1 ?T1 ?V)
         (And (Vector-Quantity ?V)
              (Forall (?B)
                      (= ?T
                         (The-Vector-Quantity (* (Tensor-To-Matrix ?V1
                                                                   ?B)
                                                 (Tensor-To-Matrix ?T1
                                                                   ?B))
                                              ?B)))
              (Forall 
                  (?B ?I ?J)
                  (=> (= (Basis.Dimension ?B)
                         (Spatial.Dimension ?V1))
                      (= ?T
                         (Summation 
                             (Lambda 
                                 (?I)
                                 (* (Basis.Vec ?B ?I)
                                    (Summation 
                                        (Lambda (?J)
                                                (* (Vector-Component 
                                                       ?V1
                                                       ?J
                                                       ?B)
                                                   (Dyad-Component ?T1
                                                                   ?J
                                                                   ?I
                                                                   ?B)))
                                        1
                                        (Spatial.Dimension ?V1))))
                             1
                             (Spatial.Dimension ?V1))))))))

(=> (And (Dyad ?T1) (Vector-Quantity ?V1))
    (<=> (Dot ?T1 ?V1 ?V)
         (And (Vector-Quantity ?V)
              (Forall 
                  (?B)
                  (= ?T
                     (The-Vector-Quantity 
                         (Transpose (* (Tensor-To-Matrix ?T1 ?B)
                                       (Transpose (Tensor-To-Matrix 
                                                      ?V1
                                                      ?B))))
                         ?B)))
              (Forall 
                  (?B ?I ?J)
                  (=> (= (Basis.Dimension ?B)
                         (Spatial.Dimension ?V1))
                      (= ?T
                         (Summation 
                             (Lambda 
                                 (?I)
                                 (* (Basis.Vec ?B ?I)
                                    (Summation 
                                        (Lambda (?J)
                                                (* (Dyad-Component ?T1
                                                                   ?I
                                                                   ?J
                                                                   ?B)
                                                   (Vector-Component 
                                                       ?V1
                                                       ?J
                                                       ?B)))
                                        1
                                        (Spatial.Dimension ?V1))))
                             1
                             (Spatial.Dimension ?V1))))))))

(=> (And (Vector-Quantity ?V1) (Vector-Quantity ?V2))
    (<=> (Dot ?V1 ?V2 ?S)
         (And (Scalar-Quantity ?S)
              (Forall (?B)
                      (= ?S
                         (Value (* (Tensor-To-Matrix ?V1 ?B)
                                   (Transpose (Tensor-To-Matrix ?V2
                                                                ?B)))
                                11)))
              (Forall (?B ?J)
                      (=> (= (Basis.Dimension ?B)
                             (Spatial.Dimension ?V1))
                          (= ?S
                             (Summation (Lambda (?J)
                                                (* (Vector-Component 
                                                       ?V1
                                                       ?J
                                                       ?B)
                                                   (Vector-Component 
                                                       ?V2
                                                       ?J
                                                       ?B)))
                                        1
                                        (Spatial.Dimension ?V1))))))))

(=> (And (Scalar-Quantity ?S) (Vector-Quantity ?V1) (* ?S ?V1 ?V))
    (And (Vector-Quantity ?V)
         (= (Spatial.Dimension ?V1) (Spatial.Dimension ?V))
         (Forall (?B ?I)
                 (=> (= (Basis.Dimension ?B) (Spatial.Dimension ?V1))
                     (= (Vector-Component ?V ?I ?B)
                        (* ?S (Vector-Component ?V1 ?I ?B)))))))