hey every one
i'm new here i have visit this forum many times but today i just register i have a big big problem >__< i try to solve it but i can't
its about the The Predicate Calculus
this is its rule
Every atomic sentence is a sentence
If s is a sentence, then so is its negation, Øs.
If s1 and s2 are sentences, then so is their conjunction, s1 Ù s2.
If s1 and s2 are sentences, then so is their disjunction, s1 Ú s2.
If s1 and s2 are sentences, then so is their implication, s1 Þ s2.
If s1 and s2 are sentences, then so is their equivalence, s1 = s2.
If X is a variable and s a sentence, then " X s is a sentence.
If X is a variable and s a sentence, then $ X s is a sentence.
and the qustion is to transfer this to c++ code
function verify_sentence(expression)
begin
case
expression is an atomic sentence:return SUCCESS
expression is of the form QXs, where Q is either or
, X is a variable,
if verify_sentence(s) returns SUCCESS
then return SUCCES
else return FAIL;
expression is of the form s:
if verify_sentence(s) returns SUCCESS
then return SUCCES
else return FAIL;
expression is of the form s1 op s2, where op is a
binary logical operator:
if verify_sentence(s1) return SUCCESS and
verify_sentence(s2) return SUCCESS
then return SUCCESS
else return FAIL;
otherwise : return FAIL
end
end.
i belive we have to solve it by switch but i don't understand how can we make it , it have to many complex cases