MODULE (
  HEADER (
    SPEC (
      NAME ("lukaxiom"),
      VERSION ("1.00.00"),
      VERSION ("1.00.00"),
      LOCATIONS (
        LOCATION ("http://www.qedeq.org/0_00_53")
      )
    ),
    HEADLINE ("Axioms, Definitions and Rules of Propositional Calculus"),
    DESCRIPTION (
      "This module includes the axioms of propositional calculus due to Lukasiewicz & Tarski. These axioms, together with some definitions and rules of derivations, allow the deduction of all valid formulas of propositional logic. \par The primitive logical symbols are implication ('$\rightarrow$') and negation ('$\neg$'). The other operands will be defined by them. \par This file is part of the project `Hilbert II' see \href{http://www.qedeq.org/}{project homepage}."
    ),
    EMAIL ("module@qedeq.org"),
    AUTHORS (
      AUTHOR ("Franz Fritsche",EMAIL ("ff@qedeq.org")),
      AUTHOR ("Michael Meyling", EMAIL ("mime@qedeq.org"))
    )
  ),
  USEDBY (
    SPEC (
      NAME ("luktheo1"),
      VERSION ("1.00.00"),
      VERSION ("1.00.00"),
      LOCATIONS (
        LOCATION (".")
      )
    )
  ),
  PARAGRAPHS (
    PARAGRAPH (
      LABEL ("axiom1"),
      AXIOM (
        IMPL(PROP(1), IMPL(PROP(2), PROP(1)))
      )
    ),
    PARAGRAPH (
      LABEL ("axiom2"),
      AXIOM (
        IMPL(IMPL(PROP(1), IMPL(PROP(2), PROP(3))), IMPL(IMPL(PROP(1), PROP(2)), IMPL(PROP(1), PROP(3))))
      )
    ),
    PARAGRAPH (
      LABEL ("axiom3"),
      AXIOM (
        IMPL(IMPL(NOT(PROP(2)), NOT(PROP(1))), IMPL(PROP(1), PROP(2)))
      )
    ),
    PARAGRAPH (
      LABEL ("or"),
      ABBREVIATION (
        OR(FPATTERN(1), FPATTERN(2)),
        IMPL(NOT(FPATTERN(1)), FPATTERN(2))
      ),
      "This means that we could transform a part formula that matches the pattern on the left side into the right side and we could transform a part formula that matches the pattern on the right side into the formula on the left side."
    ),
    PARAGRAPH (
      LABEL ("and"),
      ABBREVIATION (
        AND(FPATTERN(1), FPATTERN(2)),
        NOT(OR(NOT(FPATTERN(1)), NOT(FPATTERN(2))))
      )
    ),
    PARAGRAPH (
      LABEL ("equi"),
      ABBREVIATION (
        EQUI(FPATTERN(1), FPATTERN(2)),
        AND(IMPL(FPATTERN(1), FPATTERN(2)), IMPL(FPATTERN(2), FPATTERN(1)))
      )
    ),
    PARAGRAPH (
      LABEL ("rule1"),
      DECLARERULE (
        "MODUSPONENS", 
        "modus ponens"
      ),
      "For an explanation see \href{http://www.qedeq.org/0_00_53/rules_1.00.00.html#modusponens}{Modus Ponens} or \href{http://www.qedeq.org/0_00_53/rules_1.00.00.o.html#modusponens}{Modus Ponens (o)}"
    ),
    PARAGRAPH (
      LABEL ("rule2"),
      DECLARERULE (
        "ADDAXIOM", 
        "add axiom"
      ),
      "For an explanation see \href{http://www.qedeq.org/0_00_53/rules_1.00.00.html#addaxiom}{Add Axiom} or \href{http://www.qedeq.org/0_00_53/rules_1.00.00.o.html#addaxiom}{Add Axiom (o)}"
    ),
    PARAGRAPH (
      LABEL ("rule3"),
      DECLARERULE (
        "ADDSENTENCE", 
        "add sentence"
      ),
      "For an explanation see \href{http://www.qedeq.org/0_00_53/rules_1.00.00.html#addproposition}{Add Proposition} or \href{http://www.qedeq.org/0_00_53/rules_1.00.00.o.html#addproposition}{Add Proposition (o)}"
    ),
    PARAGRAPH (
      LABEL ("rule4"),
      DECLARERULE (
        "REPLACEPROP", 
        "replace proposition variable"
      ),
      "For an explanation see \href{http://www.qedeq.org/0_00_53/rules_1.00.00.html#replaceprop}{Replace Proposition Variable} or \href{http://www.qedeq.org/0_00_53/rules_1.00.00.o.html#replaceprop}{Replace Proposition Variable (o)}"
    ),
    PARAGRAPH (
      LABEL ("rule5"),
      DECLARERULE (
        "USEABBREVIATION", 
        "use abbreviation"
      ),
      "For an explanation see \href{http://www.qedeq.org/0_00_53/rules_1.00.00.html#useabbreviation}{Use Abbreviation or \href{http://www.qedeq.org/0_00_53/rules_1.00.00.o.html#useabbreviation}{Use Abbreviation (o)}"
    ),
    PARAGRAPH (
      LABEL ("rule6"),
        DECLARERULE (
        "REVERSEABBREVIATION", 
        "reverse abbreviation"
      ),
      "For an explanation see \href{http://www.qedeq.org/0_00_53/rules_1.00.00.html#reverseabbreviation}{Reverse Abbreviation} or \href{http://www.qedeq.org/0_00_53/rules_1.00.00.o.html#reverseabbreviation}{Reverse Abbreviation (o)}"
    )
  )
)

