Function BASIS.DIMENSION


Slots on this function:

Documentation:
Function that returns the spatial dimension associated with a basis set of vectors.
Instance-Of: Function
Arity: 2
Domain: Orthonormal-basis
Range: Positive-integer

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))))))

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

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

(Forall (?N1 ?N2)
        (=> (And (Positive-Integer ?N1)
                 (Positive-Integer ?N2)
                 (=< ?N1 (Basis.Dimension ?B))
                 (=< ?N2 (Basis.Dimension ?B)))
            (=> (= ?N1 ?N2)
                (= (Dot (Basis.Vec ?B ?N1) (Basis.Vec ?B ?N2)) 1))
            (=> (/= ?N1 ?N2)
                (= (Dot (Basis.Vec ?B ?N1) (Basis.Vec ?B ?N2)) 0))))

(Forall (?N)
        (=> (And (Positive-Integer ?N) (=< ?N (Basis.Dimension ?B)))
            (Defined (Basis.Vec ?B ?N))))

(Inherited-Facet-Value Slot-Cardinality
                       Orthonormal-Basis
                       Basis.Dimension
                       1)

(=> (Orthonormal-Basis ?B)
    (And (Value-Cardinality ?B Basis.Dimension 1)
         (Forall (?N)
                 (=> (And (Positive-Integer ?N)
                          (=< ?N (Basis.Dimension ?B)))
                     (Defined (Basis.Vec ?B ?N))))
         (Forall (?N1 ?N2)
                 (=> (And (Positive-Integer ?N1)
                          (Positive-Integer ?N2)
                          (=< ?N1 (Basis.Dimension ?B))
                          (=< ?N2 (Basis.Dimension ?B)))
                     (=> (= ?N1 ?N2)
                         (= (Dot (Basis.Vec ?B ?N1)
                                 (Basis.Vec ?B ?N2))
                            1))
                     (=> (/= ?N1 ?N2)
                         (= (Dot (Basis.Vec ?B ?N1)
                                 (Basis.Vec ?B ?N2))
                            0))))))

(=> (= (Basis.Vec ?Basis ?N) ?Uv) (=< ?N (Basis.Dimension ?Basis)))

(=> (Basis.Dimension $X $Y) (Positive-Integer $Y))

(=> (Basis.Dimension $X $Y) (Orthonormal-Basis $X))

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

(=> (= (Dyad-Component ?T ?I ?J ?Basis) ?S)
    (= (Spatial.Dimension ?T) (Basis.Dimension ?B)))

(=> (= (The-Vector-Quantity ?M ?B) ?V)
    (= (Column-Dimension ?M) (Basis.Dimension ?B)))

(=> (= (The-Dyad ?M ?B) ?T) (= (Size ?M) (Basis.Dimension ?B)))

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

(=> (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 (Dyad ?T1) (Dyad ?T2))
    (<=> (Dot ?T1 ?T2 ?T)
         (And (Dyad ?T)
              (Forall (?B)
                      (= ?T
                         (The-Dyad (* (Tensor-To-Matrix ?T1 ?B)
                                      (Tensor-To-Matrix ?T2 ?B))
                                   ?B)))
              (Forall 
                  (?B ?I ?J)
                  (=> (= (Basis.Dimension ?B)
                         (Spatial.Dimension ?T1))
                      (= ?T
                         (Summation 
                             (Lambda 
                                 (?I)
                                 (Summation 
                                     (Lambda (?J)
                                             (* (* (Basis.Vec ?B ?I)
                                                   (Basis.Vec ?B ?J))
                                                (* (Dyad-Component ?T1
                                                                   ?I
                                                                   ?J
                                                                   ?B)
                                                   (Dyad-Component ?T2
                                                                   ?J
                                                                   ?I
                                                                   ?B))))
                                     1
                                     (Spatial.Dimension ?T1)))
                             1
                             (Spatial.Dimension ?T1))))))))

(=> (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)))))))