# Scripts typst 

Скрипты и настройки для ускорения работы на семинарах и лекциях 

## Функционал

>  `((numeric))` — матрица 

- Работа с матрицами:
    - `M(matrix)` — функция для отображения матриц в формате `math`
    - `matT(matrix)` — транспанирование матрицы
    - `rmatrix(n, m, mn: -20, mx: 20, rn: 122, tp: "int", fround: 2)` — генерация рандомной матрицы:
        - `n:int`x`m:int` — размеры матрицы 
        - `mn:float` & `mx:float` — минимальное и максимально возможные значения
        - `rn:int` — число для генирации рандомных чисел 
        - `tp:string` — `int` / `float`
        - `fround:int` — до какого сисла округлять значения при `tp=float`
    - `rmatI(n, m, rn)` — генерация рандомной матрицы размерами `n:int`x`m:int`
    - `rmatF(n, m, rn, fr: 2)` — генерация `float` матрицы  размерами `n:int`x`m:int`
    - `matE(n)` — генерируеь единичную матрицу `n x n`
    - `matMultAlpha(A, alpha)` — умножение матрицы `A` на число `alpha` 
    - `matSum(A, B)` — сумма матрицы `A` и `B`
    - `matMinus(A, B)` — A - b 
    - `matMult(A, B)` — A * B 
    - `matDet(A)` — определитель матрицы
    - `matT(A)` — транспанирование матрицы
    - `matMinor(A)` — вычисление миинора матрицы
    - `matMinus1Pow(A)` — вычисление -1 степени матрицы A
    - `matPrintAsCases(matrix)` — выводит матрицу к виду системы урвнений 
    - `matTr(matrix)` — вычисляет след матрицы
    - `matPow(matrix, pow)` — вычисляет степень матрицы (`pow >= -1`)

- Работа с таблицами истиности:
    - `truthTable(fnStr)` — построение таблицы истиности в по функции записаный в виде строки(`#truthTable("(x, y, z) => {x and y = z}")`)

- Алгоритм Гауса:
    - `gaussian_method_print(matrix, name:"A")` — расписывает алгоритм Гауса по этапно
    - `gaussian_method_result(matrix, name:"A")` — возвращает результирующую матрицу

## TODO

- [ ] Написать документации для функций в коде
- [x] Написать функцию для красивого вывода матрицы в виде системы линейных уравнений
- [ ] Написать блоки для оформления:
    - [ ] Домашних заданий
    - [ ] Теорем
    - [ ] Лем
    - [ ] Доказательств 

