Решение систем логических уравнений, ЕГЭ 23...

Post on 15-Jan-2017

84 views 17 download

Transcript of Решение систем логических уравнений, ЕГЭ 23...

Метод решения систем однородных логических уравнений

(22.11.2016)

Максименкова Ольга Вениаминовна, старший преподаватель департамента программной инженерии факультета компьютерных наук НИУ ВШЭ

© Максименкова О.В., ДПИ ФКН НИУ ВШЭ 1

Напоминание: задача поиска количества путей в многодольном графе

• K – количество одинаковых двудольных графов, составляющих многодольный граф;

• Q – количество вершин в каждой доле;

• F0 – единичная вектор-строка размерности Q;

• FK – вектор-строка размерности Q, элементами которой являются количества путей из первой доли в каждую вершину K-ой доли.

• I – единичный вектор-столбец размерности Q;

• R – общее количество путей из всех вершин первой доли многодольного графа во все вершины K-й доли.

• Тогда можно записать: 𝑅=𝐹0×𝑀𝐾×𝐼• Или в виде рекуррентной формулы 𝐹𝑖=𝐹𝑖−1×𝑀, 𝑖=1,2,…,𝐾𝑅=𝐹𝐾×𝐼

2© Максименкова О.В ДПИ ФКН НИУ ВШЭ

Пример 1 (1)

3© Максименкова О.В ДПИ ФКН НИУ ВШЭ

Пример 1 (2)

• Перепишем в принятых нами обозначениях:𝑥1 + 𝑥2 ∙ 𝑥3 = 1𝑥2 + 𝑥3 ∙ 𝑥4 = 1…𝑥7 + 𝑥8 ∙ 𝑥9 = 1𝑥8 + 𝑥9 ∙ 𝑥10 = 1

• Заметим, что все уравнения в системе имеют одинаковую структуру:

𝑥𝑖 + 𝑥𝑖+1 ∙ 𝑥𝑖+2 = 1

4© Максименкова О.В ДПИ ФКН НИУ ВШЭ

Эта пара входит в (i+1)-е уравнение

Пример 1 (3)

• Последовательно решаем уравнения, то есть узнаем число решений первого уравнения, затем второго и так далее…

• Построим таблицу истинности для первого уравнения:

5© Максименкова О.В ДПИ ФКН НИУ ВШЭ

x1 x2 x3 x2x3 x1+x2x3

0 0 0 0 0

0 0 1 0 0

0 1 0 0 0

0 1 1 1 1

1 0 0 0 1

1 0 1 0 1

1 1 0 0 1

1 1 1 1 1

Сколько решений у первого уравнения?

Напишите в чате

Пример 1 (4)

• Теперь посмотрим одновременно на первое и второе уравнения:

𝑥1 + 𝑥2 ∙ 𝑥3 = 1

𝑥2 + 𝑥3 ∙ 𝑥4 = 1

6© Максименкова О.В ДПИ ФКН НИУ ВШЭ

x1 x2 x3 x2x3 x1+x2x3

0 0 0 0 0

0 0 1 0 0

0 1 0 0 0

0 1 1 1 1

1 0 0 0 1

1 0 1 0 1

1 1 0 0 1

1 1 1 1 1

x1, x2

x2, x3

00 01 10 11

00 01 10 11

Ищем связь между парами x1,x2 и x2,x3

Пример 1 (5)

• Чему соответствует число рёбер этого двудольного графа?

7© Максименкова О.В ДПИ ФКН НИУ ВШЭ

x1, x2

x2, x3

00 01 10 11

00 01 10 11

Напишите в чате

Пример 1 (6)

• Добавим связи между парами x2,x3 и x3,x4

8© Максименкова О.В ДПИ ФКН НИУ ВШЭ

x1, x2

x2, x3

00 01 10 11

00 01 10 11

x3, x4 00 01 10 11

Это соответствует добавлению ещё одного уравнения в систему.

Пример 1 (7)

• Получили многодольный граф, в котором связи между долями имеют одинаковую структуру

9© Максименкова О.В ДПИ ФКН НИУ ВШЭ

x1, x2

x2, x3

00 01 10 11

00 01 10 11

𝑀 =

0 0 0 00 0 0 11 1 0 00 0 1 1

Мы помним, что общее количество путей в K-ую долю определяется 𝑅=𝐹0×𝑀𝐾×𝐼

Пример 1 (8)

𝑅𝐾 = 1 1 1 1 ×

0 0 0 00 0 0 11 1 0 00 0 1 1

