From 31bbf0ab848afbe2a19277b3fb5505502c7d9b17 Mon Sep 17 00:00:00 2001
From: IRBorisov <8611739+IRBorisov@users.noreply.github.com>
Date: Thu, 16 May 2024 16:05:39 +0300
Subject: [PATCH] Update help topics
---
.vscode/settings.json | 3 +
.../src/components/man/HelpConcept.tsx | 5 +-
.../src/components/man/HelpRSLangCorrect.tsx | 38 +++++++++++--
.../components/man/HelpRSLangInterpret.tsx | 42 ++++++++++++--
.../components/man/HelpRSLangOperations.tsx | 23 ++++++--
.../src/components/man/HelpRSLangTypes.tsx | 45 +++++++++++++--
.../frontend/src/models/miscellaneous.ts | 4 +-
.../src/pages/ManualsPage/ManualsPage.tsx | 48 +---------------
.../src/pages/ManualsPage/TopicsDropdown.tsx | 11 +---
.../src/pages/ManualsPage/TopicsList.tsx | 22 +------
.../src/pages/ManualsPage/TopicsStatic.tsx | 11 +---
.../src/pages/ManualsPage/TopicsTree.tsx | 57 +++++++++++++++++--
rsconcept/frontend/src/utils/labels.ts | 4 +-
13 files changed, 202 insertions(+), 111 deletions(-)
diff --git a/.vscode/settings.json b/.vscode/settings.json
index ac0882c3..52203096 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -124,10 +124,13 @@
"viewsets",
"wordform",
"Wordforms",
+ "Биективная",
+ "биективной",
"Булеан",
"Бурбаки",
"Версионирование",
"Десинглетон",
+ "интерпретируемости",
"интерпретируемость",
"компаратив",
"конституент",
diff --git a/rsconcept/frontend/src/components/man/HelpConcept.tsx b/rsconcept/frontend/src/components/man/HelpConcept.tsx
index 057da580..a1f31f17 100644
--- a/rsconcept/frontend/src/components/man/HelpConcept.tsx
+++ b/rsconcept/frontend/src/components/man/HelpConcept.tsx
@@ -7,7 +7,10 @@ function HelpConceptSystem() {
return (
Концептуализация
-
TBD
+
Сложные предметные области требуют применения специальных подходов к их пониманию и описанию. Системный подход заключается в установлении границы системы, выделении отдельных подсистем и установления связей между ними. Подсистемы описываются раздельно. Далее их описания синтезируются с учетом установленных связей. Таким образом формируется описания системы в целом через описания ее частей
+
Концептуализация заключается в дедуктивном построении концептуальных схем (систем определений), описывающих содержательные отношения в рамках каждой подсистемы. Концептуальные схемы могут быть синтезированы для получения общей системы определений в выбранной предметной области.
+
Концептуализация применяется в условиях поставленной задачи в рамках предметной области. Решаемая прикладная проблема позволяет определить границы концептуализации и разумно распределить ресурсы.
+
в ходе многократной концептуализации и решения с помощью построенных концептуальных схем прикладных задач формируется навык Концептуального мышления. Это особый способ мышления, при котором строго контролируются используемые определения и предположения, в которых происходит описание предметного содержания.
);
diff --git a/rsconcept/frontend/src/components/man/HelpRSLangCorrect.tsx b/rsconcept/frontend/src/components/man/HelpRSLangCorrect.tsx
index e5b1ee57..cf2d69f5 100644
--- a/rsconcept/frontend/src/components/man/HelpRSLangCorrect.tsx
+++ b/rsconcept/frontend/src/components/man/HelpRSLangCorrect.tsx
@@ -1,10 +1,38 @@
+import { HelpTopic } from '@/models/miscellaneous';
+
+import LinkTopic from '../ui/LinkTopic';
+
function HelpRSLangCorrect() {
- // prettier-ignore
return (
-
-
Переносимость и корректность
-
TBD
-
);
+
+
Переносимость и корректность
+
+ Биективная переносимость выражений заключается в независимости значений определений от биективной замены
+ интерпретаций неопределяемых понятий. Она основана на принципиальной не сравнимости элементов базисных множеств.
+
+
+ Проверка выражений, содержащих глобальные идентификаторы проводится в заданном глобальном контексте (известны
+ типизации и биективная переносимость, информация об аргументах функций). Все неизвестные идентификаторы
+ считаются некорректными.
+
+
+ Правила проверки теоретико-множественных выражений выводятся из условия биективной переносимости предиката
+ принадлежности – элемент должен соответствовать множеству, для которого проверяется принадлежность. Необходимым
+ условием биективной переносимости является выполнение{' '}
+ для всех локальных и глобальных
+ идентификаторов.
+
+
+ Логическая корректность (непротиворечивость) выражений в общем случае не может быть автоматически проверена.
+ Однако наличие примера интерпретации на объектах предметной области является основанием утверждения о
+ непротиворечивости накладываемых аксиом.
+
+
+ Редактор выражений на Портале оснащен инструментами проверки выражений и вычисления их типизации. Найденные
+ ошибки диагностируются и выводится соответствующее сообщение об ошибке.
+
+
+ );
}
export default HelpRSLangCorrect;
diff --git a/rsconcept/frontend/src/components/man/HelpRSLangInterpret.tsx b/rsconcept/frontend/src/components/man/HelpRSLangInterpret.tsx
index e3e5bafc..1f5944e6 100644
--- a/rsconcept/frontend/src/components/man/HelpRSLangInterpret.tsx
+++ b/rsconcept/frontend/src/components/man/HelpRSLangInterpret.tsx
@@ -1,10 +1,42 @@
+import { HelpTopic } from '@/models/miscellaneous';
+
+import LinkTopic from '../ui/LinkTopic';
+
function HelpRSLangInterpret() {
- // prettier-ignore
return (
-
-
Интерпретируемость
-
TBD
-
);
+
+
Интерпретируемость
+
+ Практическое применение концептуальным схем основано на интерпретации - соотнесении предметного
+ содержания и схемных терминов и определений. Для этого в соответствии с{' '}
+ вводятся списки объектов предметной области,
+ соответствующих неопределяемым понятиям. При этом обеспечивается корректность отношений{' '}
+ для родовых структур.
+
+
+ Интерпретация производных понятий может быть задана внешними методами либо автоматически вычислена с помощью
+ формальных определений. При этом не всякое выражение, содержащее перебор элементов множеств, может быть
+ вычислено за приемлемое время. Например, интерпретация утверждения {'"∀α∈Z α>0"'} приводит к перебору
+ бесконечного множества целых чисел.
+
+
+ Интерпретируемыми будем считать выражения, которые можно вычислить за полиномиальное время относительно
+ мощностей интерпретаций глобальных идентификаторов, используемых в этом выражении. По аналогии с{' '}
+ условия интерпретируемости могут
+ быть выведены из утверждения {'выражения "Z, ℬ(α)" не интерпретируемы'}.
+
+
+ Также вводится категория выражений, задающих множества, которым можно принадлежность за полиномиальное время, но
+ нельзя вычислить полный список элемент. Например, {'"Z, D{ξ∈ℬ(X1×X1) | Pr1(ξ)=Pr2(ξ)}"'}. Конституенты, чьи
+ выражения удовлетворяет этому свойству, называются Неразмерными. Их можно использовать в интерпретируемых
+ выражениях только в конструкциях, не требующих перебора их элементах.
+
+
+ Конституенты, чьи выражения не позволяют проверить принадлежность за полиномиальное время, называются{' '}
+ Невычислимыми.
+
+
+ );
}
export default HelpRSLangInterpret;
diff --git a/rsconcept/frontend/src/components/man/HelpRSLangOperations.tsx b/rsconcept/frontend/src/components/man/HelpRSLangOperations.tsx
index 558092d6..bc7d338f 100644
--- a/rsconcept/frontend/src/components/man/HelpRSLangOperations.tsx
+++ b/rsconcept/frontend/src/components/man/HelpRSLangOperations.tsx
@@ -1,10 +1,23 @@
+import { HelpTopic } from '@/models/miscellaneous';
+
+import { IconTemplates } from '../Icons';
+import LinkTopic from '../ui/LinkTopic';
+
function HelpRSLangOperations() {
- // prettier-ignore
return (
-
-
Операции над концептуальными схемами
-
TBD
-
);
+
+
Операции над концептуальными схемами
+
В данном разделе поясняются различные операции над концептуальными схемами
+
+
+ Генерация из шаблона
+
+
+ Данная операция позволяет вставить конституенту из{' '}
+ .
+
+
+ );
}
export default HelpRSLangOperations;
diff --git a/rsconcept/frontend/src/components/man/HelpRSLangTypes.tsx b/rsconcept/frontend/src/components/man/HelpRSLangTypes.tsx
index 0d55b31a..6eb6694d 100644
--- a/rsconcept/frontend/src/components/man/HelpRSLangTypes.tsx
+++ b/rsconcept/frontend/src/components/man/HelpRSLangTypes.tsx
@@ -1,10 +1,45 @@
function HelpRSLangTypes() {
- // prettier-ignore
return (
- );
+
+
Типизация
+
+ Родоструктурное выражение ξ обладает типизацией (структурой), если выполнено ξ∈H,
+
+ где H – корректное выражение ступени, задаваемой следующими правилами:
+
+ Xi, Ci – ступень, называемая элемент;
+
+
+ Z – ступень, называемая целое число;
+
+
+ (H1×...×Hn) – ступень, называемая кортеж арности n;
+
+
+ ℬ(H) – ступень, называемая множеством.
+
+
+
Пустое множество ∅ имеет типизацию ℬ(R0) – множество с произвольной структурой элемента
+
+ Для обобщения понятия типизация на логические и параметризованные выражения вводится ряд дополнительных
+ обозначений
+
+
+ Логические выражения (аксиомы, теоремы), принимающие значения ИСТИНА или ЛОЖЬ относятся к типизации Logic
+
+
+ Параметризованные выражения (терм-функции, предикат-функции) относятся к типизации
+ Hr 🠔 [H1, H2, ... Hi],
+
+ где Hr – типизация результата, H1, ... Hi – типизации аргументов
+
+
+
+ Шаблонные параметризованные выражения могут содержать обозначения R1, ... Ri, соответствующие произвольным
+ ступеням, определяемым исходя из типизации аргументов по месту использования выражения.
+
+
+ );
}
export default HelpRSLangTypes;
diff --git a/rsconcept/frontend/src/models/miscellaneous.ts b/rsconcept/frontend/src/models/miscellaneous.ts
index 71173a25..72ed8dbf 100644
--- a/rsconcept/frontend/src/models/miscellaneous.ts
+++ b/rsconcept/frontend/src/models/miscellaneous.ts
@@ -62,8 +62,8 @@ export enum HelpTopic {
RSL_TYPES = 'rslang-types',
RSL_CORRECT = 'rslang-correctness',
RSL_INTERPRET = 'rslang-interpretation',
- RSL_TEMPLATES = 'rslang-templates',
RSL_OPERATIONS = 'rslang-operations',
+ RSL_TEMPLATES = 'rslang-templates',
TERM_CONTROL = 'terminology-control',
VERSIONS = 'versions',
@@ -96,8 +96,8 @@ export const topicParent: Map = new Map([
[HelpTopic.RSL_TYPES, HelpTopic.RSLANG],
[HelpTopic.RSL_CORRECT, HelpTopic.RSLANG],
[HelpTopic.RSL_INTERPRET, HelpTopic.RSLANG],
- [HelpTopic.RSL_TEMPLATES, HelpTopic.RSLANG],
[HelpTopic.RSL_OPERATIONS, HelpTopic.RSLANG],
+ [HelpTopic.RSL_TEMPLATES, HelpTopic.RSLANG],
[HelpTopic.TERM_CONTROL, HelpTopic.TERM_CONTROL],
[HelpTopic.VERSIONS, HelpTopic.VERSIONS],
diff --git a/rsconcept/frontend/src/pages/ManualsPage/ManualsPage.tsx b/rsconcept/frontend/src/pages/ManualsPage/ManualsPage.tsx
index f552b1d1..3e14ca5a 100644
--- a/rsconcept/frontend/src/pages/ManualsPage/ManualsPage.tsx
+++ b/rsconcept/frontend/src/pages/ManualsPage/ManualsPage.tsx
@@ -1,12 +1,12 @@
'use client';
-import { useCallback, useState } from 'react';
+import { useCallback } from 'react';
import { urls } from '@/app/urls';
import { useConceptNavigation } from '@/context/NavigationContext';
import { useConceptOptions } from '@/context/OptionsContext';
import useQueryStrings from '@/hooks/useQueryStrings';
-import { HelpTopic, topicParent } from '@/models/miscellaneous';
+import { HelpTopic } from '@/models/miscellaneous';
import TopicsList from './TopicsList';
import ViewTopic from './ViewTopic';
@@ -15,45 +15,8 @@ function ManualsPage() {
const router = useConceptNavigation();
const query = useQueryStrings();
const activeTopic = (query.get('topic') || HelpTopic.MAIN) as HelpTopic;
- const [topicFolded, setFolded] = useState