Previous Up Next
Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

Lecture 13 Extension of Lie Geometry: Ensembles and their Implementation

We propose to consider ensembles of cycles (quadrics), which are interconnected through conformal-invariant geometric relations (e.g. “to be orthogonal”, “to be tangent”, etc.), as new objects in an extended Möbius–Lie geometry. It was recently demonstrated in several related papers, that such ensembles of cycles naturally parameterise many other conformally-invariant families of objects, e.g. loxodromes or continued fractions.

The paper describes a method, which reduces a collection of conformally in­vari­ant geometric relations to a system of linear equations, which may be accompanied by one fixed quadratic relation. To show its usefulness, the method is implemented as a C++ library. It operates with numeric and symbolic data of cycles in spaces of arbitrary dimensionality and metrics with any signatures. Numeric calculations can be done in exact or approximate arithmetic. In the two- and three-dimensional cases illustrations and animations can be produced. An interactive Python wrapper of the library is provided as well.

13.1 Introduction

Lie sphere geometry  [59] [32]*Ch. 3 [148] in the simplest planar setup unifies circles, lines and points—all together called cycles in this setup. Symmetries of Lie spheres geometry include (but are not limited to) fractional linear transformations (FLT) of the form:



    ab
cd


:  x ↦
ax+b
cx+d
 ,    where det


    ab
cd


≠ 0. (1)

Following other sources, e.g.  [306]*§ 9.2, we call (1) by FLT and reserve the name “Möbius maps” for the subgroup of FLT which fixes a particular cycle. For example, on the complex plane FLT are generated by elements of SL2(ℂ) and Möbius maps fixing the real line are produced by SL2(ℝ) [198]*Ch. 1.

There is a natural set of FLT-invariant geometric relations between cycles (to be orthogonal, to be tangent, etc.) and the restriction of Lie sphere geometry to invariants of FLT is called Möbius–Lie geometry. Thus, an ensemble of cycles, structured by a set of such relations, will be mapped by FLT to another ensemble with the same structure.

It was shown recently that ensembles of cycles with certain FLT-invariant relations provide helpful parametrisations of new objects, e.g. points of the Poincaré extended space [209], loxodromes [218] or continued fractions [28, 208], see Example 3 below for further details. Thus, we propose to extend Möbius–Lie geometry and consider ensembles of cycles as its new objects, cf. formal Defn. 5. Naturally, “old” objects—cycles—are represented by simplest one-element ensembles without any relation. This paper provides conceptual foundations of such extension and demonstrates its practical implementation as a C++ library figure1. Interestingly, the development of this library shaped the general approach, which leads to specific realisations in [209, 208, 218].

More specifically, the library figure manipulates ensembles of cycles (quadrics) interrelated by certain FLT-invariant geometric conditions. The code is build on top of the previous library cycle [186, 198, 185], which manipulates individual cycles within the GiNaC [21] computer algebra system. Thinking an ensemble as a graph, one can say that the library cycle deals with individual vertices (cycles), while figure considers edges (relations between pairs of cycles) and the whole graph. Intuitively, an interaction with the library figure reminds compass-and-straightedge constructions, where new lines or circles are added to a drawing one-by-one through relations to already presented objects (the line through two points, the intersection point or the circle with given centre and a point). See Example 6 of such interactive construction from the Python wrapper, which provides an analytic proof of a simple geometric statement.

It is important that both libraries are capable to work in spaces of any dimensionality and metrics with an arbitrary signatures: Euclidean, Minkowski and even degenerate. Parameters of objects can be symbolic or numeric, the latter admit calculations with exact or approximate arithmetic. Drawing routines work with any (elliptic, parabolic or hyperbolic) metric in two dimensions and the euclidean metric in three dimensions.