𝐾

×

1111

• В виде рекуррентной формулы это можно записать 𝐹𝑖=𝐹𝑖−1×𝑀, 𝑖=1,2,…,𝐾

• 𝐹𝑖 – вектор-строка размера 4, состоящая из количеств путей в соответствующую вершину i-ой доли многодольного графа из всех вершин первой доли: 𝐹𝑖 = 𝑓00

𝑖 𝑓01𝑖 𝑓10

𝑖 𝑓11𝑖

• Как вычислить общее количество путей из первой доли в i-ю? 𝑅i=𝐹i×𝐼𝑅𝑖 = 𝑓00

𝑖 +𝑓01𝑖 +𝑓10

𝑖 +𝑓11𝑖

10© Максименкова О.В ДПИ ФКН НИУ ВШЭ

Пример 1 (9)

• Посмотрим на матричные вычисления для системы из трёх уравнений:

𝐹1 = 𝐹0 ×𝑀 = 1 1 1 1 ×

0 0 0 00 0 0 11 1 0 00 0 1 1

= 1 1 1 2

𝐹2 = 𝐹1 ×𝑀 = 1 1 1 2 ×

0 0 0 00 0 0 11 1 0 00 0 1 1

= 1 1 2 3

𝐹3 = 𝐹2 ×𝑀 = 1 1 2 3 ×

0 0 0 00 0 0 11 1 0 00 0 1 1

= 2 2 3 4

Чему равно количество решений?

11© Максименкова О.В ДПИ ФКН НИУ ВШЭ

Напишите в чате

Пример 1 (10)

• Вернёмся к нашему графу и запишем количество путей через рекуррентные формулы:

• Как вычислить общее количество решений для системы из iуравнений?

12© Максименкова О.В ДПИ ФКН НИУ ВШЭ

xi-1, xi

xi, xi+1

00 01 10 11

00 01 10 11

𝑓00𝑖 = 𝑓10

𝑖−1

𝑓01𝑖 = 𝑓10

𝑖−1

𝑓10𝑖 = 𝑓11

𝑖−1

𝑓11𝑖 = 𝑓01

𝑖−1 + 𝑓11𝑖−1

Напишите в чате

Пример 1 (11)

• Для наглядности построим таблицу вычислений

13© Максименкова О.В ДПИ ФКН НИУ ВШЭ

𝑓00𝑖 = 𝑓10

𝑖−1

𝑓01𝑖 = 𝑓10

𝑖−1

𝑓10𝑖 = 𝑓11

𝑖−1

𝑓11𝑖 = 𝑓01

𝑖−1 + 𝑓11𝑖−1

Кол-во ур-ий

пары 𝒇𝟎𝟎𝒊 𝒇𝟎𝟏

𝒊 𝒇𝟏𝟎𝒊 𝒇𝟏𝟏

𝒊 𝑹𝒊

0 x1, x2 0 1 1 1

1 x2, x3 1 1 1 2 5

2 x3, x4 1 1 2 3 7

3 x4, x5 2 2 3 4 11

4 x5, x6 3 3 4 6 16

5 x6, x7 4 4 6 9 23

6 x7, x8 6 6 9 13 34

7 x8, x9 9 9 13 19 50

8 x9, x10 13 13 19 28 73

Ответ

Алгоритм решения системы однородных логических уравнений (1)1. Замена переменных (если возможна).

2. Переписать уравнение однородной системы в общем виде.

3. Преобразовать выражение в левой части уравнения (при необходимости).

4. Привести уравнение к логическому выражению равному единице (при необходимости)

5. Записать два соседних уравнения в общем виде• выделить множество общих переменных для двух соседних уравнений

6. В общем виде построить таблицу истинности логического выражения из левой части уравнения.

7. По таблице истинности определить связь между всеми возможными комбинациями элементов множеств, полученных в п.5

© Максименкова О.В., ДПИ ФКН НИУ ВШЭ 14

Алгоритм решения системы однородных логических уравнений (2)

8. Представить таблицу истинности в виде двудольного графа так, чтобы одному решению соответствовало ровно одно ребро.

• Множества вершин первой и второй долей графа должны совпадать.• Вершины представляют собой все наборы значений, которые могут

принимать выделенные общие переменные

9. Определить зависимость количества решений для системы iуравнений от количества решений системы (i-1) уравнений.

10. Найти количество решений системы уравнений одним из способов:

• Построением таблицы последовательного решения систем i-уравнений, i = 1,2,…,K.

