represents the assertion that the geometric object obj satisfies prop.


represents the assertion that the obji satisfy prop.


represents the assertion that objs satisfies each of the propi.


  • GeometricAssertion can be used in stating hypotheses in GeometricScene.
  • The propi can either be predicates that apply to individual geometric objects or relations that hold between geometric objects.
  • If prop is a predicate, then GeometricAssertion[{obj1,obj2,},prop] is equivalent to GeometricAssertion[obj1,prop]&&GeometricAssertion[obj2,prop]&&.
  • GeometricAssertion[objs,prop1,prop2,] is equivalent to GeometricAssertion[objs,prop1]&&GeometricAssertion[objs,prop2]&&.
  • The following predicates for polygons can be used:
  • "Clockwise"the vertices are in clockwise order
    "Convex"the polygon is convex
    "Counterclockwise"the vertices are in counterclockwise order
    "Cyclic"the vertices lie on a circle
    "Equiangular"the interior angles are all equal
    "Equilateral"the side lengths are all equal
    "Regular"the polygon is regular
    "Simple"the polygon is simple
  • The following predicates for lines can be used:
  • "Horizontal"the line is horizontal
    "Vertical"the line is vertical
    "Leftward"the line is oriented to the left
    "Rightward"the line is oriented to the right
    "Upward"the line is oriented upward
    "Downward"the line is oriented downward
  • The following predicates for geometric objects can be used:
  • {"Inside",circle}the object is inside the circle
    {"Outside",circle}the object is outside the circle
  • The following relations between points can be used:
  • "Clockwise"the points are in clockwise order if successively joined
    "Collinear"the points lie on a line
    "Counterclockwise"the points are in counterclockwise order if successively joined
    "CyclicallyOrdered"the points are in either clockwise or counterclockwise order
    "Distinct"the points are distinct
    {"EqualAngles",pt}successive angles subtended at pt are equal
  • The following relations between lines can be used:
  • "Antiparallel"the lines are parallel but in opposite directions
    "Concurrent"the lines intersect at a common point
    {"Concurrent",pt}the lines intersect at the point pt
    "MatchingParallel"the lines are parallel and in the same direction
    "Nondegenerate"the lines lie on distinct infinite lines
    "Parallel"the lines are parallel (with any relative orientation)
    "Perpendicular"the lines are perpendicular
  • The following relations between geometric objects can be used:
  • "Congruent"the objects are congruent
    "PairwiseTangent"the objects are tangent to each other, in pairs
    {"SameSide",line}the objects are on the same side of the line
    "Similar"the objects are similar
    "Tangent"the objects are all tangent to each other at a common point
    {"Tangent",pt}the objects are all tangent at the point pt
  • The following relations between two lists of geometric objects can be used:
  • {"OppositeSides",line}the two lists of objects are on opposite sides of the line


open allclose all

Basic Examples  (3)

Assert that a triangle is equilateral:

Assert that two lines are perpendicular:

Combine GeometricAssertion with other constraints:

Scope  (8)

Assert a predicate for a geometric object:

Assert multiple predicates for a single object:

Some predicates require a parameter, here Circle[o,r]:

Assert that one predicate holds for multiple objects:

Assert a relation between geometric objects:

Combine predicates and relations:

Assert that two lists of objects are on opposite sides of a line:

Specify one object on each side:

Assert properties of named objects:

Properties & Relations  (5)

Directional predicates refer to the ordering of the points on the line:

Multiple properties of distinct types can be asserted simultaneously:

This is equivalent to asserting each property in its own GeometricAssertion expression:

Some properties optionally take parameters:

Specify a point of concurrency:

Some properties add clarifying elements to the scene, such as the dashed lines for "EqualAngles":

Any object in GeometricAssertion can be styled:

Wolfram Research (2019), GeometricAssertion, Wolfram Language function, (updated 2020).


Wolfram Research (2019), GeometricAssertion, Wolfram Language function, (updated 2020).


@misc{reference.wolfram_2020_geometricassertion, author="Wolfram Research", title="{GeometricAssertion}", year="2020", howpublished="\url{}", note=[Accessed: 27-February-2021 ]}


@online{reference.wolfram_2020_geometricassertion, organization={Wolfram Research}, title={GeometricAssertion}, year={2020}, url={}, note=[Accessed: 27-February-2021 ]}


Wolfram Language. 2019. "GeometricAssertion." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2020.


Wolfram Language. (2019). GeometricAssertion. Wolfram Language & System Documentation Center. Retrieved from