The mathematical formalism employed in the library cycle is based on Clifford algebras, which are intimately connected to fundamental geometrical and physical objects [133, 132]. Thus, it is not surprising that Clifford algebras have been already used in various geometric algorithms for a long time, for example see [134, 334, 86] and further references there. Our package deals with cycles through Fillmore–Springer–Cnops construction (FSCc) which also has a long history, see [300]*§ 1.1 [65]*§ 4.1 [100] [163]*§ 4.2 [191] [198]*§ 4.2 and section 13.2.1 below. Compared to a plain analytical treatment [276]*Ch. 2 [32]*Ch. 3, FSCc is much more efficient and conceptually coherent in dealing with FLT-invariant properties of cycles. Correspondingly, the computer code based on FSCc is easy to write and maintain.

The paper outline is as follows. In Section 13.2 we sketch the mathematical theory (Möbius–Lie geometry) covered by the package of the previous library cycle [186] and the present library figure. We expose the subject with some references to its history since this can facilitate further development.

Sec. 13.3.1 describes the principal mathematical tool used by the library figure. It allows to reduce a collection of various linear and quadratic equations (expressing geometrical relations like orthogonality and tangency) to a set of linear equations and at most one quadratic relation (8). Notably, the quadratic relation is the same in all cases, which greatly simplifies its handling. This approach is the cornerstone of the library effectiveness both in symbolic and numerical computations. In Sec. 13.3.2 we present several examples of ensembles, which were already used in mathematical theories [209, 208, 218], then we describe how ensembles are encoded in the present library figure through the functional programming framework.

Sec. 13.4 outlines several typical usages of the package. An example of a new statement discovered and demonstrated by the package is given in Thm. 7. In Sec. 13.5 we list of some further tasks, which will extend capacities and usability of the package.

All coding-related material is enclosed as appendices in the full documentation on the project page [186]. They contain:

  1. Numerous examples of the library usage starting from the very simple ones.
  2. A systematic list of callable methods.
  3. Actual code of the library.

Sec. 13.2, Example 6 below or the above-mentioned first two appendices of the full documentation can serve as an entry point for a reader with respective preferences and background.

13.2 Möbius–Lie Geometry and the cycle Library

We briefly outline mathematical formalism of the extend Möbius–Lie geometry, which is implemented in the present package. We do not aim to present the complete theory here, instead we provide a minimal description with a sufficient amount of references to further sources. The hierarchical structure of the theory naturally splits the package into two components: the routines handling individual cycles (the library cycle briefly reviewed in this section), which were already introduced elsewhere [186], and the new component implemented in this work, which handles families of interrelated cycles (the library figure introduced in the next section).

13.2.1 Möbius–Lie geometry and FSC construction

Möbius–Lie geometry in ℝn starts from an observation that points can be treated as spheres of zero radius and planes are the limiting case of spheres with radii diverging to infinity. Oriented spheres, planes and points are called together cycles. Then, the second crucial step is to treat cycles not as subsets of ℝn but rather as points of some projective space of higher dimensionality, see [33]*Ch. 3 [59] [276] [300].

To distinguish two spaces we will call ℝn as the point space and the higher dimension space, where cycles are represented by points—the cycle space. Next important observation is that geometrical relations between cycles as subsets of the point space can be expressed in term of some indefinite metric on the cycle space. Therefore, if an indefinite metric shall be considered anyway, there is no reason to be limited to spheres in Euclidean space ℝn only. The same approach shall be adopted for quadrics in spaces ℝpqr of an arbitrary signature p+q+r=n, including r nilpotent elements, cf. (2) below.

A useful addition to Möbius–Lie geometry is provided by the Fillmore–Springer–Cnops construction (FSCc) [300]*§ 1.1 [65]*§ 4.1 [289]*§ 18 [100] [163]*§ 4.2 [191] [198]*§ 4.2. It is a correspondence between the cycles (as points of the cycle space) and certain 2× 2-matrices defined in (4) below. The main advantages of FSCc are:

  1. The correspondence between cycles and matrices respects the projective structure of the cycle space.
  2. The correspondence is FLT covariant.
  3. The indefinite metric on the cycle space can be expressed through natural operations on the respective matrices.

The last observation is that for restricted groups of Möbius transformations the metric of the cycle space may not be completely determined by the metric of the point space, see [185] [191] [198]*§ 4.2 for an example in two-dimensional space.

