// 2025-2026 Богданович Давид Когут Прихожденко

взяти визначення мавка;

простір мавка {
  дія записати_дію__мат__син(М: *Машина, предмет_модуля: *ПредметМодуля);
  дія записати_дію__мат__кос(М: *Машина, предмет_модуля: *ПредметМодуля);
  дія записати_дію__мат__тан(М: *Машина, предмет_модуля: *ПредметМодуля);
  дія записати_дію__мат__асин(М: *Машина, предмет_модуля: *ПредметМодуля);
  дія записати_дію__мат__акос(М: *Машина, предмет_модуля: *ПредметМодуля);
  дія записати_дію__мат__атан(М: *Машина, предмет_модуля: *ПредметМодуля);
  дія записати_дію__мат__абс(М: *Машина, предмет_модуля: *ПредметМодуля);
  дія записати_дію__мат__експ(М: *Машина, предмет_модуля: *ПредметМодуля);
  дія записати_дію__мат__кор2(М: *Машина, предмет_модуля: *ПредметМодуля);
  дія записати_дію__мат__стеля(М: *Машина, предмет_модуля: *ПредметМодуля);
  дія записати_дію__мат__підлога(М: *Машина, предмет_модуля: *ПредметМодуля);
  дія записати_дію__мат__округлити(М: *Машина, предмет_модуля: *ПредметМодуля);

  внутрішня дія призначити__мат__Е(
    М: *Машина,
    предмет_модуля: *ПредметМодуля
  ) {
    записати_властивість_модуля(
      М,
      предмет_модуля,
      М.константи_назв._Е,
      ЧИСЛО(мат_Е)
    );
  }

  внутрішня дія призначити__мат__ПІ(
    М: *Машина,
    предмет_модуля: *ПредметМодуля
  ) {
    записати_властивість_модуля(
      М,
      предмет_модуля,
      М.константи_назв._ПІ,
      ЧИСЛО(мат_ПІ)
    );
  }

  внутрішня дія призначити__мат__ЛОГ2Е(
    М: *Машина,
    предмет_модуля: *ПредметМодуля
  ) {
    записати_властивість_модуля(
      М,
      предмет_модуля,
      М.константи_назв._ЛОГ2Е,
      ЧИСЛО(мат_ЛОГ2Е)
    );
  }

  внутрішня дія призначити__мат__ЛОГ10Е(
    М: *Машина,
    предмет_модуля: *ПредметМодуля
  ) {
    записати_властивість_модуля(
      М,
      предмет_модуля,
      М.константи_назв._ЛОГ10Е,
      ЧИСЛО(мат_ЛОГ10Е)
    );
  }

  внутрішня дія призначити__мат__ЛОГ2(
    М: *Машина,
    предмет_модуля: *ПредметМодуля
  ) {
    записати_властивість_модуля(
      М,
      предмет_модуля,
      М.константи_назв._ЛОГ2,
      ЧИСЛО(мат_ЛОГ2)
    );
  }

  внутрішня дія призначити__мат__ЛОГ10(
    М: *Машина,
    предмет_модуля: *ПредметМодуля
  ) {
    записати_властивість_модуля(
      М,
      предмет_модуля,
      М.константи_назв._ЛОГ10,
      ЧИСЛО(мат_ЛОГ10)
    );
  }

  внутрішня дія призначити__мат__КОРІНЬ2(
    М: *Машина,
    предмет_модуля: *ПредметМодуля
  ) {
    записати_властивість_модуля(
      М,
      предмет_модуля,
      М.константи_назв._КОРІНЬ2,
      ЧИСЛО(мат_КОРІНЬ2)
    );
  }

  внутрішня дія призначити__мат__КОРІНЬ1_2(
    М: *Машина,
    предмет_модуля: *ПредметМодуля
  ) {
    записати_властивість_модуля(
      М,
      предмет_модуля,
      М.константи_назв._КОРІНЬ1_2,
      ЧИСЛО(мат_КОРІНЬ1_2)
    );
  }

  дія створити_і_призначити_модуль_мат(
    М: *Машина,
  ) {
    змінна модуль_мат = створити_модуль(
      М,
      створити_текст(М, "мат")
    );

    призначити__мат__Е(М, модуль_мат);
    призначити__мат__ПІ(М, модуль_мат);
    призначити__мат__ЛОГ2Е(М, модуль_мат);
    призначити__мат__ЛОГ10Е(М, модуль_мат);
    призначити__мат__ЛОГ2(М, модуль_мат);
    призначити__мат__ЛОГ10(М, модуль_мат);
    призначити__мат__КОРІНЬ2(М, модуль_мат);
    призначити__мат__КОРІНЬ1_2(М, модуль_мат);

    записати_дію__мат__син(М, модуль_мат);
    записати_дію__мат__кос(М, модуль_мат);
    записати_дію__мат__тан(М, модуль_мат);
    записати_дію__мат__асин(М, модуль_мат);
    записати_дію__мат__акос(М, модуль_мат);
    записати_дію__мат__атан(М, модуль_мат);
    записати_дію__мат__абс(М, модуль_мат);
    записати_дію__мат__експ(М, модуль_мат);
    записати_дію__мат__кор2(М, модуль_мат);
    записати_дію__мат__стеля(М, модуль_мат);
    записати_дію__мат__підлога(М, модуль_мат);
    записати_дію__мат__округлити(М, модуль_мат);

    записати_в_середовище(
      М,
      М.глобальне_середовище,
      створити_текст(М, "мат"),
      ПРЕДМЕТ(модуль_мат)
    );
  }
}