package opentorah
Package Members
- package angles
- package astronomy
- package calendar
- package numbers
Number System.
Number System.
Each number system
S(derived from org.opentorah.numbers.Numbers#Number) supports two flavors of org.opentorah.numbers.Numbers#Number:S#Point(derived from org.opentorah.numbers.Numbers#PointNumber andS#Vector(derived from org.opentorah.numbers.Numbers#VectorNumber.This distinction allows definitions of operations to be constrained to the types where a give operation makes sense:
-: (Vector, Vector) => Vectorwith right unitVector.zero;+: (Vector, Vector) => Vectorwith unitVector.zero;-: (Point, Point) => Vector;+: (Point, Vector) => Pointwith left unitPoint.zeroand its "commutation"+: (Vector, Point) => Pointwith right unitPoint.zero.This distinction may seem to be artificial: after all, given operations
-: (Point, Point) => Vectorand+: (Point, Vector) => Point, we have an isomorphism betweenPointsandVectors:ptov(p) = p - Point.zero,vtop(v) = Point.zero + v.Indeed, there is not much difference between the two when we are talking about angles. However, for dates (
Points) it makes sense to ask what year/month the date is in - but not for time intervals (Vectors)!