FSCc is useful in consideration of the Poincaré extension of Möbius maps [209], loxodromes [218] and continued fractions [208]. In theoretical physics FSCc nicely describes conformal compactifications of various space-time models [130] [187] [198]*§ 8.1. Regretfully, FSCc have not yet propagated back to the most fundamental case of complex numbers, cf. [306]*§ 9.2 or somewhat cumbersome techniques used in [32]*Ch. 3. Interestingly, even the founding fathers were not always strict followers of their own techniques, see [101].

We turn now to the explicit definitions.

13.2.2 Clifford algebras, FLT transformations, and Cycles

We describe here the mathematics behind the the first library called cycle, which implements fundamental geometrical relations between quadrics in the space ℝpqr with the dimensionality n=p+q+r and metric x12+…+xp2xp+12−…−xp+q2. A version simplified for complex numbers only can be found in [209, 218, 208].

The Clifford algebra Cl(p,q,r) is the associative unital algebra over ℝ generated by the elements e1,…,en satisfying the following relation:

eiej =− ejei ,    and    ei2=



      −1, if  1≤ i≤ p;
      1, if  p+1≤ i≤ p+q;
      0, if  p+q+1≤ i≤ p+q+r.
(2)

It is common [75, 65, 289, 133, 132] to consider mainly Clifford algebras Cl(n)=Cl(n,0,0) of the Euclidean space or the algebra Cl(p,q)=Cl(p,q,0) of the pseudo-Euclidean (Minkowski) spaces. However, Clifford algebras Cl(p,q,r), r>0 with nilpotent generators ei2=0 correspond to interesting geometry [198, 191, 339, 261] and physics [120, 117, 118, 200, 203, 210] as well. Yet, the geometry with idempotent units in spaces with dimensionality n>2 is still not sufficiently elaborated.

An element of Cl(p,q,r) having the form x=x1e1+…+xnen can be associated with the vector (x1,…,xn)∈ℝpqr. The reversion aa* in Cl(p,q,r) [65]*(1.19(ii)) is defined on vectors by x*=x and extended to other elements by the relation (ab)*=b*a*. Similarly the conjugation is defined on vectors by x=−x and the relation ab=bā. We also use the notation | a |2=aā for any product a of vectors. An important observation is that any non-zero x∈ℝn00 has a multiplicative inverse: x−1=x/| x |2. For a 2× 2-matrix M= (

   ab
cd

) with Clifford entries we define, cf. [65]*(4.7)

M=


  d*b*
c*a*


    and     M*=


  db
cā


. (3)

Then MMI for the pseudodeterminant δ:=ad*bc* .

Quadrics in ℝpq—which we continue to call cycles—can be associated to 2× 2 matrices through the FSC construction [100] [65]*(4.12) [198]*§ 4.4:

kxxlxxl+m=0   ↔   C=


    lm
    kl


, (4)

where k, m∈ℝ and l∈ℝpq. For brevity we also encode a cycle by its coefficients (k,l,m). A justification of (4) is provided by the identity:

  

    1x



    lm
    kl




    x
1


= kxxlxxl+m,   since  x=−x  for  x∈ℝpq.

The identification is also FLT-covariant in the sense that the transformation (1) associated with the matrix M= (

  ab
cd

) sends a cycle C to the cycle MCM* [65]*(4.16). We define the FLT-invariant inner product of cycles C1 and C2 by the identity

     
    ⟨ C1,G2  ⟩=ℜ tr(C1C2) ,         (5)

where ℜ denotes the scalar part of a Clifford number. This definition in term of matrices immediately implies that the inner product is FLT-invariant. The explicit expression in terms of components of cycles C1=(k1,l1,m1) and C2=(k2,l2,m2) is also useful sometimes:

     
    ⟨ C1,G2  ⟩=l1l2+ l1l2+m1k2+m2k1 .         (6)

As usual, the relation ⟨ C1,G 2 ⟩=0 is called the orthogonality of cycles C1 and C2. In most cases it corresponds to orthogonality of quadrics in the point space. More generally, most of FLT-invariant relations between quadrics may be expressed in terms FLT-invariant inner product (5). For the full description of methods on individual cycles, which are implemented in the library cycle, see the respective documentation [186].

