How to check if compound proposition is contradiction (is always false)?
Clash Royale CLAN TAG#URR8PPP
up vote
5
down vote
favorite
I know how to check compound proposition if it is tautology with TautologyQ
. But I have not found any function that can check if the compound proposition is contradiction (is always false). Is there any similar way (like with tautology, without generating truth tables) to check if a compound proposition is a contradiction or not?
For example, how can I check if compound proposition p && !p
is a contradiction or not?
boolean-computation logic
add a comment |Â
up vote
5
down vote
favorite
I know how to check compound proposition if it is tautology with TautologyQ
. But I have not found any function that can check if the compound proposition is contradiction (is always false). Is there any similar way (like with tautology, without generating truth tables) to check if a compound proposition is a contradiction or not?
For example, how can I check if compound proposition p && !p
is a contradiction or not?
boolean-computation logic
add a comment |Â
up vote
5
down vote
favorite
up vote
5
down vote
favorite
I know how to check compound proposition if it is tautology with TautologyQ
. But I have not found any function that can check if the compound proposition is contradiction (is always false). Is there any similar way (like with tautology, without generating truth tables) to check if a compound proposition is a contradiction or not?
For example, how can I check if compound proposition p && !p
is a contradiction or not?
boolean-computation logic
I know how to check compound proposition if it is tautology with TautologyQ
. But I have not found any function that can check if the compound proposition is contradiction (is always false). Is there any similar way (like with tautology, without generating truth tables) to check if a compound proposition is a contradiction or not?
For example, how can I check if compound proposition p && !p
is a contradiction or not?
boolean-computation logic
edited Aug 23 at 17:35
asked Aug 22 at 16:28
vasili111
1496
1496
add a comment |Â
add a comment |Â
3 Answers
3
active
oldest
votes
up vote
7
down vote
accepted
The converse of tautology (negation of tautology) is a contradiction. More about it here: proofwiki.org/wiki/Contradiction_is_Negation_of_Tautology
So to find out if the proposition is a contradiction we can negate the proposition and after check the result if it is the tautology. If the output is True
it means that the proposition is contradiction because as we mentioned above the negation of a contradiction is a tautology. If the output is False
, that means that the proposition is not contradiction and it can be tautology or contingency.
For example, if we want to check if p && ! p
is a contradiction (which it is) we use code:
TautologyQ[Not[p && ! p], p]
Output:
True
Does this checks "if the proposition is a contradiction" or it checks "if the proposition is not a tautology"?
â vasili111
Aug 22 at 18:05
1
It checks that the converse of the propositions is a tautology. In my understanding, that means that the proposition is contradiction.
â Henrik Schumacher
Aug 22 at 18:07
I think you are right: proofwiki.org/wiki/Contradiction_is_Negation_of_Tautology
â vasili111
Aug 22 at 18:24
1
If f is a boolean-valued function, then f(x1, x2, ..., xn) is true for all possible values of the arguments if and only if ¬f(x1, x2, ..., xn) is false for all possible values of the arguments. Hence, Henrik's approach is valid.
â Andreas Rejbrand
Aug 23 at 6:16
I edited the answer and added more clarification and information from comments. Is it ok?
â vasili111
Aug 23 at 13:13
 |Â
