Skip to main content
LibreTexts - Ukrayinska

19.9: Вправи шавлії

  • Page ID
    64361
  • \( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \) \( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)\(\newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\) \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\) \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\) \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\) \( \newcommand{\Span}{\mathrm{span}}\) \(\newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\) \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\) \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\) \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\) \( \newcommand{\Span}{\mathrm{span}}\)

    1

    Використовуйте R = posets.randomPoset (30,0.05), щоб побудувати випадкову позицію. Використовуйте r.plot (), щоб отримати уявлення про те, що ви побудували.

    1. Проілюструйте використання методів poset: .is_lequal (), .is_less_than (), .is_gequal () і.is_greater_than (), щоб визначити, чи два конкретні елементи (на ваш вибір) пов'язані або незрівнянні.
    2. Використовуйте .minimal_elements () і.maximal_elements (), щоб знайти найменші та найбільші елементи вашої публікації.
    3. Використовуйте LatticePoset (R), щоб побачити, чи є poset R решіткою, намагаючись перетворити її в решітку.
    4. Знайдіть лінійне розширення вашої посади. Переконайтеся, що будь-яка пара елементів, які можна порівняти в позеті, буде аналогічно порівнянна в лінійному розширенні.

    2

    Побудувати позицію на додатних дільниках\(72=2^3\cdot 3^2\) з подільністю як відношення, а потім перетворити на решітку.

    1. Визначте один і нульовий елемент за допомогою .top () і.bottom ().
    2. Визначте всі пари елементів решітки, які є доповненнями один одного, не використовуючи метод.complement (), а просто використовуйте методи.meet () і.join (). Додатковий кредит, якщо ви можете вивести кожну пару лише один раз.
    3. Визначте, чи є решітка розподільною, використовуючи лише методи.meet () та .join (), а не метод.is_distributive ().

    3

    Побудувати кілька специфічних алмазних решіток з posets.DiamondPoset (n), змінюючи значення n. Як тільки ви відчуєте, що маєте достатньо емпіричних доказів, дайте відповіді, з обґрунтуванням, на наступні питання для загальних значень,\(n\text{,}\) заснованих на спостереженнях, отриманих в результаті ваших експериментів з Sage.

    1. Які елементи мають доповнення, а які ні, і чому?
    2. Прочитайте документацію методу.antichains (), щоб дізнатися, що таке антиланцюг. Скільки існує антиланцюгів?
    3. Чи є решітка розподільна?

    4

    Використовуйте posets.BooleanLattice (4) для побудови екземпляра прототипної булевої алгебри на\(16\) елементах (тобто всіх підмножин\(4\) -set).

    Потім використовуйте posets.IntegerCompositions (5) для побудови позета,\(16\) елементами якої є композиції цілого числа\(5\text{.}\) Ми бачили вище, що решітка целочисленного складу є розподільною та доповненою, що робить її булевою алгеброю. І за теоремою\(19.23\) можна зробити висновок, що ці дві булеві алгебри ізоморфні.

    Скористайтеся методом.plot (), щоб візуально побачити подібність. Потім використовуйте метод .hasse_diagram () на кожній позі, щоб отримати орієнтований граф (який ви також можете побудувати, хоча вбудовування в площину може бути не настільки інформативним). Використовуйте метод графа .is_isomorphic (), щоб побачити, що дві діаграми Хассе насправді є «однаковими».

    5

    (Додатково) Для попереднього питання побудуйте явний ізоморфізм між двома булевими алгебрами. Це буде двооб'єктивна функція (побудована за допомогою команди def), яка перетворює композиції на множини (або, якщо ви виберете, набори в композиції) і яка поважає операції meet and join. Ви можете перевірити та проілюструвати свою функцію шляхом її взаємодії з конкретними елементами, оціненими в операціях meet та join, як описано у визначенні ізоморфізму булевих алгебр.