Remark 1 Since cycles are elements of the projective space, the following normalised cycle product:

C1,C2
:=
⟨ C1,C2  ⟩
⟨ C1,C1  ⟩ ⟨ C2,C2  ⟩
(7)
is more meaningful than the cycle product (5) itself. Note that, [ C1,C2 ] is defined only if neither C1 nor C2 is a zero-radius cycle (i.e. a point). Also, the normalised cycle product is GL2(ℂ)-invariant in comparison to SL2(ℂ)-invariance of (5).

We finish this brief review of the library cycle by pointing to its light version written in Asymptote language [126] and distributed together with the paper [218]. Although the light version mostly inherited API of the library cycle, there are some significant limitations caused by the absence of GiNaC support:

  1. there is no symbolic computations of any sort;
  2. the light version works in two dimensions only;
  3. only elliptic metrics in the point and cycle spaces are supported.

On the other hand, being integrated with Asymptote the light version simplifies production of illustrations, which are its main target.

13.3 Ensembles of Interrelated Cycles and the figure Library

The library figure has an ability to store and resolve the system of geometric relations between cycles. We explain below some mathematical foundations, which greatly simplify this task.

13.3.1 Connecting quadrics and cycles

We need a vocabulary, which translates geometric properties of quadrics on the point space to corresponding relations in the cycle space. The key ingredient is the cycle product (5)–(4), which is linear in each cycles’ parameters. However, certain conditions, e.g. tangency of cycles, involve polynomials of cycle products and thus are non-linear. For a successful algorithmic implementation, the following observation is important: all non-linear conditions below can be linearised if the additional quadratic condition of normalisation type is imposed:

⟨ C,C  ⟩=±1. (8)

This observation in the context of the Apollonius problem was already made in [101]. Conceptually the present work has a lot in common with the above mentioned paper of Fillmore and Springer, however a reader need to be warned that our implementation is totally different (and, interestingly, is more closer to another paper [100] of Fillmore and Springer).

Remark 2 Interestingly, the method of order reduction for algebraic equations is conceptually similar to the method of order reduction of differential equations used to build a geometric dynamics of quantum states in [7].

Here is the list of relations between cycles implemented in the current version of the library figure.

  1. A quadric is flat (i.e. is a hyperplane), that is, its equation is linear. Then, either of two equivalent conditions can be used:
    1. k component of the cycle vector is zero;
    2. the cycle is orthogonal ⟨ C1,G ⟩=0 to the “zero-radius cycle at infinity” G =(0,0,1).
  2. A quadric on the plane represents a line in Lobachevsky-type geometry if it is orthogonal ⟨ C1,G ⟩=0 to the real line cycle C. A similar condition is meaningful in higher dimensions as well.
  3. A quadric C represents a point, that is, it has zero radius at given metric of the point space. Then, the determinant of the corresponding FSC matrix is zero or, equivalently, the cycle is self-orthogonal (isotropic): ⟨ C,G ⟩=0. Naturally, such a cycle cannot be normalised to the form (8).
  4. Two quadrics are orthogonal in the point space ℝpq. Then, the matrices representing cycles are orthogonal in the sense of the inner product (5).
  5. Two cycles C and S are tangent. Then we have the following quadratic condition:
    ⟨ C,S   ⟩2 =  ⟨ C,C  ⟩ ⟨ S ,S   ⟩    
    or
    C,S
    =± 1
    . (9)
    With the assumption, that the cycle C is normalised by the condition (8), we may re-state this condition in the relation, which is linear to components of the cycle C:
    ⟨ C,S   ⟩ = ± 
    ⟨ S ,S   ⟩
    . (10)
    Different signs here represent internal and outer touch.
  6. Inversive distance θ of two (non-isotropic) cycles is defined by the formula:
    ⟨ C,S   ⟩ = θ 
    ⟨ C,C  ⟩
    ⟨ S ,S   ⟩
    (11)
    In particular, the above discussed orthogonality corresponds to θ=0 and the tangency to θ=±1. For intersecting spheres θ provides the cosine of the intersecting angle. For other metrics, the geometric interpretation of inversive distance shall be modified accordingly.

    If we are looking for a cycle C with a given inversive distance θ to a given cycle S , then the normalisation (8) again turns the defining relation (12) into a linear with respect to parameters of the unknown cycle C.

  7. A generalisation of Steiner power d of two cycles is defined as, cf. [101]*§ 1.1:
    d=    ⟨ C,S   ⟩ + 
    ⟨ C,C  ⟩
    ⟨ S ,S   ⟩
    , (12)
    where both cycles C and S are k-normalised, that is the coefficient in front the quadratic term in (4) is 1. Geometrically, the generalised Steiner power for spheres provides the square of tangential distance. However, this relation is again non-linear for the cycle C.

    If we replace C by the cycle C1=1/√C,CC satisfying (8), the identity (13) becomes:

    d· k=    ⟨ C1,S   ⟩ +   
    ⟨ S ,S   ⟩
    , (13)

    where k=1/√C,C is the coefficient in front of the quadratic term of C1. The last identity is linear in terms of the coefficients of C1.

