Можно начать работу с графической оболочкой на интуитивном уровне отмечая сходства и различия с более привычной всем Евклидовой геометрией. Для более глубокого понимания, однако, стоит обратится к точным математическим формулировкам. Понятие цикла, ключевое для пакета MoebInv, иллюстрируется в интерактивной записной книжке Jupyter What is a cycle?
Для простоты начнём со знакомой ситуации с окружностями. Чертёж в оболочке Yaglom представляет двумерную плоскость с координатами (x,y). Мы будем называть её пространство точек.
Окружность с центром (x0,y0) и радиусом r задаётся уравнением
(x−x0)2+(y−y0)2=r2. (2) |
Его можно немного преобразовать:
x2+y2−2x0x−2y0y+m=0 where m=x02+n2−r2. (3) |
Удобно использовать четыре параметра (k,l,n,m), что бы представить окружность уравнением
k(x2+y2)−2lx−2ny+m=0 . (4) |
Ясно, что коэффициенты (k,l,n,m) и (λ k, λ l, λ n, λ m) для ненулевого вещественного числа λ соответствуют той же окружности и будут считаться эквивалентными. Так что окружности могут рассматриваться с различных точек зрения:
Первый подход мы уже обозначили как пространство точек, второй мы будем называть пространство циклов.
Интересное обобщение уравнения (4) возникает, если определить цикл уравнением
k(x2 − σ y2)−2lx−2ny+m=0 , где σ =−1, 0, или 1. (5) |
То есть для трёх выбранных значений параметра σ получаются уравнения окружностей, парабол и гипербол соответственно. Поэтому мы будем их называть эллиптическая, параболическая, и гиперболическая метрики в пространстве точек.
Оказывается в пространстве циклов так же можно ввести эти три типа метрик. Это делается посредством произведения двух циклов C1 и C2 заданного выражением
⟨C1,′ 2⟩σ =−2l1 l2+ 2 σn1 n2+m1k2+m2k1 . (6) |
Отметим следующие важные свойства:
Три значения σ =−1, 0, и 1 в произведении циклов (6) называются эллиптической, параболической и гиперболической метрикой в пространстве циклов, соответственно. Графическая оболочка Yaglom позволяет переключать значения метрик в пространстве точек и циклов в любой момент работы с фигурами.
Нам нужен словарик для перевода геометрических понятий в пространстве точек на язык результатов в пространстве циклов и наоборот. Центральное место здесь занимает произведение циклов (6). Вполне ожидаемо, мы будем называть отношение ⟨C1,′ 2 ⟩=0 ортогональностью циклов C1 и C2. Если метрики пространств точек и циклов совпадают, тогда ортогональность циклов выражается в ортогональности соответствующих квадрик в пространстве точек.
Как уже отмечалось ранее, ортогональность является линейным условием на коэффициенты цикла. Однако другие отношение циклов, например касание, включают более высокие степени произведений циклов и будут нелинейными. Разрешение уравнений представляющих список отношений существенно облегчается следующим наблюдением: все нелинейные отношения между циклами линеаризуются если наложить дополнительное квадратичное условие на коэффициенты искомого цикла:
⟨ ⟨ | C,C | ⟩ ⟩ | =±1. (7) |
Произведение циклов задаёт и другие отношения из § 2.4.
⟨ ⟨ | C,G | ⟩ ⟩ | 2 = | ⟨ ⟨ | C,C | ⟩ ⟩ | ⟨ ⟨ | G ,G | ⟩ ⟩ | ⎛ ⎝ | или | ⎡ ⎣ | C,G | ⎤ ⎦ | =± 1 | ⎞ ⎠ | . (8) |
⟨ ⟨ | C,G | ⟩ ⟩ | = ± | √ |
| . (9) |
⟨ ⟨ | C,G | ⟩ ⟩ | = θ | √ |
| √ |
| (10) |
Отношение <<иметь заданное инверсионное расстояние>> к определенному циклу является нелинейным, но может быть опять линеаризовано дополнительным условием нормализации (7).
d= | ⟨ ⟨ | C,G | ⟩ ⟩ | + | √ |
| √ |
| , (11) |
Как и два предыдущих это нелинейное отношение линеаризуется дополнительной нормализацией (7). Для этого заменим цикл C нормализованным C1=1/√⟨C,C ⟩C удовлетворяющим (7), тогда равенство (11) преобразуется в:
d· k= | ⟨ ⟨ | C1,G | ⟩ ⟩ | + | √ |
| , (12) |
где k=1/√⟨C,C ⟩ является коэффициентом перед квадратичными членами цикла C1. Последнее равенство линейно в смысле коэффициентов цикла C1.
[C1, C2; C3, C4]= |
| : |
| (13) |
Итожа: Если новый цикл задаётся какой-то комбинацией выше приведённых отношений, тогда коэффициенты нового цикла могут быть найден из системы линейных уравнений и не более одного уравнения второго порядка для нормализации (7).