show 2 more comments
up vote
7
down vote
Resolve[Exists[p, p && ! p == True]]
(*
False
*)
You can interpret this result as: "There does not exist any p
such that the statement p && !p
is True
.
Background example:
Resolve[Exists[p, q, (p && ! p == True || q == True)]]
(*
True
*)
You can interpret this result to say:
It is true that there exists some p
and q
such that both p
and !p
are True
OR q
is True
. The key claus here is the OR. Certainly there exists some q
for which q
is True
.
In your example, I can substitutep, p && ! p
for any other compound proposition to check for a contradiction, right? For example, fora||b
There sould beResolve[Exists[a, b, a && b == True]]
?
â vasili111
Aug 22 at 16:54
Also ifFalse
it means contradiction and ifTrue
it means that it is not a contradiction?
â vasili111
Aug 22 at 16:55
False
in my solution example means there does not exist anyp
such thatp
andnot p
isTrue
.
â David G. Stork
Aug 22 at 17:01
add a comment |Â
up vote
1
down vote
I also found another way:
"In a complete logic, a formula is contradictory if and only if it is unsatisfiable". Source
In that case, we can check if the proposition is satisfiable and after negate the result. If the output is True
that means that the original statement was unsatisfiable which also means that it was contradiction. If the output was False
it means that the result was satisfiable, which means that it was tautology or contingency.
For example, lets check if p && !p
is contradiction:
Not[SatisfiableQ[p && ! p, p]]
output:
True
It means that p && !p
is contradiction.
Lets check if p || ! p
is contradiction:
Not[SatisfiableQ[p || ! p, p]]
output:
False
It means that p || ! p
is not contradiction. The output does not say that but it is tautology.
Lets check if p && q
is contradiction:
Not[SatisfiableQ[p && q, p, q]]
output:
False
It means that p && q
is not contradiction. The output does not say that but it is contingency.
That makes sense because of: $neg (exists p colon text$A(p)$ is true)$ is equivalent to $(forall p colon neg (text$A(p)$ is true))$.SatisfiableQ
is essentially the $exists$-quantor.
â Henrik Schumacher
Aug 23 at 13:57
@HenrikSchumacher Thank you.
â vasili111
Aug 23 at 13:58
add a comment |Â
3 Answers
3
active
oldest
votes
3 Answers
3
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
7
down vote
accepted
The converse of tautology (negation of tautology) is a contradiction. More about it here: proofwiki.org/wiki/Contradiction_is_Negation_of_Tautology
So to find out if the proposition is a contradiction we can negate the proposition and after check the result if it is the tautology. If the output is True
it means that the proposition is contradiction because as we mentioned above the negation of a contradiction is a tautology. If the output is False
, that means that the proposition is not contradiction and it can be tautology or contingency.
For example, if we want to check if p && ! p
is a contradiction (which it is) we use code:
TautologyQ[Not[p && ! p], p]
Output:
True
Does this checks "if the proposition is a contradiction" or it checks "if the proposition is not a tautology"?
â vasili111
Aug 22 at 18:05
1
It checks that the converse of the propositions is a tautology. In my understanding, that means that the proposition is contradiction.
â Henrik Schumacher
Aug 22 at 18:07
I think you are right: proofwiki.org/wiki/Contradiction_is_Negation_of_Tautology
â vasili111
Aug 22 at 18:24
1
If f is a boolean-valued function, then f(x1, x2, ..., xn) is true for all possible values of the arguments if and only if ¬f(x1, x2, ..., xn) is false for all possible values of the arguments. Hence, Henrik's approach is valid.
â Andreas Rejbrand
Aug 23 at 6:16
I edited the answer and added more clarification and information from comments. Is it ok?
â vasili111
Aug 23 at 13:13
 |Â
show 2 more comments
up vote
7
down vote
accepted
The converse of tautology (negation of tautology) is a contradiction. More about it here: proofwiki.org/wiki/Contradiction_is_Negation_of_Tautology
So to find out if the proposition is a contradiction we can negate the proposition and after check the result if it is the tautology. If the output is True
it means that the proposition is contradiction because as we mentioned above the negation of a contradiction is a tautology. If the output is False
, that means that the proposition is not contradiction and it can be tautology or contingency.
For example, if we want to check if p && ! p
is a contradiction (which it is) we use code:
TautologyQ[Not[p && ! p], p]
Output:
True
Does this checks "if the proposition is a contradiction" or it checks "if the proposition is not a tautology"?
â vasili111
Aug 22 at 18:05
1
It checks that the converse of the propositions is a tautology. In my understanding, that means that the proposition is contradiction.
â Henrik Schumacher
Aug 22 at 18:07
I think you are right: proofwiki.org/wiki/Contradiction_is_Negation_of_Tautology
â vasili111
Aug 22 at 18:24
1
If f is a boolean-valued function, then f(x1, x2, ..., xn) is true for all possible values of the arguments if and only if ¬f(x1, x2, ..., xn) is false for all possible values of the arguments. Hence, Henrik's approach is valid.
â Andreas Rejbrand
Aug 23 at 6:16
I edited the answer and added more clarification and information from comments. Is it ok?
â vasili111
Aug 23 at 13:13
 |Â