Summing up: if an unknown cycle is connected to already given cycles by any combination of the above relations, then all conditions can be expressed as a system of linear equations for coefficients of the unknown cycle and at most one quadratic equation (8).

13.3.2 Figures as families of cycles—functional approach

We start from some examples of ensembles of cycles, which conveniently describe FLT-invariant families of objects.

Example 3
  1. The Poincaré extension of Möbius transformations from the real line to the upper half-plane of complex numbers is described by a triple of cycles {C1, C2, C3} such that:
    1. C1 and C2 are orthogonal to the real line;
    2. C1,C22≤ ⟨ C1,C1 ⟩ ⟨ C2,C2;
    3. C3 is orthogonal to any cycle in the triple including itself.
    A modification [208] with ensembles of four cycles describes an extension from the real line to the upper half-plane of complex, dual or double numbers. The construction can be generalised to arbitrary dimensions [24].
  2. A parametrisation of loxodromes is provided by a triple of cycles {C1, C2, C3} such that, cf. [218] and Fig. 13.1:
    1. C1 is orthogonal to C2 and C3;
    2. C2,C32≥ ⟨ C2,C2 ⟩ ⟨ C3,C3.
    Then, main invariant properties of Möbius–Lie geometry, e.g. tangency of loxodromes, can be expressed in terms of this parametrisation [218].
  3. A continued fraction is described by an infinite ensemble of cycles (Ck) such that [28]:
    1. All Ck are touching the real line (i.e. are horocycles);
    2. (C1) is a horizontal line passing through (0,1);
    3. Ck+1 is tangent to Ck for all k>1.
    This setup was extended in [208] to several similar ensembles. The key analytic properties of continued fractions—their convergence—can be linked to asymptotic behaviour of such an infinite ensemble [28].
  4. A remarkable relation exists between discrete integrable systems and Möbius geometry of finite configurations of cycles [41, 226, 227, 228, 297]. It comes from “reciprocal force diagrams” used in 19th-century statics, starting with J.C. Maxwell. It is demonstrated in that the geometric compatibility of reciprocal figures corresponds to the algebraic compatibility of linear systems defining these configurations. On the other hand, the algebraic compatibility of linear systems lies in the basis of integrable systems. In particular [226, 227], important integrability conditions encapsulate nothing but a fundamental theorem of ancient Greek geometry.
  5. An important example of an infinite ensemble is provided by the representation of an arbitrary wave as the envelope of a continuous family of spherical waves. A finite subset of spheres can be used as an approximation to the infinite family. Then, discrete snapshots of time evolution of sphere wave packets represent a FLT-covariant ensemble of cycles [20]. Further physical applications of FLT-invariant ensembles may be looked at [150].

One can easily note that the above parametrisations of some objects by ensembles of cycles are not necessary unique. Naturally, two ensembles parametrising the same object are again connected by FLT-invariant conditions. We presented only one example here, cf. [218].


  
Figure 13.1: Two equivalent parametrisations of the same loxodrome by different triples of cycles. The green cycle is C1, two red circles are C2 and C3.

