Geometry and Euclidean space


1- Axioms of Geometry

Euclidean space, denoted by \mathbb E, is a space that contains the elements of Euclidean geometry and satisfies the axioms (postulates) of Euclidean geometry. A geometry or a geometric system is a axiomatic system being a collection of the following entities.

  1. Undefined/abstract terms or primitives: These are abstract elements that can be interpreted based on context.
  2. Defined terms (if necessary to have): Terms that are defined using the primitives.
  3. Axioms: The statements that are accepted without proof. They set relations within and between the primitives.
  4. A system of logic.
  5. Theorems: The statements that can be proved using the axioms and the system of logic.

A mathematical model/representation can fit to a geometry/ a geometric system. A model contains elements that are explicit interpretations of the undefined/abstract terms of the geometry and compatible with the geometric axioms. One model for the Euclidean geometry is to define a point as (the imagination of) an exact location which has no dimension/size in the space. A line is defined as a straight line which is an infinitely long object in any (two) directions and has no width or thickness, and it uniquely exists (or can be defined/constructed) between any two points. In the materialistic space/world we can approximately visualize/consider points and lines according to what we see. In other words, we model physical objects or fit mathematical models to them. For example we can consider a point as a relatively small physical dot, a computer pixel or a light spot (modeling a physical dot by the notion of a point defined as a location in the space). The infinite trajectory of any object (light, trace of a pen, a long edge/ridge, etc) whose length, i.e. its longest dimension, follows the definition of the straight line can be considered/imagined as a straight line.

There are two main axiomatic systems for Euclidean geometry.

1- Hilbert’s Postulates.

The primitives are sets of points, lines, and planes. These are not generally and necessarily subsets of each other. For example a line may not considered as a set of points. Any physical object or non-physical notion that satisfies the axioms of Hilbert’s system can be recognized or interpreted as the primitives. However, notions like “a point lying on a line” is defined.

In Hilbert’s system, the notions of a ray, a line segment, vector as directed line segment, an angle, and polygons are also defined based on the primitives and axioms. Hilbert’s system is purely geometrical, in that nothing is postulated concerning numbers and arithmetic. Although this system has notions for comparing line segments, and comparing angles with each other, it does not have a metric for distance between two points and a measure of angle. If the axioms of real numbers are considered along with the continuity axiom of Hilbert’s system [1], then it can be proved that there is a bijective map between points on a line and real numbers. Thereby, a distance function between two points and a measure of length can be defined for line segments. A measure for angles can also be constructed. Theses measures inject numbers and arithmetic into the Euclidean geometry founded on Hilbert’s axioms.

2- Birkhoff ’s postulates (axioms of a metric geometry)

Birkhoff’s axioms [2] of Euclidean geometry directly has an axiom on the existence of a map between real numbers and points on a line. This brings real numbers and arithmetic into the system and quantifies notions and facilitates proofs. This is because axioms of real number can be used in relation with geometric terms. The Birkhoff’s system is as follows.

Primitive/undefined objects: the abstract geometry of Birkhoff, \mathcal A consists of a set \mathcal P whose elements are called points together with a collection \mathcal L of non-empty subsets of \mathcal P, called lines. So, L\in\mathcal L \iff l\subset \mathcal P.

Primitive terms: point, line, coordinate function of a line, half-line, bundle of half lines (BHLs), and coordinate functions of BHLs.

Note that line should not be considered as a straight line. It can be interpreted as a straight line but not limited to.

1- Axiom on lines: If A and B are two distinct points, then there exists one and only one line containing A and B. I.e A,B\in \mathcal P and A\ne B then \exists L\in\mathcal L | A,B\in L.

Definition: A set of points is said to be collinear if this set is a subset of a line. Two sets are collinear if the union of these two sets is collinear.

2- Axiom on coordinate function of a line: There exists associated with each line L, a nonempty class X of one-to-one mappings x of L onto the field \mathbb R of real numbers. If x\in X and if x^*:L\to \mathbb R is any one-to-one mapping, then x^*\in X if and only if for all A,B\in L,

    \[|x(A)-x(B)| = |x^*(A)-x^*(B)|\]

For a line L, the elements of X are called coordinate functions or ruler of L.

The above axiom is called the ruler placement axiom and indicate that different maps x:L\to \mathbb R are like rulers along a line. It does not matter where to put a ruler; all rulers gives the same value of |x(A)-x(B)| for two fixed points A and B. This guarantees that the members of X are well-defined.

As the result of the axiom, a line (and later a ray and a segment) has an infinitely uncountable number of points.

precedence relation: Because the coordinate function is one-to-one, any sequence of points is mapped to a monotonic sequence of real numbers. Therefore, we can define the precedence relation between to different points A,B of a line as A\prec B \iff x(A) < x(B).

Lemma: For any two points A,B on a line with a fixed ruler, either A \prec B or B \prec A.

Lemma: Assuming a precedence relation for two points of a line determines a class of rulers for the line such that the precedence relation (for all points) are the same for any of the rulers.

Definition: A precedence relation on a line can define a direction for a line. Let A\prec B. Then we can say the direction or the sense of direction of the line is from the point A to the point B. Similarly, the direction of the line is from B to A if B\prec A. Therefore, two different directions can be defined for a line. The direction of a line can be represented by an arrow, or a directed line segment which latter is called a geometric vector.

The distance between two point A,B\in L is denoted by |AB| or |BA| and is defined to be the unique non-negative number |x(A)-x(B)| where x is an arbitrary member of X. As a result, the distance between two arbitrary point is calculated through constructing a line between them and using the coordinate function of the line. Obviously, for any pair of points and their line in the geometry we should use the same ruler if we want to be consistent.

Betweennees relation: For A,B,C\in L, i.e. on the same line, the point B is between the points A and C if either x(A)<x(B)<x(C) or x(C)<x(B)<x(A). It can be proved that this relation is independent of the coordinate function. As a result, |AB|+|BC|=|AC|.

if O and A are two distinct points of a line, we call the set of points P on that line such that O is not between A and P, a half-line or a ray with end-point O. In speaking of a ray (O,A), the first point O always represents the end point. Two rays are collinear if their points belong to the same line.

For A,B\in L, the sets of points P containing A and B and all between them is called a segment of L. A segment without its end point is called an interval. A segment is denoted as \overline{AB} and its length is |AB|.

