Тип 15 № 81799 

Преобразование логических выражений. Числовые отрезки
i
На числовой прямой даны два отрезка: P = [25; 64] и Q = [40; 115]. Укажите наименьшую возможную длину такого отрезка A, что формула
(x ∈ P) → (((x ∈ Q) ∧ ¬(x ∈ A)) → ¬(x ∈ P))
истинно (т. е. принимает значение 1) при любом значении переменной х.
Решение. Введем обозначения:
(x ∈ P) ≡ P; (x ∈ Q) ≡ Q; (x ∈ A) ≡ A.
Тогда, применив преобразование импликации, получаем:
P → ((Q ∧ ¬A) → ¬P) = ¬P ∨ (¬(Q ∧ ¬A) ∨ ¬P) =¬P ∨ ¬Q ∨ A ∨ ¬P = ¬P ∨ ¬Q ∨ A.
Данное выражение будет истинно на отрезках ¬P [-∞; 25] и [60; +∞] и ¬Q [-∞; 40] и [115; +∞].
В таком случае, для того, чтобы выражение было истинно при любом x, A должно лежать в промежутке (40; 64). Следовательно, наименьшая возможная длина промежутка равна 64 − 40 = 24.
Ответ: 24
Приведём решение Александра Козлова.
Условие: (x∈P)→(((x∈Q)∧¬(x∈A))→¬(x∈P)) можно интерпретировать следующим образом:
1. Если x принадлежит отрезку P, то...
2. Если x принадлежит отрезку Q и отрезку A, то x не может принадлежать отрезку P.
Это означает, что если x находится в P и одновременно в Q и A, то это приводит к противоречию, поскольку x не может одновременно принадлежать P и не принадлежать ему.
Чтобы избежать этого противоречия, отрезок A должен «закрывать» пересечение отрезков P и Q. То есть, A должен находиться вне пересечения P и Q.
Пересечение P и Q будет: P∩Q=[40,64] Таким образом, отрезок A должен находиться вне этого пересечения, чтобы условие выполнялось.
P_start, P_end = 25, 64
Q_start, Q_end = 40, 115
# Находим пересечение P и Q
n_start = max(P_start, Q_start)
n_end = min(P_end, Q_end)
# Длина отрезка A должна быть вне пересечения
length_A1 = n_start - P_end# A после P
length_A2 = Q_start - n_end# A перед Q
print('Наименьшая возможная длина отрезка A:', abs(min(length_A1, length_A2)))
Ответ: 24