Example 4 Two non-degenerate triples {C1,C2,C3} and {S 1,S 2,S 3} parameterise the same loxodrome as in Ex. 32 if and only if all the following conditions are satisfied:
  1. Pairs {C2,C3} and {S 2,S 3} span the same hyperbolic pencil. That is cycles S 2 and S 3 are linear combinations of C2 and C3 and vise versa.
  2. Pairs {C2,C3} and {S 2,S 3} have the same normalised cycle product (7):

    C2,C3
    =
    S 2,S 3
    . (14)
  3. The elliptic-hyperbolic identity holds:

    Cj,S j

    C2,C3
    1
    arccos
    C1,S 1
     (mod 1 ) , (15)
    where j is either 2 or 3.
Equivalent triples of cycles parametrising the same loxodrome are shown on Fig. 13.1 (an animation is available with the electronic version of this paper).

The respective equivalence relation for parametrisation of Poincaré extension from Ex. 31 is provided in [209]*Prop. 12. These examples suggest that one can expand the subject and applicability of Möbius–Lie geometry through the following formal definition.

Definition 5 Let X be a set, RX× X be an oriented graph on X and f be a function on R with values in FLT-invariant relations from § 13.3.1. Then (R,f)-ensemble is a collection of cycles {Cj}jX such that
    Ci  and  Cj  are in the relation  f(i,j)  for all  (i,j)∈ R.
For a fixed FLT-invariant equivalence relations on the set E of all (R,f)-ensembles, the extended Möbius–Lie geometry studies properties of cosets E/∼.

This definition can be suitably modified for

  1. ensembles with relations of more then two cycles; and/or
  2. ensembles parametrised by continuous sets X, cf. wave envelopes in Ex. 35.

The above extension was developed along with the realisation the library figure within the functional programming framework—in contrast to procedural approach used in popular software packages like GeoGebra [135], CaRMetal [124], Kig [77], Dr. Geo [96] etc. The later provides a fixed set of geometric construction procedures, e.g. “find the midpoint of an interval”, “drop the perpendicular from a point to a line”, etc. In contrast, all new cycles in class figure are added through a list of defining relations, which links the new cycle to already existing ones2. So other geometric packages are designed in the same paradigm as FORTRAN programming language while class figure is similar to Lisp.

It is well-known that both procedural and functional approaches to programme languages realises Turing computability paradigm. Similarly, the above mentioned interactive geometry packages and the present figure library may be treated as an extension of the classical geometric compass-and-straightedge constructions, where new lines or circles are drawn through already existing elements. If requested, an explicit evaluation of cycles’ parameters from this data may be attempted.

To avoid “chicken or the egg” dilemma all cycles are stored in a hierarchical structure of generations, numbered by integers. The basic principles are:

  1. Any explicitly defined cycle (i.e., a cycle which is not related to any previously known cycle) is placed into generation-0;
  2. Any new cycle defined by relations to previous cycles from generations k1, k2, …, kn is placed to the generation k calculated as:
    k=max(k1,k2,…,kn)+1 . (16)
    This rule does not forbid a cycle to have a relation to itself, e.g. isotropy (self-orthogonality) condition ⟨ C,C ⟩=0, which specifies point-like cycles, cf. relation 2 in § 13.3.1. In fact, this is the only allowed type of relations to cycles in the same (not even speaking about younger) generations.

There are the following alterations of the above rules:

  1. From the beginning, every figure has two pre-defined cycles: the real line (hyperplane) C, and the zero radius cycle at infinity C=(0,0,1). These cycles are required for relations 1 and 4 from the previous subsection. As predefined cycles, C and C are placed in negative-numbered generations defined by the macros REAL_LINE_GEN and INFINITY_GEN.
  2. If a point is added to generation-0 of a figure, then it is represented by a zero-radius cycle with its centre at the given point. Particular parameter of such cycle dependent on the used metric, thus this cycle is not considered as explicitly defined. Thereafter, the cycle shall have some parents at a negative-numbered generation defined by the macro GHOST_GEN.

