1. Problem Statement & Foundational Concepts Given three non-collinear points $A, B, C$ in $\mathbb{R}^3$, we aim to find a fourth point $D$ such that $ABCD$ forms a parallelogram. A parallelogram is a quadrilateral with two pairs of parallel sides. Key properties include: Opposite sides are parallel and equal in length. Diagonals bisect each other. The vector from $A$ to $B$ is equal to the vector from $D$ to $C$ (i.e., $\vec{AB} = \vec{DC}$). The vector from $A$ to $D$ is equal to the vector from $B$ to $C$ (i.e., $\vec{AD} = \vec{BC}$). Given points: $A = (-1, 0, 2)$, $B = (0, 1, 0)$, $C = (1, -1, 0)$. 2. Method 1: Vector Addition (Standard Approach) For $ABCD$ to be a parallelogram, the vector from $A$ to $B$ must be equal to the vector from $D$ to $C$. Mathematically, $\vec{AB} = \vec{DC}$. Calculate $\vec{AB}$: $B - A = (0 - (-1), 1 - 0, 0 - 2) = (1, 1, -2)$. Let $D = (x, y, z)$. Then $\vec{DC} = C - D = (1 - x, -1 - y, 0 - z)$. Equating the vectors: $1 - x = 1 \implies x = 0$ $-1 - y = 1 \implies y = -2$ $-z = -2 \implies z = 2$ Thus, $D = (0, -2, 2)$. Alternatively, we can use $\vec{AD} = \vec{BC}$. Calculate $\vec{BC}$: $C - B = (1 - 0, -1 - 1, 0 - 0) = (1, -2, 0)$. Let $D = (x, y, z)$. Then $\vec{AD} = D - A = (x - (-1), y - 0, z - 2) = (x + 1, y, z - 2)$. Equating the vectors: $x + 1 = 1 \implies x = 0$ $y = -2$ $z - 2 = 0 \implies z = 2$ This confirms $D = (0, -2, 2)$. Generalization: For any parallelogram $ABCD$, the position vector of $D$ can be found as $D = A + \vec{BC}$ or $D = C - \vec{AB}$. This is equivalent to $D = A + (C - B) = A - B + C$. $D = (-1, 0, 2) - (0, 1, 0) + (1, -1, 0) = (-1 - 0 + 1, 0 - 1 - 1, 2 - 0 + 0) = (0, -2, 2)$. 3. Method 2: Midpoint Property of Diagonals In a parallelogram, the diagonals bisect each other. This means the midpoint of diagonal $AC$ is the same as the midpoint of diagonal $BD$. Midpoint $M_{AC}$ of $AC$: $M_{AC} = \left(\frac{-1 + 1}{2}, \frac{0 + (-1)}{2}, \frac{2 + 0}{2}\right) = \left(0, -\frac{1}{2}, 1\right)$. Let $D = (x, y, z)$. Midpoint $M_{BD}$ of $BD$: $M_{BD} = \left(\frac{0 + x}{2}, \frac{1 + y}{2}, \frac{0 + z}{2}\right)$. Equating the midpoints: $\frac{x}{2} = 0 \implies x = 0$ $\frac{1 + y}{2} = -\frac{1}{2} \implies 1 + y = -1 \implies y = -2$ $\frac{z}{2} = 1 \implies z = 2$ Thus, $D = (0, -2, 2)$. Generalization: If $M$ is the midpoint of $AC$, then $M = \frac{A+C}{2}$. If $M$ is also the midpoint of $BD$, then $M = \frac{B+D}{2}$. Equating these gives $\frac{A+C}{2} = \frac{B+D}{2}$, which simplifies to $A+C = B+D$. Therefore, $D = A - B + C$. This confirms the result from Method 1. 4. Method 3: Affine Transformation and Geometric Interpretation An affine transformation preserves collinearity and ratios of distances, which means it maps parallelograms to parallelograms. We can view the problem as finding a translation. Point $D$ is obtained by translating $A$ by the vector $\vec{BC}$, or by translating $C$ by the vector $\vec{BA}$. Consider the origin $O=(0,0,0)$. The points $A, B, C$ can be seen as position vectors from the origin. The condition $\vec{AB} = \vec{DC}$ can be written as $B - A = C - D$. Rearranging gives $D = C - B + A$. This is the same algebraic manipulation as seen in Method 1. Geometrically, we are performing vector addition. If we place the tail of $\vec{BC}$ at point $A$, its head will be at point $D$. A B C D $\vec{AB}$ $\vec{BC}$ $\vec{AD}$ $\vec{DC}$ The diagram shows the vector relationships. $\vec{AD} = \vec{BC}$ implies $D = A + \vec{BC}$. 5. Method 4: Matrix Transformations (Advanced Perspective) While not strictly necessary for this problem, we can conceptualize this in terms of affine transformations. A translation $\mathbf{T}_{\mathbf{v}}(\mathbf{p}) = \mathbf{p} + \mathbf{v}$ is an affine transformation. We are effectively translating point $A$ by the vector $\vec{BC}$, or translating point $C$ by the vector $\vec{BA}$. Let $A, B, C, D$ be represented as column vectors in $\mathbb{R}^3$. We have $D = A - B + C$. This can be written as a linear combination of the points, though it's important to remember these are position vectors, not vectors from the origin in a free vector space context. If we use homogeneous coordinates, points in $\mathbb{R}^3$ are represented as vectors in $\mathbb{R}^4$ with a 1 in the last component. $A_h = \begin{pmatrix} -1 \\ 0 \\ 2 \\ 1 \end{pmatrix}$, $B_h = \begin{pmatrix} 0 \\ 1 \\ 0 \\ 1 \end{pmatrix}$, $C_h = \begin{pmatrix} 1 \\ -1 \\ 0 \\ 1 \end{pmatrix}$. The translation vector $\vec{v}_{BC} = C - B = (1, -2, 0)$. In homogeneous coordinates, a translation matrix $T$ would be: $T = \begin{pmatrix} 1 & 0 & 0 & 1 \\ 0 & 1 & 0 & -2 \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \end{pmatrix}$ Applying this translation to point $A$: $D_h = T \cdot A_h = \begin{pmatrix} 1 & 0 & 0 & 1 \\ 0 & 1 & 0 & -2 \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \end{pmatrix} \begin{pmatrix} -1 \\ 0 \\ 2 \\ 1 \end{pmatrix} = \begin{pmatrix} 1(-1) + 1(1) \\ 1(0) + (-2)(1) \\ 1(2) + 0(1) \\ 1(1) \end{pmatrix} = \begin{pmatrix} 0 \\ -2 \\ 2 \\ 1 \end{pmatrix}$. Converting back to Cartesian coordinates gives $D = (0, -2, 2)$. This matrix approach, while more complex for this simple problem, is crucial in computer graphics and advanced geometry for chaining transformations. 6. Method 5: Complex Numbers / Quaternions (Abstract Generalization - 2D Analogue) While the problem is in $\mathbb{R}^3$, we can draw an analogy to $\mathbb{R}^2$ using complex numbers. If $A, B, C, D$ were complex numbers $a, b, c, d$, then the parallelogram condition $\vec{AB} = \vec{DC}$ translates to $b - a = c - d$, leading to $d = a - b + c$. This is a direct parallel. For $\mathbb{R}^3$, we can use quaternions, but their primary use is for rotations, not simple translations or vector additions. However, abstractly, we can think of points as elements of an affine space, where the difference between two points is a vector in the underlying vector space. The parallelogram law $A + \vec{AD} = D$ and $\vec{AD} = \vec{BC}$ implies $D = A + \vec{BC}$. Here, $\vec{BC}$ is the vector $C-B$. The arithmetic $A-B+C$ is a statement in an affine space where $A, B, C$ are points and the operations are defined to yield a point, not necessarily a vector. Specifically, in an affine space, $P_1, P_2, P_3$ are points. $P_4 = P_1 - P_2 + P_3$ is a well-defined point. This operation can be interpreted as: start at $P_1$, move along vector $\vec{P_2P_1}$ (i.e. $-P_2$), then move along vector $\vec{OP_3}$ (i.e. $P_3$). More simply, it is $P_1 + (P_3 - P_2)$, which means $P_1 + \vec{P_2P_3}$. 7. Geometric Interpretation and Visualization (3D context) The points $A, B, C$ define a plane. Since $D$ completes a parallelogram $ABCD$, $D$ must also lie in this plane. We can verify this. $\vec{AB} = (1, 1, -2)$ $\vec{AC} = (1 - (-1), -1 - 0, 0 - 2) = (2, -1, -2)$ The normal vector to the plane containing $A, B, C$ is $\vec{n} = \vec{AB} \times \vec{AC}$. $\vec{n} = \begin{vmatrix} \mathbf{i} & \mathbf{j} & \mathbf{k} \\ 1 & 1 & -2 \\ 2 & -1 & -2 \end{vmatrix} = \mathbf{i}(-2 - 2) - \mathbf{j}(-2 - (-4)) + \mathbf{k}(-1 - 2) = (-4, -2, -3)$. The equation of the plane is $-4(x - (-1)) - 2(y - 0) - 3(z - 2) = 0$ $-4(x+1) - 2y - 3(z-2) = 0$ $-4x - 4 - 2y - 3z + 6 = 0$ $-4x - 2y - 3z + 2 = 0 \implies 4x + 2y + 3z = 2$. Now check if $D = (0, -2, 2)$ lies on this plane: $4(0) + 2(-2) + 3(2) = 0 - 4 + 6 = 2$. Since $2 = 2$, point $D$ lies on the plane defined by $A, B, C$. This is consistent. 8. Pythonic Pseudo-code (Conceptual Implementation) While direct execution is not possible, the logic can be expressed in Python-like pseudo-code for clarity, representing points as tuples or lists. class Point3D: def __init__(self, x, y, z): self.x = x self.y = y self.z = z def __sub__(self, other): return Point3D(self.x - other.x, self.y - other.y, self.z - other.z) def __add__(self, other): # Adding two points results in a point, assuming vector interpretation # as in D = A + vector return Point3D(self.x + other.x, self.y + other.y, self.z + other.z) def __repr__(self): return f"({self.x}, {self.y}, {self.z})" # Given points A = Point3D(-1, 0, 2) B = Point3D(0, 1, 0) C = Point3D(1, -1, 0) # Method 1: Vector addition (D = A + vector(BC)) # vector_BC = C - B # D_method1 = A + vector_BC # print(f"D (Method 1): {D_method1}") # Alternatively, using the algebraic form D = A - B + C D_algebraic = A - B + C # print(f"D (Algebraic): {D_algebraic}") # Method 2: Midpoint property (M_AC = M_BD => (A+C)/2 = (B+D)/2 => D = A+C-B) D_midpoint = A + C - B # print(f"D (Midpoint): {D_midpoint}") # Verification of vector properties # vector_AB = B - A # vector_DC = C - D_algebraic # print(f"Vector AB: {vector_AB}") # print(f"Vector DC: {vector_DC}") # print(f"Are vector_AB and vector_DC equal? {vector_AB.x == vector_DC.x and vector_AB.y == vector_DC.y and vector_AB.z == vector_DC.z}") # vector_AD = D_algebraic - A # vector_BC = C - B # print(f"Vector AD: {vector_AD}") # print(f"Vector BC: {vector_BC}") # print(f"Are vector_AD and vector_BC equal? {vector_AD.x == vector_BC.x and vector_AD.y == vector_BC.y and vector_AD.z == vector_BC.z}") This pseudo-code demonstrates how the vector operations $D = A - B + C$ (or $A+C-B$) are directly implemented. The `__add__` and `__sub__` methods for the `Point3D` class are overloaded to perform component-wise addition and subtraction, which is precisely how vector operations work. 9. Conclusion and Generalization The problem of finding the fourth vertex of a parallelogram given three vertices $A, B, C$ has a unique solution in affine space, provided $A, B, C$ are not collinear. The general formula for $D$ is $D = A - B + C$ if the parallelogram is $ABCD$. If the order was $ACBD$, then $D = A - C + B$. The crucial aspect is understanding which diagonals bisect which, or which vectors are parallel and equal. The underlying mathematical principle is the closure of vector addition/subtraction, or the midpoint theorem in affine geometry. All presented methods ultimately reduce to the same vector relation $D = A - B + C$, demonstrating the consistency and interconnectedness of different mathematical perspectives.