• Умножением векторов и матриц для определения количества путей в многодольном графе, составленном из однородных двудольных.

11. Перейти к исходным переменным, если была замена переменных, и найти количество решений для исходной системы уравнений.

15© Максименкова О.В ДПИ ФКН НИУ ВШЭ

Пример использования алгоритма (1)

16© Максименкова О.В ДПИ ФКН НИУ ВШЭ

Пример использования алгоритма (2)

• Переписать уравнение однородной системы в общем виде.𝑥2𝑖−1 ≡ 𝑥2𝑖 + 𝑥2𝑖−1 ≡ 𝑥2𝑖+1 ∙ 𝑥2𝑖 ≡ 𝑥2𝑖+1 = 1

• Записать два соседних уравнения в общем виде• выделить множество общих переменных для двух соседних уравнений

𝑥2𝑖−1 ≡ 𝑥2𝑖 + 𝑥2𝑖−1 ≡ 𝑥2𝑖+1 ∙ 𝑥2𝑖 ≡ 𝑥2𝑖+1 = 1

𝑥2𝑖+1 ≡ 𝑥2𝑖+2 + 𝑥2𝑖+1 ≡ 𝑥2𝑖+3 ∙ 𝑥2𝑖+2 ≡ 𝑥2𝑖+3 = 1

• В (i+1)-м уравнении записана переменная x2i+1 на месте переменной x2i-1 i-го уравнения, следовательно надо найти связь между этими двумя переменными

Сколько общих переменных в соседних уравнениях?

17© Максименкова О.В ДПИ ФКН НИУ ВШЭ

Напишите в чате

Пример использования алгоритма (3)

• В общем виде построить таблицу истинности логического выражения из левой части уравнения

18© Максименкова О.В ДПИ ФКН НИУ ВШЭ

𝒙𝟐𝒊−𝟏 𝒙𝟐𝒊 𝒙𝟐𝒊+𝟏 𝒙𝟐𝒊−𝟏⨁𝒙𝟐𝒊 𝒙𝟐𝒊−𝟏⨁𝒙𝟐𝒊+𝟏 𝒙𝟐𝒊 ≡ 𝒙𝟐𝒊+𝟏 𝒙𝟐𝒊−𝟏⨁𝒙𝟐𝒊+𝟏 𝒙𝟐𝒊 ≡ 𝒙𝟐𝒊+𝟏

0 0 0 0 0 1 0 0

0 0 1 0 1 0 0 0

0 1 0 1 0 0 0 1

0 1 1 1 1 1 1 1

1 0 0 1 1 1 1 1

1 0 1 1 0 0 0 1

1 1 0 0 1 0 0 0

1 1 1 0 0 1 0 0

Пример использования алгоритма (4)

• По таблице истинности определить связь между всеми возможными комбинациями элементов

• Определяем связь между возможными комбинациями x2i-1 и x2i+1, учитывая переменную x2i

19© Максименкова О.В ДПИ ФКН НИУ ВШЭ

x2i-1

x2i

0 1

0 1

x2i+1 0 1

𝒙𝟐𝒊−𝟏 𝒙𝟐𝒊 𝒙𝟐𝒊+𝟏

0 1 0 1 0 0 0 1

0 1 1 1 1 1 1 1

1 0 0 1 1 1 1 1

1 0 1 1 0 0 0 1

Напишите в чатеСколько долей в этом графе?

Пример использования алгоритма (5)

• Определить матрицу графа (перемножим матрицы, образующих его двудольных графов)

0 11 0

×1 11 1

=1 11 1

• Определить зависимость количества решений для системы iуравнений от количества решений системы (i-1) уравнений.

𝑓0𝑖 = 𝑓0

𝑖−1 + 𝑓1𝑖−1

𝑓1𝑖 = 𝑓0

𝑖−1 + 𝑓1𝑖−1

20© Максименкова О.В ДПИ ФКН НИУ ВШЭ

Пример использования алгоритма (6)

• Найти количество решений системы уравнений:• Умножением векторов и матриц для определения количества путей в

многодольном графе, составленном из однородных двудольных.

𝑅𝐾 = 1 1 ×1 11 1

𝐾

×11

• Построением таблицы последовательного решения систем i-уравнений, i= 1,2,…,K

𝑅𝑖 = 2𝑓0𝑖−1 + 2𝑓1

𝑖−1

21© Максименкова О.В ДПИ ФКН НИУ ВШЭ

Кол-во ур-ий

Количествопеременных

пары 𝒇𝟎𝒊 𝒇𝟏

𝒊 𝑹𝒊