A figure can be in two different modes: freeze or unfreeze, the second is default. In the unfreeze mode an addition of a new cycle by its relation prompts an evaluation of its parameters. If the evaluation was successful then the obtained parameters are stored and will be used in further calculations for all children of the cycle. Since many relations (see the previous Subsection) are connected to quadratic equation (8), the solutions may come in pairs. Furthermore, if the number or nature of conditions is not sufficient to define the cycle uniquely (up to natural quadratic multiplicity), then the cycle will depend on a number of free (symbolic) variable.

There is a macro-like tool, which is called subfigure. Such a subfigure is a figure itself, such that its inner hierarchy of generations and relations is not visible from the current figure. Instead, some cycles (of any generations) of the current figure are used as predefined cycles of generation-0 of subfigure. Then only one dependent cycle of subfigure, which is known as result, is returned back to the current figure. The generation of the result is calculated from generations of input cycles by the same formula (16).

There is a possibility to test certain conditions (“are two cycles orthogonal?”) or measure certain quantities (“what is their intersection angle?”) for already defined cycles. In particular, such methods can be used to prove geometrical statements according to the Cartesian programme, that is replacing the synthetic geometry by purely algebraic manipulations.

Example 6 As an elementary demonstration, let us prove that if a cycle r is orthogonal to a circle a at the point C of its contact with a tangent line l, then r is also orthogonal to the line l. To simplify setup we assume that a is the unit circle. Here is the Python code:
1F=figure() 2a=F.add_cycle(cycle2D(1,[0,0],-1),"a") 3l=symbol("l") 4C=symbol("C") 5F.add_cycle_rel([is_tangent_i(a),is_orthogonal(F.get_infinity()),only_reals(l)],l) 6F.add_cycle_rel([is_orthogonal(C),is_orthogonal(a),is_orthogonal(l),only_reals(C)],C) 7r=F.add_cycle_rel([is_orthogonal(C),is_orthogonal(a)],"r") 8Res=F.check_rel(l,r,"orthogonal") 9for i in range(len(Res)): 10 print "Tangent and radius are orthogonal: %s" %\ 11 bool(Res[i].subs(pow(cos(wild(0)),2)==1-pow(sin(wild(0)),2)).normal())
The first line creates an empty figure F with the default euclidean metric. The next line explicitly uses parameters (1,0,0,−1) of a to add it to F. Lines 3–4 define symbols l and C, which are needed because cycles with these labels are defined in lines 5–6 through some relations to themselves and the cycle a. In both cases we want to have cycles with real coefficients only and C is additionally self-orthogonal (i.e. is a zero-radius). Also, l is orthogonal to infinity (i.e. is a line) and C is orthogonal to a and l (i.e. is their common point). The tangency condition for l and self-orthogonality of C are both quadratic relations. The former has two solutions each depending on one real parameter, thus line l has two instances. Correspondingly, the point of contact C and the orthogonal cycle r through C (defined in line 7) each have two instances as well. Finally, lines 8–11 verify that every instance of l is orthogonal to the respective instance of r, this is assisted by the trigonometric substitution cos2(*)=1−sin2(*) used for parameters of l in line 11. The output predictably is:
Tangent and circle r are orthogonal: True
Tangent and circle r are orthogonal: True

An original statement proved by the library figure for the first time will be considered in the next Section.

13.4 Mathematical Usage of the Library

The developed library figure has several different uses:

Computer experiments are especially valuable for Lie geometry of indefinite or nilpotent metrics since our intuition is not elaborated there in contrast to the Euclidean space [190, 185, 191]. Some advances in the two-dimensional space were achieved recently [261, 198], however further developments in higher dimensions are still awaiting their researchers.

As a non-trivial example of automated proof accomplished by the figure library for the first time, we present a FLT-invariant version of the classical nine-point theorem [276]*§ I.1 [71]*§ 1.8, cf. Fig. 13.4(a):