show 2 more comments
up vote
7
down vote
accepted
up vote
7
down vote
accepted
The converse of tautology (negation of tautology) is a contradiction. More about it here: proofwiki.org/wiki/Contradiction_is_Negation_of_Tautology
So to find out if the proposition is a contradiction we can negate the proposition and after check the result if it is the tautology. If the output is True
it means that the proposition is contradiction because as we mentioned above the negation of a contradiction is a tautology. If the output is False
, that means that the proposition is not contradiction and it can be tautology or contingency.
For example, if we want to check if p && ! p
is a contradiction (which it is) we use code:
TautologyQ[Not[p && ! p], p]
Output:
True
The converse of tautology (negation of tautology) is a contradiction. More about it here: proofwiki.org/wiki/Contradiction_is_Negation_of_Tautology
So to find out if the proposition is a contradiction we can negate the proposition and after check the result if it is the tautology. If the output is True
it means that the proposition is contradiction because as we mentioned above the negation of a contradiction is a tautology. If the output is False
, that means that the proposition is not contradiction and it can be tautology or contingency.
For example, if we want to check if p && ! p
is a contradiction (which it is) we use code:
TautologyQ[Not[p && ! p], p]
Output:
True
edited Aug 23 at 13:24
vasili111
1496
1496
answered Aug 22 at 17:00
Henrik Schumacher
36.2k249102
36.2k249102
Does this checks "if the proposition is a contradiction" or it checks "if the proposition is not a tautology"?
â vasili111
Aug 22 at 18:05
1
It checks that the converse of the propositions is a tautology. In my understanding, that means that the proposition is contradiction.
â Henrik Schumacher
Aug 22 at 18:07
I think you are right: proofwiki.org/wiki/Contradiction_is_Negation_of_Tautology
â vasili111
Aug 22 at 18:24
1
If f is a boolean-valued function, then f(x1, x2, ..., xn) is true for all possible values of the arguments if and only if ¬f(x1, x2, ..., xn) is false for all possible values of the arguments. Hence, Henrik's approach is valid.
â Andreas Rejbrand
Aug 23 at 6:16
I edited the answer and added more clarification and information from comments. Is it ok?
â vasili111
Aug 23 at 13:13
 |Â
show 2 more comments
Does this checks "if the proposition is a contradiction" or it checks "if the proposition is not a tautology"?
â vasili111
Aug 22 at 18:05
1
It checks that the converse of the propositions is a tautology. In my understanding, that means that the proposition is contradiction.
â Henrik Schumacher
Aug 22 at 18:07
I think you are right: proofwiki.org/wiki/Contradiction_is_Negation_of_Tautology
â vasili111
Aug 22 at 18:24
1
If f is a boolean-valued function, then f(x1, x2, ..., xn) is true for all possible values of the arguments if and only if ¬f(x1, x2, ..., xn) is false for all possible values of the arguments. Hence, Henrik's approach is valid.
â Andreas Rejbrand
Aug 23 at 6:16
I edited the answer and added more clarification and information from comments. Is it ok?
â vasili111
Aug 23 at 13:13
Does this checks "if the proposition is a contradiction" or it checks "if the proposition is not a tautology"?
â vasili111
Aug 22 at 18:05
Does this checks "if the proposition is a contradiction" or it checks "if the proposition is not a tautology"?
â vasili111
Aug 22 at 18:05
1
1
It checks that the converse of the propositions is a tautology. In my understanding, that means that the proposition is contradiction.
â Henrik Schumacher
Aug 22 at 18:07
It checks that the converse of the propositions is a tautology. In my understanding, that means that the proposition is contradiction.
â Henrik Schumacher
Aug 22 at 18:07
I think you are right: proofwiki.org/wiki/Contradiction_is_Negation_of_Tautology
â vasili111
Aug 22 at 18:24
I think you are right: proofwiki.org/wiki/Contradiction_is_Negation_of_Tautology
â vasili111
Aug 22 at 18:24
1
1
If f is a boolean-valued function, then f(x1, x2, ..., xn) is true for all possible values of the arguments if and only if ¬f(x1, x2, ..., xn) is false for all possible values of the arguments. Hence, Henrik's approach is valid.
â Andreas Rejbrand
Aug 23 at 6:16
If f is a boolean-valued function, then f(x1, x2, ..., xn) is true for all possible values of the arguments if and only if ¬f(x1, x2, ..., xn) is false for all possible values of the arguments. Hence, Henrik's approach is valid.
â Andreas Rejbrand
Aug 23 at 6:16
I edited the answer and added more clarification and information from comments. Is it ok?
â vasili111
Aug 23 at 13:13
I edited the answer and added more clarification and information from comments. Is it ok?
â vasili111
Aug 23 at 13:13
 |Â
