Is Vector arithmetic compatible between 2D and 3D Vectors? As the title suggests, is Vector arithmetic (including Cross and Dot Products and Length Calculations) compatible between 2D and 3D Vectors where a "2D Vector" is a 3D Vector with a third parameter that is always one (1)?
That is, is $\vec{A}$(x, y, 1) compatible with $\vec{B}$(x, y, z) where $\vec{A} + \vec{B} = \vec{C}$ and $\vec{C} = (Ax + Bx, Ay + By, 1)$; (etc for all basic arithmetic); $\vec{A} \cdot \vec{B} = \vec{C}$ and $\vec{C} = Ay \times 1 - 1 \times By, 1 \times Bx - Ax \times 1$; and $\vec{A} \times \vec{B} = x$ where $x = Ax * Bx + Ay * By + 1 * 1$ as well as $\lVert A \rVert = \sqrt{(Ax^2) + (Ay^2) + (1^2)}$ and $\lVert B \rVert = \sqrt{(Bx^2) + (By^2) + (1^2)}$
Will this produce inaccurate results?
 A: Yes and no. Yes because you can technically do this all you want, but no because when we use 2D vectors we don't typically mean $(x,y,1)$. We actually mean $(x,y,0)$. As in, "it's 2D because there's no z-component". These are just the vectors that sit in the $xy$-plane, and they behave as you'd expect. For example, dot products can show you that they're perpendicular to the $z$-axis. The vectors of the form $(x,y,1)$, on the other hand, are sitting on the plane $z=1$, which is somewhat unsatistfactory, largely because you've lost your $\vec{0}$-vector. They exist as $3D$ vectors, but they don't sit in the $xy$-plane as we generally say $2D$ vectors do, so they're probably not what you want.
EXAMPLE:
$$(x,y,0)\cdot(0,0,z)=0$$
$$(x,y,1)\cdot(0,0,z)=z$$
the vectors you suggest all stick up slightly (pointing from the origin to $z=1$), so they don't actually lie in a plane. They point to one, but don't lie in it, which means they lose a lot of nice properties. As another example:
$$(x,0,1)\cdot(0,y,1)=1$$
when you would clearly want pure $x$ and $y$ vectors to be perpendicular.
EDIT: with cross product:
$$(x,0,1)\times(0,y,1)=(-y,-x,xy)$$
Again, you would want this vector to have length $xy$ and stick out along the $z$-axis, but it does neither. On the other hand,
$$(x,0,0)\times(0,y,0)=(0,0,xy)$$
which is what you want.
A: If I understand you correctly, you want to "re-use" 3D vector "arithmetic" and do 2D vector arithmetic? Then you need to set the 3rd coordinate to zero. Here is why.
You won't have a subspace unless you include the zero vector $(0, 0, 0).$ Now it's easy to verify that the set $V$ of all vectors $(x, y, 0) \in \Bbb R^3$ forms a subspace of $\Bbb R^3$ of dimension $2.$ Also, the set $V$ is isomorphic to $\Bbb R^2$ in the natural way $(x, y, 0) \mapsto (x, y).$
So whenever you have two 2D vectors: $(x, y)$ and $(z, w),$ extend them to $(x, y, 0)$ and $(z, w, 0).$ Perform the arithmetic in $\Bbb R^3.$ Say the resulting vector is $(u, v, \ell).$ Extract the results back as $(u, v).$ Note: $\ell \color{blue}{=} 0,$ by the fact that $V$ is a subspace closed under linear operations.
A: If you replace "$A=(x, y,1)$ with $A=(x,y,0)$, then a 2D vector will work with 3D arithmetic just fine.
