Inductive point : Set := | Point : nat -> nat -> point. Inductive line : Set := | Line : point -> point -> line. Inductive plane : Set := (* Plane through 3 non-collinear points *) | Plane3Pt : point -> point -> point -> plane. Definition projX (a:point) : nat := match a with | Point x _ => x end. Definition projY (a:point) : nat := match a with | Point _ y => y end.