show 2 more comments
up vote
7
down vote
Resolve[Exists[p, p && ! p == True]]
(*
False
*)
You can interpret this result as: "There does not exist any p
such that the statement p && !p
is True
.
Background example:
Resolve[Exists[p, q, (p && ! p == True || q == True)]]
(*
True
*)
You can interpret this result to say:
It is true that there exists some p
and q
such that both p
and !p
are True
OR q
is True
. The key claus here is the OR. Certainly there exists some q
for which q
is True
.
In your example, I can substitutep, p && ! p
for any other compound proposition to check for a contradiction, right? For example, fora||b
There sould beResolve[Exists[a, b, a && b == True]]
?
â vasili111
Aug 22 at 16:54
Also ifFalse
it means contradiction and ifTrue
it means that it is not a contradiction?
â vasili111
Aug 22 at 16:55
False
in my solution example means there does not exist anyp
such thatp
andnot p
isTrue
.
â David G. Stork
Aug 22 at 17:01
add a comment |Â
up vote
7
down vote
Resolve[Exists[p, p && ! p == True]]
(*
False
*)
You can interpret this result as: "There does not exist any p
such that the statement p && !p
is True
.
Background example:
Resolve[Exists[p, q, (p && ! p == True || q == True)]]
(*
True
*)
You can interpret this result to say:
It is true that there exists some p
and q
such that both p
and !p
are True
OR q
is True
. The key claus here is the OR. Certainly there exists some q
for which q
is True
.
In your example, I can substitutep, p && ! p
for any other compound proposition to check for a contradiction, right? For example, fora||b
There sould beResolve[Exists[a, b, a && b == True]]
?
â vasili111
Aug 22 at 16:54
Also ifFalse
it means contradiction and ifTrue
it means that it is not a contradiction?
â vasili111
Aug 22 at 16:55
False
in my solution example means there does not exist anyp
such thatp
andnot p
isTrue
.
â David G. Stork
Aug 22 at 17:01
add a comment |Â
up vote
7
down vote
up vote
7
down vote
Resolve[Exists[p, p && ! p == True]]
(*
False
*)
You can interpret this result as: "There does not exist any p
such that the statement p && !p
is True
.
Background example:
Resolve[Exists[p, q, (p && ! p == True || q == True)]]
(*
True
*)
You can interpret this result to say:
It is true that there exists some p
and q
such that both p
and !p
are True
OR q
is True
. The key claus here is the OR. Certainly there exists some q
for which q
is True
.
Resolve[Exists[p, p && ! p == True]]
(*
False
*)
You can interpret this result as: "There does not exist any p
such that the statement p && !p
is True
.
Background example:
Resolve[Exists[p, q, (p && ! p == True || q == True)]]
(*
True
*)
You can interpret this result to say:
It is true that there exists some p
and q
such that both p
and !p
are True
OR q
is True
. The key claus here is the OR. Certainly there exists some q
for which q
is True
.
edited Aug 22 at 17:02
answered Aug 22 at 16:36
David G. Stork
21.3k11646
21.3k11646
In your example, I can substitutep, p && ! p
for any other compound proposition to check for a contradiction, right? For example, fora||b
There sould beResolve[Exists[a, b, a && b == True]]
?
â vasili111
Aug 22 at 16:54
Also ifFalse
it means contradiction and ifTrue
it means that it is not a contradiction?
â vasili111
Aug 22 at 16:55
False
in my solution example means there does not exist anyp
such thatp
andnot p
isTrue
.
â David G. Stork
Aug 22 at 17:01
add a comment |Â
In your example, I can substitutep, p && ! p
for any other compound proposition to check for a contradiction, right? For example, fora||b
There sould beResolve[Exists[a, b, a && b == True]]
?
â vasili111
Aug 22 at 16:54
Also ifFalse
it means contradiction and ifTrue
it means that it is not a contradiction?
â vasili111
Aug 22 at 16:55
False
in my solution example means there does not exist anyp
such thatp
andnot p
isTrue
.
â David G. Stork
Aug 22 at 17:01
In your example, I can substitute
p, p && ! p
for any other compound proposition to check for a contradiction, right? For example, for a||b
There sould be Resolve[Exists[a, b, a && b == True]]
?â vasili111
Aug 22 at 16:54
In your example, I can substitute
p, p && ! p
for any other compound proposition to check for a contradiction, right? For example, for a||b
There sould be Resolve[Exists[a, b, a && b == True]]
?â vasili111
Aug 22 at 16:54
Also if
False
it means contradiction and if True
it means that it is not a contradiction?â vasili111
Aug 22 at 16:55
Also if
False
it means contradiction and if True
it means that it is not a contradiction?â vasili111
Aug 22 at 16:55
False
in my solution example means there does not exist any p
such that p
and not p
is True
.â David G. Stork
Aug 22 at 17:01
False
in my solution example means there does not exist any p
such that p
and not p
is True
.â David G. Stork
Aug 22 at 17:01
add a comment |Â
up vote
1
down vote
I also found another way:
"In a complete logic, a formula is contradictory if and only if it is unsatisfiable". Source
In that case, we can check if the proposition is satisfiable and after negate the result. If the output is True
that means that the original statement was unsatisfiable which also means that it was contradiction. If the output was False
it means that the result was satisfiable, which means that it was tautology or contingency.
For example, lets check if p && !p
is contradiction:
Not[SatisfiableQ[p && ! p, p]]
output:
True
It means that p && !p
is contradiction.
Lets check if p || ! p
is contradiction:
Not[SatisfiableQ[p || ! p, p]]
output:
False
It means that p || ! p
is not contradiction. The output does not say that but it is tautology.
Lets check if p && q
is contradiction:
Not[SatisfiableQ[p && q, p, q]]
output:
False
It means that p && q
is not contradiction. The output does not say that but it is contingency.
That makes sense because of: $neg (exists p colon text$A(p)$ is true)$ is equivalent to $(forall p colon neg (text$A(p)$ is true))$.SatisfiableQ
is essentially the $exists$-quantor.
â Henrik Schumacher
Aug 23 at 13:57
@HenrikSchumacher Thank you.
â vasili111
Aug 23 at 13:58
add a comment |Â
up vote
1
down vote
I also found another way:
"In a complete logic, a formula is contradictory if and only if it is unsatisfiable". Source
In that case, we can check if the proposition is satisfiable and after negate the result. If the output is True
that means that the original statement was unsatisfiable which also means that it was contradiction. If the output was False
it means that the result was satisfiable, which means that it was tautology or contingency.
For example, lets check if p && !p
is contradiction:
Not[SatisfiableQ[p && ! p, p]]
output:
True
It means that p && !p
is contradiction.
Lets check if p || ! p
is contradiction:
Not[SatisfiableQ[p || ! p, p]]
output:
False
It means that p || ! p
is not contradiction. The output does not say that but it is tautology.
Lets check if p && q
is contradiction:
Not[SatisfiableQ[p && q, p, q]]
output:
False
It means that p && q
is not contradiction. The output does not say that but it is contingency.
That makes sense because of: $neg (exists p colon text$A(p)$ is true)$ is equivalent to $(forall p colon neg (text$A(p)$ is true))$.SatisfiableQ
is essentially the $exists$-quantor.
â Henrik Schumacher
Aug 23 at 13:57
@HenrikSchumacher Thank you.
â vasili111
Aug 23 at 13:58
add a comment |Â
up vote
1
down vote
up vote
1
down vote
I also found another way:
"In a complete logic, a formula is contradictory if and only if it is unsatisfiable". Source
In that case, we can check if the proposition is satisfiable and after negate the result. If the output is True
that means that the original statement was unsatisfiable which also means that it was contradiction. If the output was False
it means that the result was satisfiable, which means that it was tautology or contingency.
For example, lets check if p && !p
is contradiction:
Not[SatisfiableQ[p && ! p, p]]
output:
True
It means that p && !p
is contradiction.
Lets check if p || ! p
is contradiction:
Not[SatisfiableQ[p || ! p, p]]
output:
False
It means that p || ! p
is not contradiction. The output does not say that but it is tautology.
Lets check if p && q
is contradiction:
Not[SatisfiableQ[p && q, p, q]]
output:
False
It means that p && q
is not contradiction. The output does not say that but it is contingency.
I also found another way:
"In a complete logic, a formula is contradictory if and only if it is unsatisfiable". Source
In that case, we can check if the proposition is satisfiable and after negate the result. If the output is True
that means that the original statement was unsatisfiable which also means that it was contradiction. If the output was False
it means that the result was satisfiable, which means that it was tautology or contingency.
For example, lets check if p && !p
is contradiction:
Not[SatisfiableQ[p && ! p, p]]
output:
True
It means that p && !p
is contradiction.
Lets check if p || ! p
is contradiction:
Not[SatisfiableQ[p || ! p, p]]
output:
False
It means that p || ! p
is not contradiction. The output does not say that but it is tautology.
Lets check if p && q
is contradiction:
Not[SatisfiableQ[p && q, p, q]]
output:
False
It means that p && q
is not contradiction. The output does not say that but it is contingency.
answered Aug 23 at 13:52
vasili111
1496
1496
That makes sense because of: $neg (exists p colon text$A(p)$ is true)$ is equivalent to $(forall p colon neg (text$A(p)$ is true))$.SatisfiableQ
is essentially the $exists$-quantor.
â Henrik Schumacher
Aug 23 at 13:57
@HenrikSchumacher Thank you.
â vasili111
Aug 23 at 13:58
add a comment |Â
That makes sense because of: $neg (exists p colon text$A(p)$ is true)$ is equivalent to $(forall p colon neg (text$A(p)$ is true))$.SatisfiableQ
is essentially the $exists$-quantor.
â Henrik Schumacher
Aug 23 at 13:57
@HenrikSchumacher Thank you.
â vasili111
Aug 23 at 13:58
That makes sense because of: $neg (exists p colon text$A(p)$ is true)$ is equivalent to $(forall p colon neg (text$A(p)$ is true))$.
SatisfiableQ
is essentially the $exists$-quantor.â Henrik Schumacher
Aug 23 at 13:57
That makes sense because of: $neg (exists p colon text$A(p)$ is true)$ is equivalent to $(forall p colon neg (text$A(p)$ is true))$.
SatisfiableQ
is essentially the $exists$-quantor.â Henrik Schumacher
Aug 23 at 13:57
@HenrikSchumacher Thank you.
â vasili111
Aug 23 at 13:58
@HenrikSchumacher Thank you.
â vasili111
Aug 23 at 13:58
add a comment |Â
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmathematica.stackexchange.com%2fquestions%2f180452%2fhow-to-check-if-compound-proposition-is-contradiction-is-always-false%23new-answer', 'question_page');
);
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password