0 x1 1 1

1 3 x3 2 2 4

2 5 x5 4 4 8

3 7 x7 8 8 16

4 9 x9 16 16 32

Ответ

Демо-вариант ЕГЭ 2017 (1)

22© Максименкова О.В ДПИ ФКН НИУ ВШЭ

Демо-вариант ЕГЭ 2017 (2)

Перепишем в выбранных нами обозначениях𝑥1 → 𝑥2 ∙ 𝑦1 ∙ 𝑦1 → 𝑦2 = 1𝑥2 → 𝑥3 ∙ 𝑦2 ∙ 𝑦2 → 𝑦1 = 1…𝑥5 → 𝑥6 ∙ 𝑦5 ∙ 𝑦5 → 𝑦6 = 1𝑥6 → 𝑦6 = 1

23© Максименкова О.В ДПИ ФКН НИУ ВШЭ

Демо-вариант ЕГЭ 2017 (3)

Перепишем систему в общем виде:𝑥𝑖 → 𝑥𝑖+1 ∙ 𝑦𝑖 ∙ 𝑦𝑖 → 𝑦𝑖+1 = 1, 𝑖 = 1, . . , 5𝑥6 → 𝑦6 = 1

Пока исключим из рассмотрения шестое уравнение и запишем два соседних уравнения из первых пяти:

𝑥𝑖−1 → 𝑥𝑖 ∙ 𝑦𝑖−1 ∙ 𝑦𝑖−1 → 𝑦𝑖 = 1

𝑥𝑖 → 𝑥𝑖+1 ∙ 𝑦𝑖 ∙ 𝑦𝑖 → 𝑦𝑖+1 = 1

Соседние уравнения имеют две общие переменные xi и yi.

24© Максименкова О.В ДПИ ФКН НИУ ВШЭ

Демо-вариант ЕГЭ 2017 (4)

• Найдём связь между парами (xi−1, yi−1) и (xi, yi)

• Для этого построим таблицу истинности (i − 1)-го уравнения

• Будем учитывать свойства импликации и конъюнкции

25© Максименкова О.В ДПИ ФКН НИУ ВШЭ

A B A→B

0 0 1

0 1 1

1 0 0

1 1 1

A B A∙B

0 0 0

0 1 0

1 0 0

1 1 1

26© Максименкова О.В ДПИ ФКН НИУ ВШЭ

xi-1 yi-1 xi yi xiyi-1 xi-1→xiyi-1 yi-1→yi (xi-1→xiyi-1)(yi-1→yi)

0 0 0 0 0

0 0 0 1 0

0 0 1 0 0

0 0 1 1 0

0 1 0 0 0

0 1 0 1 0

0 1 1 0 1

0 1 1 1 1

1 0 0 0 0

1 0 0 1 0

1 0 1 0 0

1 0 1 1 0

1 1 0 0 0

1 1 0 1 0

1 1 1 0 1

1 1 1 1 1

27© Максименкова О.В ДПИ ФКН НИУ ВШЭ

xi-1 yi-1 xi yi xiyi-1 xi-1→xiyi-1 yi-1→yi (xi-1→xiyi-1)(yi-1→yi)

0 0 0 0 0 1

0 0 0 1 0 1

0 0 1 0 0 1

0 0 1 1 0 1

0 1 0 0 0 1

0 1 0 1 0 1

0 1 1 0 1 1

0 1 1 1 1 1

1 0 0 0 0 x

1 0 0 1 0 x

1 0 1 0 0 x

1 0 1 1 0 x

1 1 0 0 0 x

1 1 0 1 0 x

1 1 1 0 1 1

1 1 1 1 1 1

28© Максименкова О.В ДПИ ФКН НИУ ВШЭ

xi-1 yi-1 xi yi xiyi-1 xi-1→xiyi-1 yi-1→yi (xi-1→xiyi-1)(yi-1→yi)

0 0 0 0 0 1 1

0 0 0 1 0 1 1

0 0 1 0 0 1 1

0 0 1 1 0 1 1

0 1 0 0 0 1 x

0 1 0 1 0 1 1

0 1 1 0 1 1 x

0 1 1 1 1 1 1

1 0 0 0 0 x

1 0 0 1 0 x

1 0 1 0 0 x

1 0 1 1 0 x

1 1 0 0 0 x x

1 1 0 1 0 x

1 1 1 0 1 1 x

1 1 1 1 1 1 1

29© Максименкова О.В ДПИ ФКН НИУ ВШЭ

