#include<iostream>
#include<stack>
#include<string>
using namespace std;
int main()
{
string s;
while(cin>>s)
{
bool b=true;
if(s=="0")
break;
else
{
stack<int> sint;
for(int tp=0;tp<=1;tp++)
{
for(int tq=0;tq<=1;tq++)
{
for(int tr=0;tr<=1;tr++)
{
for(int ts=0;ts<=1;ts++)
{
for(int tt=0;tt<=1;tt++)
{
for(int i=s.length()-1;i>=0;i--)
{
if(s[i]=='p')
sint.push(tp);
else if(s[i]=='q')
sint.push(tq);
else if(s[i]=='r')
sint.push(tr);
else if(s[i]=='s')
sint.push(ts);
else if(s[i]=='t')
sint.push(tt);
else if(s[i]=='N')
{
int j=sint.top();
sint.pop();
sint.push(!j);
}
else if(s[i]=='K')
{
int j=sint.top();
sint.pop();
int k=sint.top();
sint.pop();
sint.push(j&&k);
}
else if(s[i]=='A')
{
int j=sint.top();
sint.pop();
int k=sint.top();
sint.pop();
sint.push(j||k);
}
else if(s[i]=='C')
{
int j=sint.top();
sint.pop();
int k=sint.top();
sint.pop();
sint.push((!j)&&k);
}
else if(s[i]=='E')
{
int j=sint.top();
sint.pop();
int k=sint.top();
sint.pop();
sint.push(j==k);
}
}
if(sint.top()==0)
{
b=false;
break;
}
}
if(b==false)
break;
}
if(b==false)
break;
}
if(b==false)
break;
}
if(b==false)
break;
}
}
if(b==true)
cout<<"tautology"<<endl;
else
cout<<"not"<<endl;
}
return 0;
}
Tautology
最新推荐文章于 2022-04-27 14:44:59 发布