Предлагаю следующий способ "подсчета операций"/"шагов" (возможно, он совпадает с предлагаемым
arseniiv выше).
1) Работаем со следующих "объектов" - прямых, точек и окружностей. Некоторые из них "исходно даны", другие строим в процессе построения.
2) Исходно нам даны следующие объекты (их строить не надо): три вершины исходного треугольника, три прямые проходящие через них, и шесть окружностей по две на каждую из вершин (с центром в одной из вершин и радиусом длины одной из прилежащих сторон треугольника); как и все точки пересечения данных линий (окружностей и прямых).
3) Операция/шаг: построение прямой через двух из уже существующих/найденных точек. Засчитывается за один "шаг".
4) Операция/шаг: построение окружности с центром в одной из существующих/найденных точек, и радиусом расстояние между двух из существующих/найденных точек (не обязательно чтобы одна из них была также и центром). Засчитывается за один "шаг".
5) Операции 3 и 4 автоматически прибавляют следующих объектов к копилку "уже найденных": новую построенную прямую (или окружность); плюс все точки ее пересечения с уже существующих/найденных линий (окружностей и прямых).
6) Подразумевается что у нас есть уникальные имена для всех существующих/найденных объектов.
7) Произвольный выбор (из существующих точек/объектов при операций 3 и 4) разрешен, если из него не зависит итоговый вписанный треугольник. "Выбор" за шагом не считается.
8) Также в ходе алгоритма: мы умеем отличать порядок точек на прямой, совпадение точек, лежит ли точка на какую-то линию (окружности или прямую) или внутри какого-то отрезка, "меньший" и "больший" из двух углов (или то что они равны), совпадают ли или нет какие-то линии, лежит ли точка "внутри" или "снаружи" какой-то окружности, внутри или снаружи исходного треугольника и так далее. Все это за "шагами" не считается. Например мы можем говорить "на следующем шаге строим окружность O1 с центром в М и радиусом MP, она пересекает найденную прямую L в точек P1 и P2 пусть P1 та точка которая лежит внутри исходного треугольника...." и потом строим чего-нибудь что выбирает одну из этих точек "... через точку P1 лежащей внутри исходного треугольника". Разумеется если мы ссылаемся на что-то, оно должно иметь место (т.е. можно было бы доказать независимо, что хотя бы одна из точек P1 или P2 должна оказаться внутри треугольника если мы это используем при выборе).
9) Достаточно найти вершин вписанного треугольника. Его сторон и прочих аттрибутов строить не надо : )
10) Когда алгоритм допускает возможно переменное количество шагов (в зависимости от исходого треугольника, и/или произвольности выбора по ходу алгоритма) - за "количеством шагов алгоритма" засчитывается наибольшее количество шагов которое может понадобиться.
Плюс выполнение других условий ТС: разносторонность исходного треугольника, каждая из точек вписанного должна лежать на одну (и только одну) из сторон исходного, разные точки вписанного должны лежать на разных сторон исходного, все построения должны опираться на исходного треугольника, и не имеем право выбирать "внешних произвольных параметров" из которых вписанный треугольник может оказаться разным при одинаковым исходным и т.д.
Будем считать алгоритм "допустимым" если он дает допустимого построения вписанного хотя бы для какого-нибудь исходного треугольника. Т.е. то что какие-то алгоритмы могут "вырождаться" (в случае прямоугольного, или тупоугольного исходного и т.д.) нас не смущает.
Как иллюстрация:
- для нахождения центра описанной окружности O достаточно двух шагов (провести двух серединных перпендикуляров через точек пересечения соответных окружностей которые исходно даны по 2) - точка их пересечения и есть O. Аналогично и для ортоцентра.
- для нахождения наименьшей стороны были бы необходимы три шага (наихудший случай); однако из-за того что все нужные исходные окружности и точки уже даны по 2, на самом деле это 0 шагов.
Я несколько не уверен что по 2 нужно считать и окружностей в вершин исходного уже построенными - но посчитал что это логично, раз мы считаем что прямые через вершин треугольника тоже построены (стороны исходного треугольника строить ненужно); таким образом окружности и прямые (все линии) у нас как бы на одинаковых правах.
-- 10.05.2021, 17:52 --А например если есть одна разрешающая все вопросы ссылка, то тему начинать не придётся.
Могу только сказать что моя интуиция говорит что такого ограничения нельзя добиться через "ограничений операций с циркулем" а если его наглухо забрать, то нам практически ничего не останется: )
Также как например и ограничение что "разные вершины вписанного должны лежать на разных сторон исходного", оно должно быть введено как требование "априори"... если мы этого хотим. Но при этом мы потеряем весь класс оригинальных/интересных "не непрерывных" построений... так что не стоит : )