xi-1 yi-1 xi yi xiyi-1 xi-1→xiyi-1 yi-1→yi (xi-1→xiyi-1)(yi-1→yi)

0 0 0 0 0 1 1 1

0 0 0 1 0 1 1 1

0 0 1 0 0 1 1 1

0 0 1 1 0 1 1 1

0 1 0 0 0 1 x

0 1 0 1 0 1 1 1

0 1 1 0 1 1 x

0 1 1 1 1 1 1 1

1 0 0 0 0 x

1 0 0 1 0 x

1 0 1 0 0 x

1 0 1 1 0 x

1 1 0 0 0 x x

1 1 0 1 0 x

1 1 1 0 1 1 x

1 1 1 1 1 1 1 1

Демо-вариант ЕГЭ 2017 (9)

• Определяем связь множества пар (xi−1, yi−1) и (xi, yi) для строк таблицы, в которых выражение истинно.

30© Максименкова О.В ДПИ ФКН НИУ ВШЭ

xi−1, yi−1

xi, yi

00 01 10 11

00 01 10 11

xi-1 yi-1 xi yi xiyi-1 xi-1→xiyi-1 yi-1→yi (xi-1→xiyi-1)(yi-1→yi)

0 0 0 0 0 1 1 1

0 0 0 1 0 1 1 1

0 0 1 0 0 1 1 1

0 0 1 1 0 1 1 1

0 1 0 1 0 1 1 1

0 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1

Демо-вариант ЕГЭ 2017 (10)

• Запишем зависимость количества решений в системе с iуравнениями, от количества решений в системе с (i-1)уравнениями.

𝑓00𝑖 = 𝑓00

𝑖−1

𝑓01𝑖 = 𝑓00

𝑖−1 + 𝑓01𝑖−1

𝑓10𝑖 = 𝑓00

𝑖−1

𝑓11𝑖 = 𝑓00

𝑖−1 + 𝑓01𝑖−1 + 𝑓11

𝑖−1

Поскольку у нас ещё есть шестое уравнение, то все наборы, заканчивающиеся на 10 мы исключим из решения, то естьколичество решений системы из i уравнений будет равно:

𝑅𝑖 = 4𝑓00𝑖 + 2𝑓01

𝑖 + 𝑓11𝑖

31© Максименкова О.В ДПИ ФКН НИУ ВШЭ

Демо-вариант ЕГЭ 2017 (11)

• Строим таблицу для вычислений:

32© Максименкова О.В ДПИ ФКН НИУ ВШЭ

Количество уравнений

𝒇𝟎𝟎𝒊 𝒇𝟎𝟏

𝒊 𝒇𝟏𝟎𝒊 𝒇𝟏𝟏

𝒊 𝑹𝒊

0 1 1 0 1

1 1 2 1 3

2 1 3 1 6

3 1 4 1 10

4 1 5 1 15

5 1 6 1 21 28

×+ + +Ответ

xi−1, yi−1

xi, yi

00 01 10 11

00 01 10 11

Демо-вариант ЕГЭ-2017 (12)

• Проверим результаты, подсчётом числа решений в Wolfram Alpha

• Count[BooleanTable[{(X1\[Implies]X2&&Y1)&&(Y1\[Implies]Y2)&&(X2\[Implies]X3&&Y2)&&(Y2\[Implies]Y3)&&(X3\[Implies]X4&&Y3)&&(Y3\[Implies]Y4)&&(X4\[Implies]X5&&Y4)&&(Y4\[Implies]Y5)&&(X5\[Implies]X6&&Y5)&&(Y5\[Implies]Y6)&&(X6\[Implies]Y6)},{X1,X2,X3,X4,X5,X6,Y1,Y2,Y3,Y4,Y5,Y6}], {True}]

• Ответ 28

33© Максименкова О.В ДПИ ФКН НИУ ВШЭ

Время вопросов

© Максименкова О.В., ДПИ ФКН НИУ ВШЭ 34

Использованная литература

1. Авдошин С. М., Ахметсафина Р. З., Максименкова О. В. Информатика: Логика и алгоритмы. Эффективные методы решения задач: Пособие для самостоятельной подготовки.--М., СПб.: Просвещение, 2013.

2. Авдошин С.М., Ахметсафина Р.З., и др. Информатика и ИКТ: ЕГЭ: Учебно-справочные материалы (Серия «Итоговый контроль: ЕГЭ»).– М.; СПб.: Просвещение, 2012. – 295 с.

35© Максименкова О.В ДПИ ФКН НИУ ВШЭ