На уроках алгебры мы решали уравнения и упрощали выражения, на уроках геометрии — чертили и доказывали теоремы. Сегодня мы объединим эти два урока и познакомимся с геометрической алгеброй, в которой можно алгебраическими методами производить любые геометрические построения, доступные с помощью карандаша, линейки и рационального транспортира.
Продолжаем серию статей, в которой мы знакомимся с принципами построения геометрических алгебр.
Внешняя алгебра позволила нам получить алгебраическую модель евклидового пространства Rⁿ. Однако геометрией, даже школьной, в таком пространстве заниматься не получится. Когда все имеющиеся в нашем распоряжении подпространства привязаны к одной общей точке, особо содержательной геометрии не построить. Прямых и плоскостей в ней может быть навалом, но даже элементарного треугольника соорудить не получится, потому что точка во всей такой геометрии одна-единственная, и всё без исключения прямые проходят через неë. Такая геометрия называется афинной. В ней все векторы имеют лишь направления, но не содержат информации о своей начале. Иными словами, все векторы имеющие одинаковые длину и направления тождественны.
Есть простой способ превратить афинную геометрию в гораздо более содержательную проективную геометрию. Для этого надо добавить одно дополнительное измерение, а потом рассмотреть пересечение афинного пространства с произвольной гиперплоскостью, не проходящей через общую точку.
На иллюстрации показано как на проективной плоскости (бежевой) строятся точка A и прямая l, как пересечения с ней афинных прямой и плоскости, показаных в синих тонах.
Я не буду сейчас глубоко входить в изложение принципов построения проективной геометрии. Для нас сейчас главное то, что пересекая проективную плоскость, различные афинные прямые превращаются в различные точки, афинные плоскости — в прямые и так далее. И вот эти-то точки и прямые могут уже оказаться в любом месте проективной плоскости. Таким образом от афинной геометрии на пространстве Rⁿ⁺¹ мы можем перейти к проективной геометрии на PRⁿ, которая включает в себя и "школьную" евклидову геометрию.
Однако проективная геометрия шире евклидовой. В ней мы приобретаем ещё один непривычный класс объектов — идеальные точки, прямые, плоскости и т.д. Им соответствуют афинные прямые, плоскости и любые другие подпространства параллельные проективной плоскости. В евклидовой геометрии таких объектов нет, тогда как в проективной геометрической алгебре, они составляют самостоятельную афинную подгеометрию и существенно расширяют наши возможности.
Проективная внешняя алгебра для n-мерного пространства строится на базе алгебры Клиффорда Cl(0,n+1,0) и имеет генераторы: е₀, е₁, е₂, ... еₙ. Давайте подробнее рассмотрим двумерную проективную внешнюю алгебру, причём двойственную. Она имеет 2³ = 8 элементов:
Из-за двойственности, в этой алгебре прямые будут выражаться 1-векторами, а точки — 2-векторами. Использование двойственной алгебры может показаться излишним усложнением, но оно оправдано тем, как аккуратно выражаются в такой алгебре геометрические объекты.
Если мы сопоставим генераторам е₁ и е₂ координаты x и y, то 1-вектор будет соответствовать прямой, заданной уравнением в декартовых координатах:
Ещё раз, хочу обратить внимание на то, что 1-вектор, как элемент внешней алгебры, это не вектор в привычном понимании, а одномерное многообразие, целая прямая, в которой коэффициенты при генераторах е₁ и е₂ определяют не направление прямой, а направление нормального ей вектора.
2-вектор представляет точку на проективной плоскости. Если еë декартовы координаты (a, b), то это значит, что она представляет точку пересечения двух прямых, x = a и y = b. Этим двум прямым в алгебре соответствуют 1-векторы: е₁ − aе₀ и е₂ − bе₀. Если мы вычислим их пересечение, то есть внешнее произведение (напомню, что мы работаем в двойственной алгебре), то получим 2-вектор, представляющий точку:
Проективная природа нашей геометрии проявляется в том, что масштабирование не меняет геометрическое представление k-векторов. Действительно, на какое бы число мы ни умножили уравнение прямой, это еë не изменит. То же относится и к 1-вектору: его масштабирование никак изменяет прямую. Масштабирование 2-вектора тоже никак не меняет точку, которую он представляет. Это связано с тем, что наши точки и прямые, на самом деле, это пересечения афинных прямых и плоскостей с проективной плоскостью. А вот где именно находится эта плоскость не меняет геометрии. Так что для всех k-векторов выполняется отношение эквивалентности:
Стремление к идеалу
Связь между декартовыми координатами точки и 2-вектором даëт нам естественную интерпретацию элемента е₁₂, как начала координат. А какая прямая будет двойственна началу координат? Ей соответствует 1-вектор е₀, который не соответствует уравнению какой-либо прямой. Проективное преобразование говорит нам о том, что это идеальная прямая — линия горизонта.
Несмотря на идеальность, это всë-таки прямая, то есть 1-вектор, а это значит, что еë можно пересечь с другими прямыми. Давайте вычислим такое пересечение для прямой aе₁ + bе₂ + cе₀ :
Это 2-вектор, то есть точка, но тоже идеальная, расположенная на горизонте. Чтобы лучше понять какой в ней смысл, давайте вычислим где пересекаются две параллельные прямые:
Получается, что в точке пересечения обыкновенной прямой и идеальной, пересекаются и все прочие прямые, параллельные первой.
Это очень полезное свойство проективной геометрической алгебры. Оно позволяет не заботиться об особенных случаях, которые обрабатываются ею "автоматически" и без потери смысла. Это существенно понижает возможности ошибиться.
Изобретаем линейку
Алгебраическое определение прямой через уравнение — дело хорошее, но с точки зрения евклидовой геометрии прямая задаётся не уравнением, а двумя точками, через которые она проходит. Двум точкам p₁ и p₂ двойственны две прямые p̄₁ и p̄₂, которые пересекаются в точке p̄₁∧p̄₂, ей должна быть двойственна прямая, содержащая как точку p₁, так и точку p₂. Получается, что прямую, соединяющую две точки можно получить, как двойственное внешнее произведение этих точек:
Это объясняет геометрические названия внешних произведений пересечения (∧) и соединения (∨).
Итак, проективная внешняя алгебра даёт нам всё построения, доступные с помощью линейки: мы можем находить точки пересечения прямых и соединять две точки прямыми. Кроме того, с помощью линейных комбинаций прямых и точек мы можем делить углы и отрезки в нужной пропорции.
Помните, чем в школе уроки алгебры отличались от геометрии? На первых мы упрощали выражения и решали уравнения, а на вторых -- рисовали чертежи и доказывали теоремы. В геометрической алгебре мы можем делать и то и другое одновременно. Вот некоторые правила упрощения выражений:
Самое замечательное то, что всё эти рассуждения остаются справедливыми и при повышении размерности проективного пространства. В трёхмерной проективной внешней алгебре 1-векторы представляют плоскости, заданные расстоянием до начала координат и вектором нормали, 2-векторы это прямые, 3-векторы — это точки, двойственные плоскостям. В такой внешней алгебре ко всем перечисленным выше операциям с точками и прямыми добавляются аналогичные операции с плоскостями, что существенно расширяет инструментарий геометра.
В трёхмерном мире прямые могут не пересекаться даже на горизонте (его роль выполняет идеальная плоскость), зато между ними появляются новые отношения. В частности, для двух непересекающихся прямых можно построить третью, перпендикулярную им обоим, и получить точки их максимального сближения.
А чего мы пока не можем делать? Нам остались недоступными движения и изометрии: повороты на произвольные углы, отражения от прямых и точек, и параллельный перенос на заданный вектор. Это серьёзные ограничения ради которых стоит поискать, нет ли такой алгебры Клиффорда, которая могла бы расширить внешнюю алгебру всеми этими инструментами.
В следующей статье мы, оснастим внешнюю геометрическую алгебру нетривиальным внутренним произведением и получим полноценную геометрию со всеми перечисленными выше преобразованиями.
* * *
В качестве демонстрации алгебраического подхода к геометрии давайте число алгебраически докажем теорему Дезарга — одну из ключевых теорем проективной геометрии:
Треугольники, имеют ось перспективы тогда и только тогда, когда они имеют точку перспективы.
Эта теорема имеет красивое стереометрическое доказательство, однако геометрическая алгебра тоже предлагает достаточно элегантное решение.
1. Рассмотрим треугольник abc и проективную ось p.
2. Построим второй треугольник, с помощью линейных комбинаций сторон треугольника с осью p:
Здесь числа x, y и z — произвольны. Такие линейные комбинации гарантируют, что новые линии будут иметь с продолжениями сторон треугольника и осью проекции общие точки. Таким образом, мы имеем самый общий случай, описанный в постановке теоремы.
Теорема утверждает, что прямые, соединяющие соответствующие вершины треугольников должны иметь общую точку.
Эти прямые можно вычислить, упрощая выражения:
Осталось доказать, что эти три прямые проходят через одну точку:
Выражение для точки пересечения не зависит от прямой p и одинаково для всех прямых, соединяющих вершины треугольников. Что и требовалось доказать. Вот чертёж, иллюстрирующий результат:
Обратное утверждение двойственно уже доказанному, и поэтому верно.