diff --git a/.vscode/settings.json b/.vscode/settings.json index 329f582d..cbc32314 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -193,6 +193,8 @@ "Бурбакизатор", "Версионирование", "Владельцом", + "генемные", + "дебуль", "Демешко", "Десинглетон", "доксинг", @@ -214,6 +216,9 @@ "Кучкаров", "Кучкарова", "мультиграфа", + "мультииндекс", + "Мультииндексы", + "Мультифильтр", "неинтерпретируемый", "неитерируемого", "Никанорова", @@ -230,6 +235,7 @@ "подпапках", "Присакарь", "ПРОКСИМА", + "родовидовое", "Родоструктурная", "родоструктурного", "Родоструктурное", diff --git a/rsconcept/frontend/src/features/help/items/rslang/help-rslang-expression-arithmetic.tsx b/rsconcept/frontend/src/features/help/items/rslang/help-rslang-expression-arithmetic.tsx index e11078fc..e6b3ad77 100644 --- a/rsconcept/frontend/src/features/help/items/rslang/help-rslang-expression-arithmetic.tsx +++ b/rsconcept/frontend/src/features/help/items/rslang/help-rslang-expression-arithmetic.tsx @@ -2,98 +2,62 @@ export function HelpRSLangExpressionArithmetic() { return (
- Арифметические выражения в языке родов структур позволяют выполнять математические операции над числовыми - данными. Эти выражения работают с целыми числами и возвращают числовые результаты. -
+Арифметические выражения в языке родов структур предназначены для работы с целыми числами.
-
+ Данные операции формируют теоретико-множественное выражение, которое имеет типизацию Z (целое
+ число).
+
a + b - сумма чисел a и b
+ Сложение: a + b — сумма чисел a и b.
a - b - разность чисел a и b
+ Вычитание: a - b — разность чисел a и b.
a × b или a * b - произведение чисел a и b
- a ÷ b или a / b - частное от деления a на b
- a mod b - остаток от деления a на b
- a^b или a**b - a в степени b
+ Умножение: a * b — произведение чисел a и b.
a = b - a равно b
- a ≠ b - a не равно b
- {'a < b'} - a меньше b
- a ≤ b - a меньше или равно b
- {'a > b'} - a больше b
- a ≥ b - a больше или равно b
- |a| - модуль числа a
- min(a, b) - минимальное из чисел a и b
- max(a, b) - максимальное из чисел a и b
- n! - факториал числа n
- (a + b) × c - произведение суммы a и b на c
- a^2 + b^2 - сумма квадратов a и b
- |x - y| - абсолютная разность x и y
- min(a, b) + max(c, d) - сумма минимума a и b с максимумом c и d
-
- Все арифметические выражения имеют типизацию Z (целые числа). Результат арифметической операции
- всегда является целым числом.
+ Данные операции формируют логическое выражение, которое имеет типизацию Logic.
+
a < b
+ a ≤ b
+ a > b
+ a ≥ b
+
+ Мощность множества: card(X1) — количество элементов множества X. Так как на
+ практике используются только конечные множества, мощность всегда является целым числом.
- Арифметические выражения используются для определения числовых характеристик объектов предметной области, - вычисления количественных показателей и формулировки числовых ограничений в аксиомах и теоремах. -
+(4 + 5) * 3
+ card(X1) > 5
+ x ≤ y + 1
+ - Декларативные выражения в языке родов структур используются для определения понятий через их свойства и - характеристики. Эти выражения описывают "что есть" объект, а не "как его получить". + Декларативная конструкция, также известная как схема ограниченного выделения, в языке родов структур задает + множество через перебираемое множество и проверяемое условие. С точки зрения определения понятий такие выражения + задают родовидовое определение. +
+
+
{'A = {x | P(x)}'} - A есть множество всех x, обладающих
- свойством P
+ D{'{ξ∈ТМВ | ЛВ(ξ)}'}
A = B - A равно B по определению
+ D{'{(ξ₁, ξ₂)∈ТМВ | ЛВ(ξ₁, ξ₂)}'}
A ⊆ B - A является подмножеством B
- ∀x ∈ A: P(x) - для всех x из A выполняется свойство P
+ Буква D — часть синтаксиса, а не идентификатор.
{'EVEN = {x ∈ Z | x mod 2 = 0}'} - четные числа есть множество целых чисел, делящихся на 2
- {'PRIME = {x ∈ N | x > 1 ∧ ∀y ∈ N: y | x → y = 1 ∨ y = x}'} - простые числа
- ∀x ∈ A: x ∈ B → x ∈ C - все элементы A, принадлежащие B, принадлежат также C
- {'MAX = {x ∈ A | ∀y ∈ A: y ≤ x}'} - максимум множества A
- Декларативные выражения могут иметь различные типизации в зависимости от типа определяемого объекта:
-ℬ(H)
- ℬ(H₁ × H₂ × ... × Hₙ)
- - Декларативные выражения используются для определения понятий в концептуальных схемах, формулировки аксиом и - теорем, а также для описания свойств объектов предметной области. Они составляют основу формального описания - концептуальных схем. + Локальные переменные перебирают свою область определения. Если для текущего значения переменной логическое + выражение справа истинно, то это значение (или кортеж значений) включается в результирующее множество. +
+ +
+
+ D{'{ξ∈{1, 2, 3, 4, 5, 6} | ∃σ∈{10, 11, 12} (σ = 2 ∗ ξ)}'} = {'{5, 6}'}
+
- Императивные выражения в языке родов структур используются для задания множеств через последовательность - действий или операций. Эти выражения описывают "как получить" объект, а не "что он есть". + Императивная конструкция в языке родов структур является теоретико-множественным выражением, построенным с + помощью блоков и правил вычисления. Она выражает конструктивные (генемные) способы определения понятий. +
+
+ Императивная конструкция может быть преобразовано в эквивалентную с точки зрения теории множеств{' '}
+
op₁; op₂; ...; opₙ - выполнение операций в заданном порядке
+ I{'{ТМВ(ξ1, ξ2) | ξ1∶∈ТМВ1; ξ2≔ТМВ2; ξk∶∈ТМВk; ЛВ(ξ1,ξ2); ...}'}
if P then op₁ else op₂ - условное выполнение операций
+ Буква D — часть синтаксиса, а не идентификатор.
while P do op - повторение операции пока выполняется условие P
+ Левая часть — выражение ТМВ(ξ1, ..., ξk), которое задаёт результирующий элемент, из которых
+ формируется множества.
x := expr - присваивание значения выражения переменной
+ Правая часть — последовательность блоков, разделённых точкой с запятой. Блоки рассматриваются слева направо.
{'A := A ∪ {x}'} - добавление элемента x к множеству A
+ Перебор
+ ∶∈
+ объявленная переменная или кортеж переменных перебирает элементы множества.
{'A := A {x}'} - удаление элемента x из множества A
+ Присвоение
+ ≔
+ объявленная переменная или кортеж переменных получает значение выражения. Значение вычисляется заново при
+ каждом переходе к следующему набору значений перебираемых переменных.
A := A ∪ B - объединение множеств A и B
- A := A ∩ B - пересечение множеств A и B
+ Логическое выражение. При переборах проверка на истинность позволяет прекратить рассмотрение текущего
+ значения и не добавлять его в результат.
{'result := ∅; for x ∈ A do if P(x) then result := result ∪ {x}'} - построение множества
- элементов A, удовлетворяющих условию P
- sum := 0; for x ∈ A do sum := sum + x - вычисление суммы элементов множества A
- {'max := first(A); for x ∈ A do if x > max then max := x'} - поиск максимального элемента в A
- {'B := ∅; while A ≠ ∅ do {x := choose(A); B := B ∪ {f(x)}; A := A {x}}'} - применение функции f
- к элементам A
- Императивные выражения могут иметь различные типизации в зависимости от результата выполнения:
-ℬ(H)
- H
-
- Императивные выражения используются для определения алгоритмов построения множеств, вычисления характеристик
- объектов и реализации операций над данными в концептуальных схемах. Они позволяют задавать конструктивные
- способы получения объектов.
+ Для каждого набора значений перебираемых и определяемых переменных вычисляется значение{' '}
+ ТМВ(ξ1, ..., ξk). Этот результат включается в итоговое множество, если все логические выражения
+ истинны.
+
+
+ I{'{(ξ1,ξ2) | ξ1∶∈{1, 2, 3}; ξ2≔ξ1+1; ∃σ∈{4, 5, 6} (σ=2∗ξ2)}'} = {'{(1, 2), (2, 3)}'}
+
- Логические выражения в языке родов структур возвращают логическое значение ИСТИНА или ЛОЖЬ. Они используются для - формулировки аксиом, теорем и условий. + Пропозициональные формулы в языке родов структур — это логические выражения, построенные из предикатов + (логических выражений) и переменных с помощью связок. Константы ИСТИНА И ЛОЖЬ не используются в экспликации + концептуальных схем.
-¬P или !P - "не P"
- P ∧ Q или P && Q - "P и Q"
- P ∨ Q или P || Q - "P или Q"
- P → Q или {'P => Q'} - "если P, то Q"
- P ↔ Q или {'P <=> Q'} - "P эквивалентно Q"
- ∀x ∈ A: P(x) - "для всех x из A выполняется P(x)"
- ∃x ∈ A: P(x) - "существует x из A такой, что P(x)"
- ∃!x ∈ A: P(x) - "существует единственный x из A такой, что P(x)"
- x ∈ A - "x принадлежит множеству A"
+ Принадлежность: ξ∈S — элемент ξ принадлежит множеству S.
x ∉ A - "x не принадлежит множеству A"
+ Непринадлежность: ξ∉S — элемент ξ не принадлежит множеству S.
A ⊆ B - "A является подмножеством B"
+ Равенство множеств: S1=S2.
A ⊂ B - "A является собственным подмножеством B"
+ Неравенство множеств: S1≠S2.
A = B - "множества A и B равны"
+ Включение: S1⊆S2 — S₁ является подмножеством S₂.
+ S1⊂S2.
+ S1⊄S2.
∀x ∈ A: x ∈ B - "все элементы A принадлежат B"
+ Равенство: 2 = 4.
∃x ∈ A: P(x) ∧ Q(x) - "существует элемент x из A, для которого выполняются P(x) и Q(x)"
+ Неравенство: 2 ≠ 4.
A ⊆ B ∧ B ⊆ A → A = B - "если A включено в B и B включено в A, то A равно B"
+ Меньше: 2 < 4.
+ 2 ≤ 4.
+ 2 > 4.
+ 2 ≥ 4.
- Все логические выражения имеют типизацию Logic и могут использоваться в качестве аксиом, теорем или - условий в определениях конституент. -
+¬A — истина тогда и только тогда, когда A ложно.
+ A & B — истина, если оба A и B истинны.
+ A ∨ B — истина, если хотя бы одно из A или B истинно.
+ A ⇒ B — истина, если из A следует B (ложно только при A истинно и B ложно).
+ A ⇔ B — истина, если A и B имеют одинаковое значение истины.
+ ¬α∈S1
+ D1∈S1 ⇒ 2+2=5
+ {`D1⊆D2 ⇔ ∀x∈D1 x∈D2`}
+ - Параметризованные выражения в языке родов структур позволяют создавать шаблоны выражений, которые могут быть - применены к различным наборам параметров. Такие выражения используются в определениях терм-функций и - предикат-функций. + Параметризованные выражения в языке родов структур образуют самостоятельный класс конструкций. Они используются + для объявления терм-функций и предикат-функций. Вызов таких функций является соответственно + теоретико-множественным выражением (ТМВ) или логическим выражением (ЛВ).
-F1 ::= [α1∈ТМВ1, α2∈ТМВ2(α1)] ТМВ(α1, α2)
f(x₁, x₂, ..., xₙ) = expr - функция с параметрами
+ Объявление параметра производится с помощью предиката принадлежности ∈. Слева — идентификатор
+ локальной переменной, справа — область определения параметра.
P(x₁, x₂, ..., xₙ) = condition - предикат с параметрами
- template(param₁, param₂, ...) - шаблон с параметрами
- {'A(param) = {x | P(x, param)}'} - множество, зависящее от
- параметра
+ Объявленные переменные могут использоваться в областях определения последующих параметров и в ТМВ, задающем
+ результат функции.
P1 ::= [α1∈ТМВ1, α2∈ТМВ2(α1)] ЛВ(α1, α2)
+ Отличие от терм-функции состоит в том, что после списка параметров задаётся логическое выражение, а не ТМВ.
+ +F1[ξ1, S1], P1[ξ1\ξ2, ξ3]
sum(x, y) = x + y - функция сложения двух чисел
- {'is_greater(x, y) = x > y'} - предикат сравнения
- power(base, exp) = if exp = 0 then 1 else base × power(base, exp-1) - возведение в степень
- {'filter(A, P) = {x ∈ A | P(x)}'} - фильтрация множества по предикату
- F2 ::= [α1∈R1×R2, α2∈R1] α2=pr1(α1)
- Параметризованные выражения имеют типизацию вида Hᵣ ← [H₁, H₂, ..., Hᵢ], где:
+ Функции, параметры которых содержат радикалы, называются шаблонными. Радикал используется для обозначения
+ произвольной типизации в ступени аргумента функции.
Hᵣ - типизация результата
+ При вызове функции значение радикала вычисляется из типизаций аргументов. Все вычисленные значения должны
+ совпадать.
H₁, H₂, ..., Hᵢ - типизации аргументов
- Hᵣ = Logic
- Hᵣ определяется типом возвращаемого значения
+ Радикалы могут использоваться только в описании областей определения параметров, но не в выражении результата.
- Параметризованные выражения используются для определения терм-функций и предикат-функций в концептуальных - схемах. Они позволяют создавать универсальные шаблоны, которые могут применяться к различным объектам предметной - области. -
- Кванторные выражения в языке родов структур позволяют формулировать утверждения о свойствах элементов множеств. - Кванторы связывают переменные и позволяют выражать логические утверждения о всех или некоторых элементах - множества. + Кванторные выражения в языке родов структур используются для формулировки утверждений о всех или некоторых + элементах множества.
-∀x ∈ A: P(x) - "для всех x из A выполняется P(x)"
+ Всеобщность: ∀ξ∈ТМВ (ЛВ(ξ))
∃x ∈ A: P(x) - "существует x из A такой, что P(x)"
+ Существование: ∃ξ∈ТМВ (ЛВ(ξ))
∃!x ∈ A: P(x) - "существует единственный x из A такой, что P(x)"
+ ∀(ξ1, ξ2)∈ТМВ (ЛВ(ξ1, ξ2))
∃₁x ∈ A: P(x) - альтернативная запись для ∃!
+ ∀ξ1,ξ2∈ТМВ (ЛВ(ξ1, ξ2))
+ ξ из области определения
+ выполняется условие ЛВ(ξ).
+ ξ из области
+ определения, для которого условие ЛВ(ξ) выполняется.
+ ∀x ∈ A: P(x) связана квантором ∀
- ∀x∈D1 ∃y∈D2 (x,y)∈S1 & (x,x)∈S1
∀x ∈ A ∀y ∈ B: P(x, y) - для всех x из A и всех y из B
- ∀x ∈ A ∃y ∈ B: P(x, y) - для каждого x из A существует y из B
- ∀x ∈ A: P(x) → Q(x) - для всех x из A, если P(x), то Q(x)
- ∀x ∈ A: x ∈ B - все элементы A принадлежат B
- {'∃x ∈ A: x > 0'} - существует положительный элемент в A
- ∀x ∈ A ∃y ∈ B: x = f(y) - для каждого x из A существует y из B такой, что x = f(y)
- ∃!x ∈ A: P(x) ∧ Q(x) - существует единственный x из A, для которого выполняются P(x) и Q(x)
- ¬(∀x ∈ A: P(x)) эквивалентно ∃x ∈ A: ¬P(x)
- ¬(∃x ∈ A: P(x)) эквивалентно ∀x ∈ A: ¬P(x)
- ¬(∃!x ∈ A: P(x)) эквивалентно{' '}
- ∀x ∈ A: ¬P(x) ∨ ∃y ∈ A: P(y) ∧ x ≠ y
- - Все кванторные выражения имеют типизацию Logic, так как они возвращают логическое значение ИСТИНА или - ЛОЖЬ. Кванторы используются для формулировки аксиом, теорем и условий в определениях конституент. -
- -- Кванторные выражения используются для формулировки общих свойств объектов предметной области, определения - отношений между понятиями и выражения универсальных закономерностей в рамках концептуальных схем. -
Циклическая (рекурсивная) конструкция является теоретико-множественным выражением.
+ +{'R{ξ ≔ ТМВ1 | ТМВ2(ξ)}'}
+ {'R{ξ ≔ ТМВ1 | ЛВ(ξ) | ТМВ2(ξ)}'}
+ {'R{(ξ,σ) ≔ (ТМВ1,ТМВ2) | ЛВ(ξ,σ) | ТМВ3(ξ,σ)}'}
+ R — часть синтаксиса, а не идентификатор.
+ ≔ задаётся начальное значение
+ переменной (или кортежа переменных) рекурсии.
+ ЛВ, которое
+ пересчитывается на каждом шаге для текущего значения переменной рекурсии. Второй блок опционален, условием
+ выхода по умолчанию считается повторение предыдущего значения на текущем шаге.
+ На каждом шаге сначала вычисляется условие продолжения рекурсии, затем выполняется пересчёт.
+ +- Рекурсивные выражения в языке родов структур используются для определения множеств и функций через их - собственные определения. Рекурсия позволяет задавать бесконечные структуры и сложные зависимости. + Рекурсия продолжается, пока условие продолжения истинно, или до стабилизации значения переменной рекурсии + (значение на шаге k равно значению на шаге k+1). Результатом является последнее значение + переменной (или кортежа переменных) рекурсии.
-A = B ∪ f(A) - множество A определяется через себя
- f(n) = if n = 0 then 1 else n × f(n-1) - функция определяется через
- себя
- {'A = A₀ ∪ {f(x) | x ∈ A}'} - множество строится индуктивно
- {'A = ⋃{Aᵢ | i < α}'} - объединение по ординалам
- {'N = {0} ∪ {n+1 | n ∈ N}'} - индуктивное определение натуральных чисел
- fact(n) = if n = 0 then 1 else n × fact(n-1) - факториал
- fib(n) = if n ≤ 1 then n else fib(n-1) + fib(n-2) - числа Фибоначчи
- {'LIST = {nil} ∪ {cons(x, l) | x ∈ A, l ∈ LIST}'} - список элементов из A
- Для доказательства свойств рекурсивно определенных объектов используется принцип математической индукции:
-Рекурсивные выражения могут иметь различные типизации:
-ℬ(H)
- H₁ → H₂
-
- Рекурсивные выражения используются для определения сложных структур данных, бесконечных множеств и функций в
- концептуальных схемах. Они позволяют описывать объекты с внутренней структурой и зависимостями.
+ Вычисление степеней двойки:
+
+ {'R{(ξ,σ) ≔ (1, 0) | σ<5 | (2∗ξ, σ+1)} = 32'}
- Теоретико-множественные выражения в языке родов структур позволяют создавать и манипулировать множествами. - Результатом таких выражений является множество элементов определенной ступени. + Теоретико-множественные выражения (ТМВ) в языке родов структур используются для задания и преобразования + множеств. Сложные конструкции теоретико-множественных выражений выделены в индивидуальные разделы справочника. +
++ В данном разделе приведены классические операции над множествами, построенные на основе предикатов + принадлежности и логических связок.
-A ∪ B - множество всех элементов, принадлежащих A или B
+ Объединение: D1 ∪ D2 — множество элементов, принадлежащих D1 или D2.
A ∩ B - множество всех элементов, принадлежащих и A, и B
+ Пересечение: D1 ∩ D2 — множество элементов, принадлежащих и D1, и D2.
A \ B - множество всех элементов A, не принадлежащих B
+ Разность: D1 \ D2 — множество элементов, принадлежащих D1, но не D2.
A △ B - множество элементов, принадлежащих ровно одному из A или
- B
- A' - множество всех элементов универсального множества, не принадлежащих A
+ Симметрическая разность: D1 ∆ D2 — множество элементов, принадлежащих исключительно D1 или
+ исключительно D2.
{'{a, b, c}'} - множество из элементов a, b, c
+ {`{1,2} ∪ {2,3} = {1,2,3}`}
{'{x ∈ A | P(x)}'} - множество всех x из A, для которых выполняется P(x)
+ {`{1,2,3} ∩ {2,3,4} = {2,3}`}
{'{f(x) | x ∈ A}'} - множество значений f(x) для всех x из A
- A × B - множество всех пар (a, b), где a ∈ A, b ∈ B
- ℘(A) - множество всех подмножеств A
+ {`{1,2,3} \\ {2} = {1,3}`}
∅ - множество, не содержащее элементов
- U - множество всех элементов рассматриваемой области
- {'{a}'} - множество, содержащее только элемент a
- A ∪ (B ∩ C) - объединение A с пересечением B и C
- {'{x ∈ A | x > 0}'} - множество всех положительных элементов из A
- {'{x² | x ∈ {1, 2, 3}}'} - множество {'{(1, 4, 9)}'}
- A × B × C - множество всех троек (a, b, c)
-
- Множество имеет типизацию ℬ(H), где H - ступень элементов множества. Например, множество целых
- чисел имеет типизацию ℬ(Z).
-
- Структурные выражения в языке родов структур позволяют манипулировать ступенями операндов. Эти выражения
- используются для изменения структуры данных и создания новых типов на основе существующих.
+ Структурные выражения в языке родов структур используются для преобразований, меняющий{' '}
+
(H₁, H₂, ..., Hₙ) - ступень кортежа арности n
+ Булеан / Множество подмножеств: ℬ(X1) — множество всех подмножеств X1.
πᵢ(t) - извлечение i-го элемента кортежа t
+ Декартово произведение: X1×X2 — множество всех пар элементов из X1 и{' '}
+ X2.
t₁ ⊕ t₂ - объединение двух кортежей
+ Кортеж: (a, b, c) — упорядоченная n-ка (n ≥ 2).
struct(field₁: H₁, field₂: H₂, ...) - создание структуры с именованными
- полями
+ Перечисление: {'{a, b, c}'} — неупорядоченная n-ка (n ≥ 1).
+ bool(a) = {`{a}`} — множество, состоящее из одного
+ элемента.
H₁ × H₂ × ... × Hₙ - ступень n-арных кортежей
+ Множество-сумма: red(S1) — объединение элементов всех множеств в S1. Операция
+ применима только к множествам, состоящим из множеств.
Hⁿ - n-арное произведение ступени H на себя
+ Десинглетон / дебуль: debool({`{a}`}) = a — извлечение единственного элемента
+ из множества. Операция применима только к множествам с одним элементом.
ℬ(H₁ × H₂ × ... × Hₙ) - множество n-арных кортежей
+ Малая проекция: pr1((a1, …, an)) = a1.
+ Pr1(S1) — множество первых компонентов всех кортежей из S1.
(Z, Z) - ступень пар целых чисел
- ℬ(Z × Z) - множество пар целых чисел
- π₁((x, y)) - извлечение первого элемента кортежа
- struct(name: Z, age: Z) - структура с полями name и age типа целых чисел
- Результат структурного выражения имеет типизацию, определяемую операцией:
-(H₁, H₂, ..., Hₙ)
- Hᵢ
- ℬ(H₁ × H₂ × ... × Hₙ)
- - Структурные выражения используются для определения сложных типов данных в концептуальных схемах, таких как - записи, кортежи и структурированные множества. Они позволяют создавать формальные описания сложных объектов - предметной области. + Индексы у операций над кортежами для упрощения отображаются равными 1, но их можно заменить на другие + натуральные числа или их последовательность, разделенная запятой.
+ ++ Вместо одного индекса можно использовать мультииндекс — последовательность натуральных чисел через + запятую. В этом случае проекция или фильтр возвращает сразу несколько позиций кортежа. +
+pr1,3((a1, a2, a3, a4)) = (a1, a3)
+ Pr2,4(S1) — множество пар, составленных из второй и четвёртой компонент кортежей из{' '}
+ S1.
+ Fi1[D1](S1) — подмножество S1, в котором для каждого элемента первая
+ проекция принадлежит D1.
+ Fi1,2[D1](S1) отличается от фильтра с мультииндексом{' '}
+ Fi1,2[Pr1(D1), Pr2(D2)](S1) тем, что в первом случае проверяется принадлежность парам из D1, а во
+ втором — полному декартову произведению проекций D1
+ {`ℬ(2) = {{}, {1}, {2}, {1, 2}}`}
+ (1,2,3) — кортеж из трёх чисел
+ pr2((5, 4, 3, 2, 1)) = 4
+
+ Pr3({`{(1, 2, 3),(4, 5, 6)}`}) = {`{3, 6}`}
+
+
+ red({`{{1, 2, 3},{3, 4}}`}) = {`{1, 2, 3, 4}`}
+
+ bool(1) = {`{1}`}, debool({`{1}`}) = 1
+ {`Fi2[{2, 4}]({((1, 2), (3, 4), (5, 6))}) = {((1, 2), (3, 4))}`}
+ - Литералы задают фиксированные значения в выражениях. В языке родов структур используются следующие виды - литералов: -
+Литералы задают фиксированные значения в выражениях.