2017-01-08 2 views
-2

どのように私は私が(A->B) = !Aというルールを使用して正規化された表現をした正規化し、(A^B) --> !B v C v !(A v C)どのように私は(A^B)正規化し、簡素化します! - > BのV CはV(VのC)

を簡素化しますまたはB。しかし、私はどのようにそれを簡素化するか分からない。私は答え!A v !B v Cで終わった。

これは正しいですか?そうでない場合、どこが間違っていますか?

+2

「C」はどこに入りますか?より多くのコンテキストを提供する必要があります。 –

+0

簡略化するために、A、B、またはCが式に含まれているものを知る必要はありません。 @アレックス - あなたはおそらく数学の交換でより多くの運があったでしょう。プログラマーは、この種の純粋な論理/数学の質問を得ることはしばしばありません。 – Jake

+0

@Jake:質問には[tag:prolog]とタグ付けされているので、通常は人がPrologでプログラムを探していることを意味しています(あなたは思っていない)。少なくとも間違った方法でタグ付けされています。 –

答えて

0

私はあなたと同じ答えを得ています。

1. (A^B) => !B V C V !(A v C) 
2. (A^B) => !B V C V (!A^!C) 
3. (A^B) => !B V (C V (!A^!C)) //(C V (!A^!C)) => C V !A 
4. (A^B) => !B V (C V !A) 
5. (A^B) => !A V !B V C 
6. !(A^B) V (!A V !B V C) 
7. (!A V !B) V (!A V !B V C) 
8. !A V !B V C 

提案...ステップ1での発現のための真理値表を行い、それが私たちのロジックが正しいことを確認しますステップ8での発現のための真理値表に一致するかどうかを確認します。単純化が進む限り、ステップ8は可能な限りです。

希望すると便利です。

+1

ありがとうございました! –

関連する問題