<?xml version="1.0" encoding="UTF-8"?>
<logic>
    <parser-version>2.1</parser-version>
    <description>The basic modal logic K
Author: Lilac Team
Last update: March 2009</description>
    <connector>
        <connector-name>not</connector-name>
        <arity>1</arity>
        <associative>true</associative>
        <output-format>~ _</output-format>
        <priority>6</priority>
        <connector-comment/>
    </connector>
    <connector>
        <connector-name>and</connector-name>
        <arity>2</arity>
        <associative>true</associative>
        <output-format>_ &amp; _</output-format>
        <priority>4</priority>
        <connector-comment/>
    </connector>
    <connector>
        <connector-name>nec</connector-name>
        <arity>1</arity>
        <associative>true</associative>
        <output-format>[] _</output-format>
        <priority>7</priority>
        <connector-comment/>
    </connector>
    <rule>
        <rule-name>closeNodeStop</rule-name>
        <condition>
            <condition-name>hasElement</condition-name>
            <parameter>w</parameter>
            <parameter>variable a</parameter>
        </condition>
        <condition>
            <condition-name>hasElement</condition-name>
            <parameter>w</parameter>
            <parameter>not variable a</parameter>
        </condition>
        <action>
            <action-name>add</action-name>
            <parameter>w</parameter>
            <parameter>FALSE</parameter>
        </action>
        <action>
            <action-name>stop</action-name>
            <parameter>w</parameter>
        </action>
        <rule-comment/>
    </rule>
    <rule>
        <rule-name>NotNot</rule-name>
        <condition>
            <condition-name>hasElement</condition-name>
            <parameter>w</parameter>
            <parameter>not not variable a</parameter>
        </condition>
        <action>
            <action-name>add</action-name>
            <parameter>w</parameter>
            <parameter>variable a</parameter>
        </action>
        <rule-comment/>
    </rule>
    <rule>
        <rule-name>And</rule-name>
        <condition>
            <condition-name>hasElement</condition-name>
            <parameter>w</parameter>
            <parameter>and variable a variable b</parameter>
        </condition>
        <action>
            <action-name>add</action-name>
            <parameter>w</parameter>
            <parameter>variable a</parameter>
        </action>
        <action>
            <action-name>add</action-name>
            <parameter>w</parameter>
            <parameter>variable b</parameter>
        </action>
        <rule-comment/>
    </rule>
    <rule>
        <rule-name>NotAnd</rule-name>
        <condition>
            <condition-name>hasElement</condition-name>
            <parameter>w</parameter>
            <parameter>not and variable a variable b</parameter>
        </condition>
        <action>
            <action-name>duplicate</action-name>
            <parameter>premodel_copy</parameter>
        </action>
        <action>
            <action-name>add</action-name>
            <parameter>w</parameter>
            <parameter>not variable a</parameter>
        </action>
        <action>
            <action-name>add</action-name>
            <parameter>premodel_copy.w</parameter>
            <parameter>not variable b</parameter>
        </action>
        <rule-comment/>
    </rule>
    <rule>
        <rule-name>Nec</rule-name>
        <condition>
            <condition-name>hasElement</condition-name>
            <parameter>w</parameter>
            <parameter>nec variable A</parameter>
        </condition>
        <condition>
            <condition-name>isLinked</condition-name>
            <parameter>w</parameter>
            <parameter>u</parameter>
            <parameter>R</parameter>
        </condition>
        <action>
            <action-name>add</action-name>
            <parameter>u</parameter>
            <parameter>variable A</parameter>
        </action>
        <rule-comment/>
    </rule>
    <rule>
        <rule-name>NotNec</rule-name>
        <condition>
            <condition-name>hasElement</condition-name>
            <parameter>w</parameter>
            <parameter>not nec variable A</parameter>
        </condition>
        <action>
            <action-name>createNewNode</action-name>
            <parameter>u</parameter>
        </action>
        <action>
            <action-name>add</action-name>
            <parameter>u</parameter>
            <parameter>not variable A</parameter>
        </action>
        <action>
            <action-name>link</action-name>
            <parameter>w</parameter>
            <parameter>u</parameter>
            <parameter>R</parameter>
        </action>
        <rule-comment/>
    </rule>
    <rule>
        <rule-name>NecT</rule-name>
        <condition>
            <condition-name>hasElement</condition-name>
            <parameter>w</parameter>
            <parameter>nec variable a</parameter>
        </condition>
        <action>
            <action-name>add</action-name>
            <parameter>w</parameter>
            <parameter>variable a</parameter>
        </action>
        <rule-comment/>
    </rule>
    <strategy>
        <strategy-name>localSaturationStrategy</strategy-name>
        <strategy-code>repeat
  firstRule
	closeNodeStop
	NotNot
	And
	NecT
	NotAnd
  end
end 
</strategy-code>
        <strategy-comment/>
    </strategy>
    <strategy>
        <strategy-name>monomodalKT_strat</strategy-name>
        <strategy-code>repeat 
	localSaturationStrategy
	NotNec
	Nec
end</strategy-code>
        <strategy-comment/>
    </strategy>
    <main-strategy>monomodalKT_strat</main-strategy>
    <testing-formula>
        <formula-name/>
        <formula-code>and P not nec P</formula-code>
        <formula-comment/>
    </testing-formula>
    <testing-formula>
        <formula-name/>
        <formula-code>and P nec not P</formula-code>
        <formula-comment/>
    </testing-formula>
    <testing-formula>
        <formula-name/>
        <formula-code>and not nec P not nec nec Q</formula-code>
        <formula-comment/>
    </testing-formula>
    <testing-formula>
        <formula-name/>
        <formula-code>and not nec P not nec nec and Q R</formula-code>
        <formula-comment/>
    </testing-formula>
</logic>
