У меня есть домашнее задание, в котором даются логические функции, и я попросил записать его в виде простого логического пропозиционального утверждения. Я не понимаю, как преобразовать его в пропозициональный. Подразумевается ли возврат средств? а еще есть или? а вложенные, если имеется ввиду а?
1
boolean m_1(p, q, r){
if (p || q)
return (!r)
else
return False}
2
boolean m_10(p, q, r){
if (p)
if (r)
return False
else
return True
else if (!r)
return (q)}
Первую я решил так:
pVq → ¬rVF
но меня путают со вторым
мой ответ
(pΛq → F) V (pΛ¬r → TVq)
Я правильно понимаю?
1) Сделайте отступ в коде для удобства чтения. 2) Ключевые слова Java пишутся строчными буквами, то есть false
и true
. 3) Параметры метода Java должны быть типизированы, например boolean p
.
Даже если вы исправили код, второй пример не имеет смысла. Предполагаемые !p
и !!r
(r
), что тогда?
это дискретное домашнее задание по математике, я думал, что это Java-код, потому что это ближайший язык, я думаю
Думаю, вы правы по первому.
Второй примерно такой: (pΛq → F) V (pΛ¬r → T) V (¬pΛ¬r -> q)
К сожалению, я не являюсь экспертом в формальном отношении к этому. Легче увидеть вот так:
boolean m_10(p, q, r){
if (p)
if (r)
return False
else
return True
else if (!r)
return (q)
}
Используя ваши символы и если 1-й пример верен, 2-й можно было бы записать так:
(p→¬r)V(¬pΛ¬r→q)
Это не Java-код, почему вы так пометили его?