Definition: Two line segments \overline{AB} and \overline{CD} of a line or two different lines are called congruent if |AB|=|CD|. The relation being a binary relation is denoted as \overline{AB} \cong \overline{CD}.

3- Axioms on bundles and coordinates of the rays of bundles

Definitions: Certain subclasses (sub sets) of the class (set) of all rays with the same end point are called bundles. The common end point O of the rays of a bundle is called the vertex of the bundle. A bundle with a vertex O is denoted as B_o. An angle is an unordered couple of rays with the same end point O which is called the vertex of the angle, and the rays are called the sides of the angle. An angle is straight if the sides are distinct and collinear (on the same line, i.e. being the subset of the same line).

The word certain in the above definition is important. It says only specific subsets of the set of ALL RAYS with THE SAME end point/vertex is categorized as bundles. Firstly, it means different bundles can have/share the same vertex. Secondly, by the following axiom on the coordinate functions of bundles and later the definition of a plane, it will be clear that the rays of a bundle must all belong to the same plane.

Axiom on bundles: If a and b are two non-collinear rays with the same endpoint O, then there exists one and only one bundle B_o containing these rays. If they are collinear then they (their points) can belong to other bundles with different vertices.

Axiom on the coordinate functions of bundles (protractor axiom): There exists, associated with each bundle B_o, a nonempty class \phi of one-to-one mappings \phi of B_o onto the equivalence classes of real numbers modulo 2\pi (i.e. x=y \text { mod } 2\pi \iff x = y + k2\pi, k\in \mathbb Z. If \phi_i is a member of \phi and if \phi^* is any one-to-one mapping of B_o onto the equivalence classes of real numbers modulo 2\pi, then \phi^*, is a member of \phi if and only if for all l,m\in B_o |\phi_i(l)-\phi_i(m)| = |\phi^*(l)-\phi^*(m)| modulo 2\pi. The elements of \phi are called the coordinate functions of B_o. If x\in \mathbb R then [x] is defined to denote the equivalence class modulo 2\pi containing x, and \bar x is the real number of class [x] such that 0\le \bar x < 2\pi.

Measure of an angle: if l,m\in \B_o, A\in l and B\in m, the the measure of the angle AOB is denoted by \angle AOB and defined as the minimum of \overline{\phi(l)-\phi(m)} and \overline{\phi(m)-\phi(l)} where \phi is the coordinate function associated with the bundle B_o. The number \angle AOB is independent of the coordinate function and It can be proved that the measure of an angle is independent of the bundle it belongs to.

Continuity axiom: If B_o is a bundle of vertex O, and if A, B are distinct nonvertex points of noncollinear rays of the bundle, then to every point P on the segment AB, there exists a ray OC of B_o containing P such that [\angle AOP + \angle POB]=[\angle AOB]. Conversely if a ray OC of the bundle B_o is such that [\angle AOC+ \angle COB] = [\angle AOB] then there exist a point P belonging simultaneously to the ray OC and to the segment AB.

Theorem: The measure of an angle is \pi if and only if this angle is straight.

Theorem: If m and n are two noncollinear rays of a bundle B_o, then there exists one and only one coordinate function\phi such that \bar \phi (m) = 0 and \bar \phi(n)<\pi. This theorem says that the measurement of angles can be intuitively obtained in the usual way as the application of a protractor (plain or half-disk) in such a way that one side of the angle coincides with the zero of the protractor and the other side corresponds to a number less than \pi (the measure of the angle).

Corollary: If OA, OB and OC are three distinct rays of a bundle and if OA and OB are collinear, then \angle AOC + \angle COB =\pi.

Corollary: If l is a ray of a bundle B_o and if 0<a<\pi then there exist two and only two distinct rays m and n of the bundle such that \angle Im = \angle In = a.

Lemma: Let l be an element of a bundle B_o and let 0<\alpha, \beta<\pi, If m\in B_o such that \angle Im = \alpha, then there exists a ray n\in B_o with the following properties: (a) \angle In = \beta, (b) for all points A \in m and for all points B \in n such that A\ne B the segment AB has a point P in common with the unique line containing the ray l.

Two distinct lines having a point in common determine six angles. Two have \pi for the measure and we the four remaining ones form two sets, each set consisting of two distinct angles with the same measure.

Definition: Two distinct lines having a point in common are said to be perpendicular if the four angles with measures not equal to 0 or \pi have the same measure i.e., \pi/2.

Lemma: If l is a line and P is a point not on l, then there exists one and only one line containing P and perpendicular to l.

Definition: A plane is defined to be the set of all points belonging to the rays of a bundle B_o; this set will be denoted by \{B_o\}.

Theorem: If two distinct points of a line are in a plane, then the whole line is in the plane.

Theorem: A plane is uniquely defined by 3 non-collinear points. In other words, two planes coincide if and only if they have three non-collinear points in common.

Theorem: If two planes have two collinear points in common, they have a line in common.

Definition: If two lines of a plane have no point in common, then they are parallel.

Theorem: In a plane, from a given point not on a given line there exists one and only one perpendicular to that line, and from a given point not on a given line,there exists one and only one parallel to that line.

4- Axiom and theorems on triangles

A triangle is an unordered set of three distinct points. The points are the vertices of the triangle. The three segments defined by the vertices of a triangle are the sides of the triangle. The three angles defined by the sides of a triangle are the angles of the triangle. A triangle is assumed to be a proper one meaning that the vertices are non-collinear. triangle. In the context of triangles, for instance a triangle ABC, the measure of an angle, say angle ABC with vertex B, will be denoted \angle B. Two triangles are similar if the vertices can be labelled A, B, C and A', B', C' in such a way that, AB/A'B'=BC/B'C' = CA/C'A' AND \angle A=\angle A', \angle B = \angle B', \angle C =\angle C'. The notation / denotes the ratio of the lengths.

Axiom of similarity: If two triangles ABC and A'B'C' are such that AB/A'B'=BC/B'C' and \angle B = \angle  B', then they are similar.

Birkhoff wrote the above statement as an axiom. But, I think it can be proved; see Ref 1. Based on the above axiom, several theorems on the similarity of triangles can be obtained. They are skipped here; see Ref 2.

Two important theorems on triangles are as follows.

Theorem (Euclidean geometry) : The sum of the measures of the angles of a triangles is equal to \pi.

Theorem: If a triangle ABC is such that \angle  A = \pi/2, then (AB)^2+ (AC)^2 = (BC)^2 (proof based on similarity of triangles).

5- Axiom of 3-dimensional euclidean space: There exists a point not on a given plane.

Geometric forms: A geometric form in a geometric space is a subset of points satisfying a certain condition. This subset with its condition is also called a locus of points. For example lines, triangles, and planes are geometric forms. Other geometric forms are circles, polygons, or any imaginable form. As an example, an Euclidean circle is a set of points in a Euclidean plane such that they all have the same distance from a fixed point. A sphere is a set of points in a Euclidean 3D space such that they all have the same distance from a fixed point.

2- Some definitions and theorems

2-1 general stuff

Definition: For a straight line l intersecting a plane \alpha at a point O. The line is said to be perpendicular to the plane if it is perpendicular to all straight lines lying on the plane and passing through the point O.
Theorem: A line intersecting a plane at a point O is perpendicular to this plane if and only if it is perpendicular to some two distinct straight lines lying on the plane and passing through the point O (for a proof see [1] page 84).

2-2 Congruent transformation (translation)*

* Congruent transformation is referred to as congruent translation in Ref 1.

Definition: Let a,b be two (different) lines. Then, a mapping f:a\to b is called a congruent transformation of the straight line a to the straight line b if for any two points X and Y on the line a the condition of congruence \overline{f(X)f(Y)} \cong \overline{XY} is fulfilled. Congruent transformation can also be composed of general rotation and pure translation as explained in page 134 Ref 1.

Assume two lines with particular directions and points an shown. We can define two mappings f^+ and f^- of congruent transformation of the first line (black) to the second line (blue) as

    \[ f^+(O) = Q\quad f^+(E_+)=F_+ \quad\tex{ and } \quad f^-(O) = Q\quad f^-(E_+)=F_-\]

Theorem: For any point O on a straight line a with a distinguished direction and for any point Q on another straight line b with a distinguished direction there are exactly two mappings f: a\to b performing congruent transformation of the line a to the line b. The first of them {f^+}_{OQ} preserves the precedence of points, i. e. X \prec Y implies {f^+}_{OQ}(X) \prec {f^+}_{OQ}(Y). The second mapping inverts the precedence of points, i. e. X \prec Y implies {f^−}_{OQ}(Y) \prec {f^−}_{OQ}(X).

2-2-1 Translation and inversion

Let a be a line and two points O,Q \in a forming a vector \vec {OQ}. Fixing a direction for the line using a vector \vec {AB}, we can define a mapping \rho_{OQ}:a \to b as \rho_{OQ}:= {f^+}_{OQ}. This mapping is called congruent translation by the vector \vec {OQ}. The vector \vec {AB} determines the order of points on the line. The mapping preserves the precedence of the points and is uniquely defined by its action being mapping the initial point O of the vector \vec {OQ} to its terminal point Q. Therefore, it maps any point X on the line to another point Y on the line such that X and Y construct a vector \vec {XY} and \overline{OQ} \cong \overline{XY}.

The proof is as follows. Given that \rho_{OQ}(O)=Q, and an arbitrary point X\in a such that \rho_{OQ}(X)=Y, we can write \overline{OX} \cong \overline{QY}. Without loss of generality we can assume O\prec X therefore Q \prec Y. Now assume that Q\prec X. Therefore, \overline{OX} = \overline{OQ} \cap \overline{QX}. Since \overline{OX} \cong \overline{QY}, we should have X\prec Y. Otherwise, Y is between Q and X and hence \overline{OX} = \overline{OQ} \cap \overline{QY} \cap \overline{XY} contradicting with \overline{OX} \cong \overline{QY}. Now, we can write \overline{QY} = \overline{QX} \cap \overline{XY}. Hence,

    \[\overline{OQ} \cap \overline{QX}  \cong \overline{QX} \cap \overline{XY} \implies \overline{OQ} \cong  \overline{XY}\]

which completes the proof.

This mapping is called congruent translation by a vector \vec_{OQ}because it models the translation of a particle that moves from a point O to a point Q along a line.

Lemma: Because \rho_{OQ} preserve the precedence over the line, it will preserve the initial and terminal points marked on a vector. Note that the direction of a line is set independently; the initial and terminal points of a vector on a line does not show their precedence.

Lemma: if O=Q, then \rho_{OO} is the identity map.

Remark: Later that we define the affine space, any map that take a point X and add it to a fixed free vector and returns another point is a congruent translation along the line passing through the point X and defined (including its direction) by the free vector.

If we let \eta_{OQ}:= {f^-}_{OQ}, the this map does not preserve the precedence and is called inversion.

3- Geometric vectors and Euclidean geometric vector space

A geometric vector is a directed line segment (abstract) in a sense that one of the segment’s end point is distinguished/marked with respect to the other. A line segment is then can define two distinct geometric vectors. For a line segment AB, its two vectors are denoted as \vec{AB} and \vec{BA}. The first and last points of a vector are respectively called the initial and the terminal points.

Definition: The/a zero vector is a vector whose initial and terminal points coincides.

Note: Saying that a vector belongs to or lies on a line or a plane means its end points belong to/lies on the line/plane.

Definition [EV1]: Two vectors \vec {AB} and \vec {CD} lying on one line are called equal if they are co-directed and if the segment AB is congruent (pure coincident if translated) to the segment CD.

There can be 3 types of vectors:

1- Position vectors or (pure) geometric vectors: A position vector is a vector whose position is fixed in the space.

2- Sliding vectors: A sliding vector is a vector that is free to slide along its line. In other words, a sliding vector is a class of mutually equivalent vectors in the sense of the definition EV1. A slipping vector has infinite representatives lying on a given line. They are called geometric realizations of this slipping vector.

3- Free vectors: The classes of mutually equal vectors in Euclidean geometry space are called free vectors. Geometric vectors composing a class (of free vectors) are called geometric realizations of a free vector. The concept of equal vectors in space is as follows.

Definition: Two vectors \vec {AB} and \vec {CD} NOT lying on one line are called codirected if they lie on parallel lines, and the segment BD connecting their end points does not intersect the segment AC connecting their initial points.
Definition: Two vectors\vec{AB} and \vec{CD} in the space are called called equal if they are codirected and if the segment AB is congruent to the segment CD. The congruency of straight line segments can be inferred by their lengths. The equality of vectors in the space is reflexive, symmetric, and transitive.

Noe that the concept of parallel lines are in a plane, i.e. two different lines are parallel if they are in a plane and have no intersection.

ِFor any free vector \vec {a} and for any point A there is a geometric realization \vec {AB} of \vec {a} with the initial point A.

Free vectors, lines and planes: By realization of a free vector with a particular initial point, a directed line segment (with the initial and the terminal points) is born and hence the corresponding line containing the point and the vector. By realization of two non-collinear vectors with the same initial point, a plane containing the point and the two vectors is defined.

Euclidean geometric vector space: Generally a vector is not limited to geometric vectors. A vector is in fact a member of a vector space. Geometric vectors defined as directed line segments also belong to a vector space. A vector space is a set on which addition operation and multiplication by a scalar (or any other field) are defined and the set is closed under these operations (some other axiom also exist in the definition of a vector space). Geometric vectors also belong to a space called the Euclidean geometric vector space denoted as \mathbb E.

Remark: since \mathbb E is closed, its members are free vectors, i.e. the classes of mutually equal vectors. This means the space is not restricted to a set of realizations of geometric vectors.

Remark: When working with \mathbb E, i.e the space of free geometric vectors, their arbitrary realizations in the geometric space are recruited. In this regard, they are treated as directed line segments. Also, we have all the properties of the geometric space (points, lines, planes, axioms, theorems, etc). So, we can develope theorems and show that they are independent of a particular realization.

In the geometric vector space the multiplication by a scalar scales the length of the vector (line segment) in the same direction if the scalar is positive. The direction of the vector is reversed and then scaled if the scalar is negative. The addition of vectors \vec{AB} and \vec{CD} is by treating them as free vectors and translating \vec{AB} such that the end point B get coincided with the end point C, then the new vector \vec{AD} is the result of \vec{AB} + \vec{CD}.

Like any other vector spaces, the Euclidean geometric vector space have bases and hence vectors can be written in terms of the basis vectors. This generates coordinates for the vectors. The dimension of the Euclidean vector space is at most 3, i.e. three dimensional physical space denoted as \mathbb E^3.

Other than properties and operations regarding vectors, the definition of angle also exists in the Euclidean geometric vector space. The angle between two vectors is the angle between they lines when both vectors are treated as free vectors and their geometric realizations share the same starting point.

3- Conditionally geometric vectors:

If we considers the locations in the physical space as the notion of points and construct the Euclidean geometry, then a vector from a spatial point to another is called a displacement vector. This vector binds some two points of the geometric space. The lengths of this vector is a geometric length defined based on the ruler placement axiom. The unit of the length is defined by a length scale like meter.

A displacement vector is a geometric vector as it’s in the geometric space. A geometric vector has direction and a relative orientation/angle (with other geometric objects). Some physical phenomena like velocity, acceleration, force, etc have also the senses of geometric directions and geometric orientations in the physical space. Moreover, they are bound to some points in the space, i.e. the physical effect is bound or recognized at a point. For example we say “force at a point/location” or “velocity of an object at a point/location”. Therefore, in the physical space recognized as a model of the Euclidean geometric space, the bounding point, orientation, and direction of this type of vectors have geometric representations, i.e. a point, angle, sense of direction. However, these vectors do not have geometric length, in other words, their bounding point can be recognized as either the initial or the terminal point of a vector. Therefore, there is not a direct geometric representation of such a vector unless a geometric length through choosing some scale factor is assumed. Any non-geometric vector that can have a geometric representation upon setting a geometric orientation, direction, and length is called a Conditionally geometric vector.

3-1 Coordinates of a vector in the spacial Euclidean geometric vector space

Let \vec{u}, \vec{v}, \vec{w} be an ordered set (sequence) of different independent geometric (free) vectors in \mathbb E^3; i.e. they are not co-planar all together. Then, they form a basis for the space and any vector \vec{r} is a linear combination of them, i.e. \vec{r}=x\vec{u} +y\vec{v}+z\vec{w}. The scalars [x,y,z] are called the coordinates of \vec{r}. For any vector and a basis \mathcal B, there a unique coordinate function defined as [\cdot]_{\mathcal B}:\matbb E^3 \to \mathbb R^3.


3-2 Dot/scalar product

Noting that there are a definition/notion of angle and definition of triangular functions in \mathbb E^3, we can define a function, called the dot or scalar product, as \bullet : \mathbb R^3 \times \mathbb R^3 \to \mathbb R acting as \vec{a} \cdot \vec{b}:=\|a\|\|b\|\cos (\theta), where \| \vec{v}\| returns the length of the vector, i.e. the line segment of the vector. As a result perpendicularity of vector implies \vec a \cdot \vec b = 0.

3-2-1 Orthogonal projection onto a line

Theorem: For any nonzero (geometric) vector \vec a and for any vector \vec b, there are two unique vectors \vec b_\parallel and \vec b_\perp such that \vec b_\parallel is collinear to \vec a, and \vec b_\perp is perpendicular to \vec a, and they both satisfy \vec b = \vec b_\parallel +  \vec b_\perp.

Proof is by geometric realization of the vectors, and using the theorem that says there is a plane containing \vec a and \vec b, and the theorem that states there is perpendicular line to another line l from any point not on l.

Definition: For any vectors \vec b and \vec a\ne \vec 0, the mapping \pi_{\vec a}: \vec b \mapsto \vec b_{\parallel} is called the orthogonal projection of \vec b onto the direction of \vec a or onto the line containing (collinear with) \vec a.

Theorem [OP1]: For each vector \vec a \ne \vec 0 and for a vector \vec b:

    \[ \vec b_{\paralel} = \pi_{\vec a}(\vec b) = \frac{\vec b \cdot \vec a}{\|\vec a\|^2}\vec a\]

Proof: to prove that two geometric are equal, we should prove that they lengths are equal and also they are co-directed. The first part can be proved by the definition of dot product and \vec b_{\paralel} = \|\vec b\| = |\cos \phi| as in the previous figure. The second part is proved by showing that \vec b_{\parallel} is in the same direction as the RHS for 0\le \phi <\pi/2, \phi = \pi/2, and \pi/2 < \phi \le \pi.

Lemma [OP2]: For any \vec a\ne \vec 0 the sum of two vectors collinear to \vec a is a vector collinear to \vec a and the sum of two vectors (each) perpendicular to \vec a is a vector perpendicular to \vec a.

Proof: The first part is straight forward. For the second part we assume \vec b and \vec c are not either collinear or parallel as the proof becomes straight forward. So, we assume \vec b \nparallel \vec c. Now, build a realization for \vec b as \vec{OB} at an arbitrary point O and a the realization of \vec c as \vec {BC}; Since the realizations are not parallel, they construct a plane. The resultant vector \vec {OC} = \vec {OB} + \vec {BC} is in the plane and it is the realization of \vec b + \vec c. Now consider another realization of \vec a = \vec {BD} at B. Each realization corresponds to a line; since the line OA\perp OB and BD \perp BC (since OA \parallel BD), then OA \perp BC. Therefore, OA is perpendicular to two lines in a plane, and hence it is perpendicular to all lines including OC in the plane. This implies that \vec a = \vec{OA} is perpendicular to \vec b + \vec c = \vec{OC}.

Theorem: \pi_{\vec a} is a linear mapping, i.e. \pi_{\vec a}(\vec b + \vec c) = \pi_{\vec a}(\vec b) + \pi_{\vec a}(\vec c) and \pi_{\vec a}(\alpha \vec b) = \alpha \pi_{\vec a}(\vec b).

Proof: Let \vec d:= \vec b + \vec c. Using the orthogonal projection, we can write, \vec b = \vec b_{\parallel} + \vec b_{\perp}, \vec c = \vec c_{\parallel} + \vec c_{\perp}, and \vec d = \vec d_{\parallel} + \vec d_{\perp} with respect to \vec a. Therefore,

    \[\vec d = \vec b + \vec c = (b_{\parallel} + c_{\parallel}) + (b_{\perp} + c_{\perp})\]

By the lemma (OP2), (b_{\parallel} + c_{\parallel})\parallel \vec a and (b_{\perp} + c_{\perp}) \perp \vec a. Therefore, d_{\parallel} = b_{\parallel} + c_{\parallel} and d_{\perp} = b_{\perp} + c_{\perp}. Using theorem OP1,we can deduce,

    \[\pi_{\vec a}(d) = \pi_{\vec a}(b+c)= d_{\parallel} = b_{\parallel} + c_{\parallel} = \pi_{\vec a}(b) + \pi_{\vec a}(c)\]

The second property can be proved by theorem OP1.

3-2-2 Properties of the dot product (theorem)

1- \vec a\cdot \vec b = \vec b\cdot \vec a
2a- (\alpha \vec a)\cdot \vec b = \alpha (\vec a \cdot \vec b)
2b- \vec a \cdot (\alpha)\vec b = \alpha (\vec a \cdot \vec b)
3a- (\vec a + \vec b)\cdot \vec c = \vec a \cdot \vec c + \vec b \cdot \vec c
3b- \vec a \cdot (\vec b + \vec c) = \vec a \cdot \vec b + \vec a \cdot \vec c
4- \vec a \cdot \vec a = \|\vec a\|^2 \ge 0 and \vec a \cdot \vec a=0 \implies \vec a = \vec 0

Proof: Only the 3rd one will be proved as the rest can be readily proved through using the definition.

If \vec c =\vec 0, then it is a trivial case. If not, we can use theorem OP1 and write

    \[\pi_{\vec c}(\vec a + \vec b) - \pi_{\vec c}(\vec a) -\pi_{\vec c}(\vec b) = \frac{(\vec a + \vec b)\cdot \vec c - \vec a \cdot \vec c - \vec b \cdot \vec c }{\|\vec c\|^2}\vec c\]

By the linearity of the orthogonal projection, the LHS of the above equation is zero, hence the proof is implies by setting the RHS equal to zero. The property 3b is then proved by the using the first property and 3a which is already proved.

In terms of type, the dot product is a bilinear map.

3-2-3 Calculation of the scalar product through the coordinates of vectors in a skew-angular basis

Definition: a skew-angular basis (SAB) for \mathbb E^3 is an orered set of non-coplanar vectors. The angle between each pair is not necessarily a right angle.

Let \vec e_1, \vec e_2, \vec e_3 be a SAB. Also consider two free vectors \vec a and \vec b. Each vector can then be written in terms of the basis vectors as,

    \[\vec a = \sum a_i\vec e_i \quad \text{ and } \vec b = \sum b_i\vec e_i\]

where a_i and b_i are the coordinates of \vec a and \vec b respectively.

Using the Einstein notation and the properties of the dot product, the dot product \vec a \cdot \vec b is written as

    \[\vec a \cdot \vec b = (a_ib_j)\vec e_i\cdot \vec e_j\]

The terms g_{ij}:=\vec e_i \cdot \vec e_j do not depend on the vectors \vec a and \vec b; but on the lengths of \vec e_is and the angles between them. If the values g_{ij} are collected in a symmetric matrix, the matrix is called the Gram matrix of the basis \vec e_1, \vec e_2, \vec e_3. The above equation can be written using matrix multiplications as

    \[\vec a \cdot \vec b = a^TGb \quad \text{ or } = b^TGa\]

where a^T =[a_1\ a_2\ a_3], G=[g_{ij}] and b = [b_1\ b_2\ b_3]^T. This equation expresses the dot product through the coordinates of vectors in a skew-angular basis.

Proposition: If the basis of the space is an orthonormal basis, i.e. for any basis vector \|\vec e_i\|=1 and for any pair of the basis vectors \vec e_i\cdot \vec e_j=0, then G becomes the identity matrix and \vec a \cdot \vec b = a^Tb = b^Ta

3-3 Concept of orientation and the cross/vector product

ِDefinition: An ordered triple of non-coplanar vectors \vec a,\vec b, \vec c is called a right triple if, when they are geometrically realized with the same initial point and observed from the end/terminal of the third vector, the shortest rotation from the first vector toward the second vector is seen as a counterclockwise rotation. If the rotation is seen clockwise, then the triple is called a left triple.

Definition: The property of ordered triples of non-coplanar vectors to be right or left is called their orientation.

Definition: The cross/vector product is defined as \times : \mathbb E^3 \times \mathbb E^3 \to \mathbb E^3 acting as \vec{a} \times \vec{b}:=\big (\|a\|\|b\|\sin (\theta) \big ) \hat{n} where 0 \le \theta \le \pi and \hat n is a vector perpendicular to both \vec a and \vec b and pointing in the direction defined by the right hand rule, i.e. the vectors \vec a, \vec b, \vec c form a right triple.

Definition: The the orthogonal complement a free vector \vec a is the set of all free vectors \vec x perpendicular to \vec a; i.e. \alpha_{\vec a}=\{\vec x: \vec x \perp \vec a\}.

The orthogonal complement \alpha_{\vec a} of a vector \vec a can be visualized as a plane or vectors in a plane if one of the geometric realizations of the vector is considered as \vec {OA}. Indeed, all vectors starting from the initial point O and perpendicular to \vec {OA} has ending points in (belongs to) the plane \alpha.

In 1-1-3, it was shown that if a vector \vec a \ne vec 0 is given, then any vector \vec b can be written as

    \[\vec b = \vec b_{\parallel} + \vec b_{\perp} = \pi_{\vec a}(\vec b) + \vec b_{\perp}\]

where \vec b_{\parallel} =  \pi_{\vec a}(\vec b) is the orthogonal projection of \vec b onto the direction of \vec a and \vec b_{\perp} is the component of \vec b perpendicular to \vec a and hence \vec b_{\parallel}. The vector \vec b_{\perp} is called the orthogonal projection onto a plane perpendicular to \vec a, or the orthogonal projection onto the orthogonal complement of \vec a.

Denoting \vec b_{\perp} as \pi_{\perp \vec a}(\vec b), we can write,

\vec b = \pi_{\vec a}(\vec b) + \pi_{\perp \vec a}(\vec b) \tag{OP1}

Theorem [OPP]: The function \pi_{\perp \vec a} is a linear mapping, i.e. \pi_{\perp \vec a}(\vec b + \vec c) = \pi_{\perp \vec a}(\vec b) + \pi_{\perp \vec a}(\vec c) and \pi_{\perp \vec a}(\alpha \vec b)= \alpha \pi_{\perp \vec a}(\vec b).

Proof: Use Eq. OP1 and write (\vec b + \vec c)= \pi_{\vec a}(\vec b + \vec c) + \pi_{\perp \vec a}(\vec b + \vec c) and use the linearity of \pi_{\vec a} and then arrange the terms and use Eq. OP1 again. The same procedure can be done for the second condition.

Rotation about an axis:

Let \vec a, \vec b be two non-zero vectors. Lay the vector \vec b at some arbitrary point B and get the realization \vec {BO}. Then lay the vector \vec a = \vec {OA}. This non-zero vector defines a line OA. We take this line as a rotation axis. For this setup, we define a function \theta_{\vec a}^\varphi: \vec{BO} \mapsto \vec {CO} and for now we call it the function of rotation of \vec {BO} about the axis OA. The rotation function works as follows.

\theta_{\vec a}^\varphi(\vec {BO}) = \vec {BO} \iff B \in OA. Otherwise,

    \[\theta_{\vec a}^\varphi(\vec {BO}) = \vec{CO} \ne \vec {BO} \]

such that:
1- B and C belong to a plane \alpha being perpendicular to OA.
2- \|\vec {CO}\| = \|\vec {BO}\|
3- The angle between the vectors \vec {PB} and \vec {PC} where P is the intersection point of OA and the plane \alpha. The angle is a signed angle with respect to the counterclockwise direction.

The vector \vec {CO} is a realization of any vector \vec c being equivalent to \vec {CO} by parallel translation. This is also true for \vec {BO} being the realization of \vec b. Moreover, the parallel translation of \vec a indicates that the rotation function does not depend on the realization of the rotation axis vector. Therefore, we can re-define the rotation function over the vector space as:

    \[\theta_{\vec a}^\varphi: \mathbb E^3 \to \mathbb E^3\]

Remark: If \vec b \parallel \vec a, then \theta_{\vec a}^\varphi(\vec b)=\vec b.

Theorem [RF]: The rotation function \theta_{\vec a}^\varphi: \mathbb E^3 \to \mathbb E^3 is a linear mapping.

The relation of the cross product with projections and rotations:

For two non-colinear vectors \vec a and \vec b we can write \|\vec c\|=\|\vec a\|\|\vec b\| \sin \var phi and sketch the following realization.

The resultant vector \vec c lies in the plane \alpha perpendicular to \vec b (because \vec c\perp \vec b therefore there is a unique plane that contains \vec c AND perpendicular to \vec b). The orthogonal projection of \vec a onto the plane is \vec a_{\perp} = \pi_{\perp\vec b} (\vec a) whose length is \|\vec a_{\perp}\| = \|\vec a\|\sin \varphi

3-3-1 Properties of the cross product (theorem)

2- Affine geometric space

A geometric vector is defined as a directed line segment which has two points. Here, the final produced object, vector, belongs to a vector space like \mathbb E^3, but its fundamental components which are the endpoints belong to the geometric space, like \mathcal G. The line segment can be implied by the two end points because of the axiom of the Euclidean geometry stating that there is a unique line for every two distinct points. So, there should be a connection between the geometric space and the vector space. This is defined by the concept of an affine space as follows.

Definition: Let \mathbb V be a vector space over the field \mathbb F, and let \mathcal S\ne \emptyset be a set. The addition +:\mathcal S \times \mathbb V \to \mathcal S written as p + \vec v is defined for any p\in \mathcal S and \vec v \in \mathrm V with the following conditions:

1- p + \vec 0 = p
2- (p + \vec v) + \vec u = p + (\vec v + \vec u)
3- For any q\in \mathcal S there exists a unique vector \vec v \in \mathbb V such that q=p + \vec v.

Then, \mathcal S, is called an affine space.

With the above abstract definition, the affine Euclidean geometric space is defined by letting the \mathbb V = \mathbb E^3 and \mathcal S = \mathcal G where the geometric space \mathcal G is inherently a set of points (an axioms). The notion is clear that a point plus a vector takes us to another points; these points become the end points of the realization of the geometric vector.

3- Models of Euclidean geometry

One model for Euclidean geometry is to define a point as (the imagination of) an exact location which has no dimension/size in the space. A line is defined as a straight line which is an infinitely long object in any (two) directions and has no width or thickness, and it uniquely exists (or can be defined/constructed) between any two points. A flat surface that is infinitely wide and has zero thickness is a model of a plane. A flat surface is an object whose any of its two points defines a line segment that is completely contained in the surface. This model of geometry can be referred to as the physical space geometry.

Another model for Euclidean geometry is as follows. Let S=\mathbb R^2 =\{(x,y)| x,y\in \mathbb R\} be the set of points, i.e. a point is now defined as an ordered pair in \mathbb R^2. Define lines as: 1- a vertical line \mathbb R^2 \supset L_a:=\{ (x,y)\in \mathbb R^2 |x=a\}, 2- a non-vertical line as \mathbb R^2 \supset L_{m,b}:=\{(x,y)\in \mathbb R^2 |y=mx+b\}. Then, it can be proved that the structure \{S, \mathcal L:=\{L_a\} \cup \{L_{m,b}\}\} satisfies the axioms of lines in Euclidean geometry. The model \{\mathbb R^2, \mathcal L\} is called the Euclidean plane. A coordinate function (axiom of ruler) of a line in this space is constructed as follows.

For a line l, assume that there is a distance function d on l. As previously defined, a function f: l \to \mathbb R is called a ruler or a coordinate system for l if (1) f is a bijection, and (2) for each pair of points P and Q on l, |f(P) - f(Q)| = d(P,Q). This equation is called the ruler equation and the value and f(P) is called the coordinate of P with respect to f.

For this space, if the Euclidean distance defined as d_E(P,Q)=\big( (x_1-x_2)^2 + (y_1-y_2)^2 \big)^{1/2} is considered as the distance function, the following rulers can be obtained for lines in the space.

Case 1: If l = L_a and P\in l, i.e. P=(a,y). Then, for P,Q\in l: d_E(P,Q) = ((a-a)^2 + (y_P-y_Q)^2)^{1/2}=|y_P-y_Q|. Therefore, by the definition of the ruler function we can define f:l\to \mathbb R as f(P)=y_P as the coordinate function of a vertical line (the function can be proved to be injective).

Case 2: If l = L_{m,b} and P\in l, i.e. P=(x,y), where y=mx+b. Then, d_E(P,Q) =\sqrt{1+m^2}|x_P-x_Q|. This implies that a ruler function for this type of line is f(P)=x_P\sqrt{1+m^2}.

The model \{\mathbb R^2, \mathcal L, d\} is called the Euclidean metric geometry.

The only main axiom left to make \{\mathbb R^2, \mathcal L, d\} a complete model of the Euclidean geometry is the axiom of coordinate functions of bundles. Therefore, a measure on angles is needed. If l_1 and l_2 are two intersecting lines at a point O=(x_o,y_o), with points A=(x_1,y_2)\in l_1, and B=(x_2, y_2)\in l_2, then a measure of the angle \angle AOB satisfying the axioms of this measure is defined as:

    \[ \theta = m(\angle AOB) :=\cos^{-1} \frac{\vec {OA} \cdot \vec{OB}}{\|OA\| \|OB\|}\]

where \vec {OA}:=(x_1-x_o,y_1-y_o), \vec {OB}:=(x_2-x_o,y_2-y_o), and \vec {OA} \cdot \vec{OB} = (x_1-x_o)(x_2-x_o) + (y_1-y_o)(,y_2-y_o). Moreover, \|OA\|=d_E(O,A),  \|OB\|=d_E(O,B).

A remark with this formula is that it uses the inverse of a trigonometric function \cos which is not defined yet. Also, \vec OA might be interpreted as a vector which is not defined either. The dot operation is also familiar and can be interpreted as a vector dot product. So, far we have not defined these terms as they are conventionally defined. We just wanted to show that such a measure exists for the geometric model; hence we have a mode of the Euclidean geometry in which points are interpreted as pairs of real numbers. In this geometry, vectors can be defined, i.e. A,B\in \mathbb R^2 then \vec{AB} =B-A:=(x_B-x_A, y_B-y_A) is a vector which is a member of a vector space, here \mathbb R^2 when has the structure of a vector space. The function \cos and its inverse need the definition of a circle to get defined. Although a circle (as per its notion) can be defined in this geometry, there is a pure algebraic way to define \cos ^{-1} as per chapter 5 in Ref 3.

The motivation to this geometry which can also be expanded to \mathbb R^3 and the above formulations is the concept of coordinates of points in the physical space geometry. This notion is born as the result of the notion of coordinate systems explained in next section.

2- Coordinate systems—

Let \mathcal G represents the physical Euclidean geometric space consisting of points, lines, planes, line segments, vectors, etc.

2-1 Cartesian coordinate system

2-2 Other coordinate systems

[1] Sharipov R.A. – Foundations of geometry for university students and high-school students.
[3] Richard S. Millman – Geometry. A Metric Approach with Models.


Note: by \R^n, we indicate an Euclidean geometrical space, i.e. space of (geometric) points with an origin and equipped with a normed vector space.

1- Parametrized smooth curves

Definition: a parametrized smooth curve is a function \gamma:I\sub\R\to\R^n where I=(a,b) is an open interval in extended \R and \gamma is a smooth function. 
Note that a parameterized curve (always smooth) is referred to the function \gamma(t)=(\gamma_1(t), \dots,\gamma_n(t))\in \R^n, not to the function image \gamma(I), which is a set of points in \R^n.
By a curve we mean parametrized smooth curve unless otherwise stated. A curve in \R^n means a curve (function) whose image is in \R^n.

Definition: a parametrized curve \tilde{\gamma}:(\tilde{t_1},\tilde{t_2})\to\R^n is a reparametrization of the curve \gamma:(t_1,t_2)\to\R^n if there is a smooth bijection \phi:( \tilde{t_1},\tilde{t_2} )\to(t_1,t_2) such that the inverse map \phi^{-1}:( t_1,t_2)\to (\tilde{t_1},\tilde{t_2}) is also smooth and \gamma(\phi(\tilde{t}))=\tilde{\gamma}(\tilde{t}) \quad \forall \tilde{t} \in (\tilde{t_1},\tilde{t_2})\sub \R. Note that t = \phi(\tilde{t}). This indicates that \gamma is also a reparametrization of \tilde\gamma. Also note that \phi(t) is monotonic. If decreasing, we have t_2 = \phi(\tilde{t_1}) \gt t_1 = \phi(\tilde{t_2})\text{ for } \tilde{t_1}\lt \tilde{t_2}. This indicates that reparametrization can change the relative direction of a curve.

Curves with different reparametrizations have the same image and hence the same geometrical properties.

Note: \tilde{\gamma}(\tilde{t}):=\gamma(\phi(\tilde{t}))=(\gamma_1(\phi(\tilde{t})),\dots,\gamma_n(\phi(\tilde{t}))=(\tilde{\gamma_1}(\tilde{t}),\dots,\tilde{\gamma_n}(\tilde{t}))

Arc length and unit speed curves

For any parameter t,  \dot\gamma(t):=\frac{d}{dt}\gamma(t).

The arc length function is defined as:

s(t)=\int_{t_0}^t\|\dot{\gamma}(u)\|du\quad \in \R

That can be negative or positive depending on t is larger or smaller than t.

From a physical point of view, the trajectory of a moving point can be represented by a curve, therefore, the speed of a moving point along a curve (defined as the rate of change of its distance along the curve ) is:


A unit-speed curve is by definition is a curve with \|\dot{\gamma}(t)\|=1, \forall t\in I, i.e. \dot{\gamma}(t) is a unit vector. In applications for the sake of geometry, not physics, the speed of a curve is not important, therefore, considering a unit-speed parametrization of the curve is shown to simplify formulas and proofs. For example the following useful proposition is often useful in proofs:

Proposition: let n(t)\in\R^n\text{ with }\|n(t)\|=1,\forall t\in I be a smooth function of t, then n(t)\cdot\dot{n}(t)=0 meaning that  \dot{n}(t) is either perpendicular to n(t) or zero for all t. Proof by considering  n(t)\cdot n(t)=1. In particular, the proposition is true for \dot{\gamma}(t)\cdot  \ddot{\gamma}(t) when the curve is unit-speed.

Definition: A point P:=\gamma(t) of a curve [latext]\gamma[/latex] is called a regular point iff \dot\gamma(t)\neq 0; otherwise a singular point. A regular curve is a curve iff all of its points are regular.

Propositions: A reparametrization of a regular curve is regular and the arc length function of a regular curve is smooth. A regular curve has a unit-speed reparametrization, and a unit-speed curve is a regular curve. The arc length (s) is the only unit-speed reparametrization of a regular curve (actually u=\pm s + c for some constant c).

From above, the tangent vector (and speed of an object moving along a regular curve; it’s moving, not stationary) does not vanish at any point.

2- Curvature and torsion of a curve

The curvature is a measure of an extent to which a curve (geometric object) is not contained in a straight line. This impose zero curvature for straight lines. Torsion quantifies the extent to which a curve is not contained in a plane. Hence, plane curves have zero torsion.

To find the measure of curvature, a plane curve is considered. The results can easily be extended to curves in =R^3 and higher dimensional curves (by extending the definition).

Let \gamma(t)\in \R^2 be a unit-speed curve, i.e. t\equiv s and \dot\gamma(t)=n(t). For any parameter value t corresponding to a point P=\gamma(t), any changes \Delta t in the parameter gives another point of the curve P_{\Delta}:=\gamma(t+\Delta t). The distance between latter point and the tangent line at the former point is (the distance between a line and a point), is defined as the shortest distance between the line and the point. This is the length of the perpendicular line segment from the point to the tangent line. Therefore, a measure of distance is (\gamma(t+\Delta t)-\gamma(t))\cdot \hat n where \hat n is the unit vector perpendicular to the tangent line (\dot\gamma(t)\cdot \hat n=0). This is a signed distance. By Taylor’s theorem:

\gamma(t+\Delta t)= \gamma(t) + \dot\gamma(t)\Delta t + \frac{1}{2}\ddot\gamma(t)(\Delta t)^2 + O(\Delta t)^2

Therefore, (\gamma(t+\Delta t)- \gamma(t))\cdot \hat n \approx \frac{1}{2}(\Delta t)^2\ddot\gamma(t)\cdot\hat n. Because \gamma(t) is a unit-speed curve we have \dot\gamma \perp \ddot\gamma; which indicates \ddot\gamma \parallel \hat n. Therefore:

(\gamma(t+\Delta t)- \gamma(t))\cdot \hat n \approx \pm \frac{1}{2}\|\ddot\gamma(t)\|(\Delta t)^2

So the magnitude of the distance, i.e. \frac{1}{2}|\ddot\gamma(t)|(\Delta t)^2 indicates the deviation of the curve from its tangent line (at a particular point). For a fixed deviation in the parameter, and consequently in the point, the quantity \|\ddot\gamma(t)\| expresses the scale of the deviation from the tangent line which is a straight line. This suggests the following definition:

Definition: for a unit-speed curve \gamma(t)\in \R^n, its curvature is defined as \kappa(t):=\|\ddot\gamma(t)\|.

For any regular curve (which always can be reparametrized to a unit-speed curve), the curvature at a point is the magnitude of the rate of the change of the unit tangent vector at that point. For a unit speed curve, its simply \|\ddot\gamma(t)\| . For a general regular curve in \R^3 though:


The direction of \ddot\gamma(t)

The direction of \ddot \gamma is in the sense of the direction of the turning of the curve when tracked in its forward direction. The forward direction of a curve is the sense of moving from one point to the next point. The next point of a point \gamma(t) is \gamma(t+\delta t) for positive or negative \delta.

The curvature of a straight line is zero and \dot\gamma\cdot\ddot\gamma = 0 \iff \ddot\gamma=0 though \dot\gamma=c s.t. c\not= 0 being a constant.

Inquiring into a triangular mesh

All codes are written in Python and based on 3D plotting and mesh analysis library PyVista.

Cells connected to a node

To speed up finding the cells connected to a node, I initiate a dictionary with items {pointId : {cellIds}}. Using a set for cellIds leads to quick update and allows union properties of sets.

numOfPoints = mesh.n_points
meshPointIds = range(numOfPoints)
meshCells = mesh.faces.reshape(-1, 4)[:, 1:4]
pntIdCellIdDict = {pntId: set() for pntId in meshPointIds}
	for cellIndx, cell in enumerate(meshCells):
		for pntId in cell: