информатика. Как понять "из х1 следует х2" или "X1 ==> X2"

двоишник
Дата: 15.11.2017 17:12:44
вот это выражение в информатике
что значит следует
то есть если х1 истина тогда можно проверять истина ли х2 ?
wadman
Дата: 15.11.2017 17:23:01
Битовые операции. if (x1 AND x2) - упрощенный вариант, либо if (x1) then if (x2) then;
booby
Дата: 15.11.2017 18:37:22
двоишник
вот это выражение в информатике
что значит следует
то есть если х1 истина тогда можно проверять истина ли х2 ?


нет. это значит, что что x2 необходимо проверять только если x1 истина, иначе, если x1 ложь, следование признается истинным.

т.е. если требуется выполнить некий код на основании истинности следования, то это
If (Not x1) Or x2 Then do_when_impication_successful()
Akina
Дата: 15.11.2017 18:59:07
автор
Как понять "из х1 следует х2" или "X1 ==> X2"

Это означает "Если х1 истинно, то х2 истинно". В просторечии это называется "импликация".
exp98
Дата: 16.11.2017 19:21:31
двоишник, для верности диагноза приведи смущающий текст более полно.
двоишник
Дата: 17.11.2017 19:15:05
Сколько различных наборов значений ЛОГИЧЕСКИХ переменных удовлетворяют системе:
(x1 -> x2) ^ (x2 -> x3) ^ (x3 -> x4) ^ (x4 -> x5) ^ (x5 -> x6) = 1
(y1 -> y2) ^ (y2 -> y3) ^ (y3 -> y4) ^ (y4 -> y5) ^ (y5 -> y6) = 1
y6 v x1 = 1

мне нужно не решение, а понять (верно ли я понимаю)
что, если х1 = истина тогда можно проверять х2
ну допустим
if (сегодня = 1 января) then
if x2 = true then
тогда исследуем дальше остальные условия
endif
endif
и т.д.
exp98
Дата: 17.11.2017 20:17:23
двоишник,
трудно понять, на каком уровне нужен ответ. Почему нужен язык программирования?
В школе меня упражняли так ...

Это логические формулы. И вообще дана система 3-х уравнений.

(x1 -> x2) ^ (x2 -> x3) ^ (x3 -> x4) ^ (x4 -> x5) ^ (x5 -> x6) = 1
Написана конъюкция 5-ти булевых функций. Эти ф-ции называются Импликацией,
напр (xi -> xj). Это классическая т.н. инфиксная форма записи ф-ции от 2-х переменных. Обе её переменные булевы и значение, к-рое принимает ф-ция, тоже булево.
Для аналогии с числовыми ф-циями можно её записать так F(xi, xj)
Аналогично и для дизъюнкции (y6 v x1).

Только судя по всему рассматриваются значения 1=истина, 0=ложь.
exp98
Дата: 17.11.2017 20:29:12
Продолжаю.
Из визуального анализа первых 2-х уравнений видим, что оно выполняется тогда и только тогда, если каждая имипликация ИСТИННА (==1).
Смотрим импликацию в табличой записи
a b F(a,b), или (a -> b)
0 0 1
0 1 1
1 0 0
1 1 1
Понимаем, что F(a,b)=1 в 3-х случаях .... рисуем их все.

Аналогично, для 2-го ур-ния.

Для 3-го ур-ния принцип рассуждения тот же, там только ф-ция другая, и её таблица истинности ... какая?.. Осталось из предыдущих комбинаций значений только выкинуть те, что не удовлетворяют 3-му ур-нию.

На мой взгляд примерно так ...
А нужна ли программа или нет, не знаю.
двоишник
Дата: 17.11.2017 21:53:13
[quot exp98]Понял, благодарю.
нужно было понимание
я начал понимать, тем более после такого объяснения.
Большое спасибо.
exp98
Дата: 18.11.2017 16:42:28
Ну вот и славненько. А если программно, то имеем 12 независимых переменных. Каждая пробегает значения {0,1}
Итого 2^12 комбинаций, это немного, машина железная.
Самый универсальный способ перебора всех комбинаций - это 12 )) вложенных циклов типа
for i1= 0 to 1
  for i1= 0 to 1
    for i2= 0 to 1
     .........
       for i12= 0 to 1
          а здесь подставляем значения в уравнения и проверяем резалт
       next
     ......
  next
next
Хотя выше уже предлагали использовать вектор битов, тогда и перебор одним циклом
for k=0 to 2^12-1
......
Но придётся применить битовые маски для 3-го уравнения.