diff options
Diffstat (limited to 'lab5/lab5.py')
| -rw-r--r-- | lab5/lab5.py | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/lab5/lab5.py b/lab5/lab5.py index 5cf5027..eeda67c 100644 --- a/lab5/lab5.py +++ b/lab5/lab5.py @@ -119,6 +119,15 @@ def print_cayley(semigroup, cayley): print() +def print_ideals(semigroup, right_ideals, left_ideals): + for element in semigroup: + r = right_ideals[element] + l = right_ideals[element] + print(f"({element}] = {{{', '.join(r)}}}") + print(f"[{element}) = {{{', '.join(l)}}}") + print(f"[{element}] = {{{', '.join(r | l)}}}") + + def make_semigroup(): print("Введите элементы полугруппы:") semigroup = set(input().split()) @@ -126,9 +135,9 @@ def make_semigroup(): print("Введите количество преобразований:") k = int(input()) + print(f"Введите преобразования:") translations = [] for _ in range(k): - print(f"Введите преобразование: ") key, val = input().split() translations.append((key, val)) @@ -169,6 +178,9 @@ def main(): d = r + l print(d.astype(int)) + print("Идеалы:") + print_ideals(semigroup, right_ideals, left_ideals) + print("egg-box диаграмма:") egg_box = get_egg_box(d, semigroup) print(egg_box) |