Автор Тема: Составить и решить систему логических (булевых) уравнений  (Прочитано 1305 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Алла

  • Пользователь
  • Сообщений: 12
    • Просмотр профиля
Помогите решить систему логических уравнений: \(  \large \begin{cases} x \to y=xy \\ y \to x = x \vee y \end{cases}  \).
 

Оффлайн Admin

  • Администратор
  • Сообщений: 5228
  • Поблагодарили: 1582 раз(а)
    • Просмотр профиля
Преобразуем систему равносильным образом, приведя при этом все функции, фигурирующие в уравнениях, к полиномиальному виду:

\(  \large \begin{cases} x \to y= xy \\ y \to x =x \vee y \end{cases} \ \Leftrightarrow \ \begin{cases} x' \vee y=xy \\ y' \vee x=xy \oplus x \oplus y \end{cases} \ \Leftrightarrow \ \begin{cases} (x \oplus 1) \vee y = xy \\ (y \oplus 1) \vee x = xy \oplus x \oplus y \end{cases} \ \Leftrightarrow \\  \Leftrightarrow \ \begin{cases} xy \oplus y \oplus x \oplus 1 \oplus y =xy \\ yx \oplus x \oplus y \oplus 1 \oplus x = xy \oplus x \oplus y \end{cases} \ \Leftrightarrow \ \begin{cases} x \oplus 1=0 \\ x \oplus 1=0 \end{cases} \ \Leftrightarrow x \oplus 1=0 \ \Leftrightarrow x=1 \)

Итак, решениями системы являются пары \(  \large (1,0) \) и \(  \large (1,1) \). Выполним проверку:

1) \(  \large  \begin{cases} 1 \to 0=1 \cdot 0 \\ 0 \to 1= 1 \vee 0 \end{cases} \ \Leftrightarrow \ \begin{cases} 0=0 \\ 1=1 \end{cases}  \);

2) \(  \large  \begin{cases} 1 \to 1=1 \cdot 1 \\ 1 \to 1= 1 \vee 1 \end{cases} \ \Leftrightarrow \ \begin{cases} 1=1 \\ 1=1 \end{cases}  \).
 

Оффлайн Алла

  • Пользователь
  • Сообщений: 12
    • Просмотр профиля
Спасибо.
 

Оффлайн truploop

  • Пользователь
  • Сообщений: 14
    • Просмотр профиля
Составить систему уравнений с булевыми переменными и найти её решение:
1) если работает агрегат "a", то работает агрегат "b";
2) либо работает агрегат "b", либо работает агрегат "с";
3) агрегат "а" работает тогда и только тогда, когда работает агрегат "d";
4) агрегат "а" работает или работает агрегат "b".
 

Оффлайн Admin

  • Администратор
  • Сообщений: 5228
  • Поблагодарили: 1582 раз(а)
    • Просмотр профиля
Введём булевы переменные a, b, c и d, которым поставим с соответствие высказывания "работает агрегат а", "работает агрегат b", работает агрегат c" и "работает агрегат d". Все эти высказывания истинны. Тогда, используя условие задачи, составим и решим следующую систему логических уравнений (плюсом здесь обозначена сумма Жегалкина):

\(  \large \begin{cases} a \to b=1 \\ b+c=1 \\ a \leftrightarrow d=1 \\ a \vee b=1 \end{cases} \ \Leftrightarrow \ \begin{cases} a' \vee b = 1 \\ b+c=1 \\ ab+b+a=1 \\ a \leftrightarrow d = 1\end{cases} \ \Leftrightarrow \ \begin{cases} (a+1) \vee b =1 \\ b+c=1 \\ ab+a+b=1 \\ a \leftrightarrow d = 1\end{cases} \ \Leftrightarrow \  \begin{cases}ab+a=0 \\ b+c=1 \\ ab+a+b=1 \\ a \leftrightarrow d=1 \end{cases} \ \Leftrightarrow \ \)

\(  \large \Leftrightarrow \ \begin{cases} a(b+1)=0 \\ b=1 \\ c=0 \\ a \leftrightarrow d=1 \end{cases} \ \Leftrightarrow \ \begin{cases}  a \cdot 0 =0 \\ b=1 \\ c=0 \\ a \leftrightarrow d=1 \end{cases} \ \Leftrightarrow \ \begin{cases} a=0 \\ b=1 \\ c=0 \\ d=0 \end{cases} \vee \begin{cases} a=1 \\ b=1 \\ c=0 \\ d=1\end{cases}  \).

Итак, \(  \large \{(0,1,0,0); \ (1,1,0,1) \}\ \) - решение системы уравнений.
 
 

Оффлайн truploop

  • Пользователь
  • Сообщений: 14
    • Просмотр профиля
спасибо)
 

Оффлайн clon

  • Пользователь
  • Сообщений: 5
    • Просмотр профиля
Всем привет! Помогите, пожалуйста, решить систему уравнений по логике:

\(  \large \begin{cases} x \oplus y=1 \\ (x \to y) \to z=0 \end{cases}  \).
 

Оффлайн Admin

  • Администратор
  • Сообщений: 5228
  • Поблагодарили: 1582 раз(а)
    • Просмотр профиля
Я бы сначала привёл функцию \(  \large f(x,y,z)= (x \to y) \to z  \) к полиномиальной форме.
 
Сказали спасибо: clon

Оффлайн clon

  • Пользователь
  • Сообщений: 5
    • Просмотр профиля
Спасибо. А как это сделать?
 

Оффлайн Admin

  • Администратор
  • Сообщений: 5228
  • Поблагодарили: 1582 раз(а)
    • Просмотр профиля
Например, с помощью тождественных преобразований. Сначала выражаем импликацию через дизъюнкцию и отрицание. И т.д.
Хотя можно и не приводить к полиномиальной форме, а воспользоваться определениями суммы Жегалкина и импликации. В каком случае сумма \(  \large x \oplus y  \) равна \(  \large 1  \)?
 
 
Сказали спасибо: clon

Оффлайн clon

  • Пользователь
  • Сообщений: 5
    • Просмотр профиля
Она равна единице, когда одна переменная равна нулю, а другая - единице.
 

Оффлайн Admin

  • Администратор
  • Сообщений: 5228
  • Поблагодарили: 1582 раз(а)
    • Просмотр профиля
Да, правильно. Теперь подставьте сначала \(  \large x=0, y=1  \) во второе уравнение, найдите соответствующее значение \(  \large z  \). То же самое с другой парой значений.
 
Сказали спасибо: clon

Оффлайн clon

  • Пользователь
  • Сообщений: 5
    • Просмотр профиля
Подставляю: \(  \large (0 \to 1) \to z =1  \). Значит, \(  \large 1 \to z=0  \). Получим: \(  \large z=0  \). Если \(  \large x=1, y=0  \), то \(  \large (1 \to 0) \to z=0  \), \(  \large 0 \to z= 0  \). Но такого не может быть. Получается, что \(  \large x=0, y=1, z=0  \).
 

Оффлайн Admin

  • Администратор
  • Сообщений: 5228
  • Поблагодарили: 1582 раз(а)
    • Просмотр профиля
Всё правильно. Можете проверить подстановкой.
 

Оффлайн clon

  • Пользователь
  • Сообщений: 5
    • Просмотр профиля
Спасибо большое!