Theorem 7 (Nine-point cycle) Let ABC be an arbitrary triangle with the orthocenter (the points of intersection of three altitudes) H, then the following nine points belongs to the same cycle, which may be a circle or a hyperbola:
  1. Foots of three altitudes, that is points of pair-wise intersections AB and CH, AC and BH, BC and AH.
  2. Midpoints of sides AB, BC and CA.
  3. Midpoints of intervals AH, BH and CH.

There are many further interesting properties, e.g. nine-point circle is externally tangent to that triangle three excircles and internally tangent to its incircle as it seen from Fig. 13.4(a).

To adopt the statement for cycles geometry we need to find a FLT-invariant meaning of the midpoint Am of an interval BC, because the equality of distances BAm and AmC is not FLT-invariant. The definition in cycles geometry can be done by either of the following equivalent relations:

Both procedures are meaningful if we replace the point at infinity I by an arbitrary fixed point N of the plane. In the second case all lines will be replaced by cycles passing through N, for example the line through B and C shall be replaced by a cycle through B, C and N. If we similarly replace “lines” by “cycles passing through N” in Thm. 7 it turns into a valid FLT-invariant version, cf. Fig. 13.4(b). Some additional properties, e.g. the tangency of the nine-points circle to the ex-/in-circles, are preserved in the new version as well. Furthermore, we can illustrate the connection between two versions of the theorem by an animation, where the infinity is transformed to a finite point N by a continuous one-parameter group of FLT. Fig. 13.5 in the electronic version of this paper shows such an animation; the printed version of this figure presents two intermediate steps in the transition from Fig. 13.4(a) to 13.4(b). Further examples of animations can be found at [207].

It is natural to test the nine-point theorem in the hyperbolic and the parabolic spaces. Fortunately, it is very easy under the given implementation: we only need to change the defining metric of the point space, cf. [6], this can be done for an already defined figure. The corresponding figures Fig. 13.4(c) and (d) suggest that the hyperbolic version of the theorem is still true in the plain and even FLT-invariant forms. We shall clarify that the hyperbolic version of the Thm. 7 specialises the nine-point conic of a complete quadrilateral [61, 76]: in addition to the existence of this conic, our theorem specifies its type for this particular arrangement as equilateral hyperbola with the vertical axis of symmetry.


(a)  (b)
(c)  (d)
Figure 13.4: The illustration of the conformal nine-points theorem. The left column is the statement for a triangle with straight sides (the point N is at infinity), the right column is its conformal version (the point N is at the finite part). The first row show the elliptic point space, the second row—the hyperbolic point space. Thus, the top-left picture shows the traditional theorem, three other pictures—its different modifications.


  
Figure 13.5: Two intermediate steps in the transition between the classical (Fig. 13.4(a)) and conformal (Fig. 13.4(b)) versions of the nine-point theorem. Animated transition is available at the electronic version of this paper.

The computational power of the package is sufficient not only to hint that the new theorem is true but also to make a complete proof. To this end we define an ensemble of cycles with exactly same interrelations, but populate the generation-0 with points A, B and C with symbolic coordinates, that is, objects of the GiNaC class realsymbol. Thus, the entire figure defined from them will be completely general. Then, we may define the hyperbola passing through three bases of altitudes and check by the symbolic computations that this hyperbola passes another six “midpoints” as well.

In the parabolic space the nine-point Thm. 7 is not preserved in this manner. It is already observed [198, 191, 209, 190, 203, 196, 261, 19], that the degeneracy of parabolic metric in the point space requires certain revision of traditional definitions. The parabolic variation of nine-point theorem may prompt some further considerations as well. An expanded discussion of various aspects of the nine-point construction shall be the subject of a separate paper.

13.5 To Do List

The library is still under active development. Along with continuous bug fixing there is an intention to extend both functionality and usability. Here are several nearest tasks planned so far:

Being an open-source project the library is open for contributions and suggestions of other developers and users.


1
All described software is licensed under GNU GPLv3 [112].
2
In fact, it is possible (and useful!) to include relations of a new cycle to itself as well. For example, points are defined by the condition to be self-orthogonal.
site search by freefind advanced

Last modified: October 28, 2024.
Previous Up Next