Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/eser/cmpe534
CMPE534 Automated Deduction Course
https://github.com/eser/cmpe534
Last synced: 13 days ago
JSON representation
CMPE534 Automated Deduction Course
- Host: GitHub
- URL: https://github.com/eser/cmpe534
- Owner: eser
- License: gpl-2.0
- Created: 2013-11-29T22:09:52.000Z (almost 11 years ago)
- Default Branch: master
- Last Pushed: 2014-01-14T05:36:18.000Z (almost 11 years ago)
- Last Synced: 2024-05-02T05:54:21.998Z (7 months ago)
- Language: C#
- Size: 1.39 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
CMPE534 Automated Deduction
===========================This repository contains some practical implementations for CMPE534 Automated Deduction course.
Project #1: Deduction
---------------------
This project is designed to be a basic interpreter for proving theorems in propositional logic. It is basically accepts propositional statements in a specific syntax in order to prove its validity. For non-valid statements, all falsifying valuations will be extracted from counter-examples.**To-dos:**
* 'Properties' class with 'Distribute' method needed, to resolve inside parenthesis.
* more simplifications
**Roadmap:**
* Gentzen G for First-Order Logic
* Resolution ?
**Output:**
``` bash
proposition = (First | Second) & (A | B) & C
Dumper.Dump() = (((First | Second) & (A | B)) & C)
Substitutor.Substitute() = (((First | First) & (A | t)) & C)
Simplifier.Simplify() = ((First & t) & C)Deduction tree of: (B > C) & (D | E) -> (A & B), (C | D)
sequent = ((B > C) & (D | E)) -> (A & B), (C | D)
sequent = (B > C), (D | E) -> C, D, A
sequent = (D | E) -> B, C, D, A
sequent = D -> B, C, D, A
** axiom node **sequent = E -> B, C, D, A
** counter-example node **sequent = C, (D | E) -> C, D, A
** axiom node **sequent = (B > C), (D | E) -> C, D, B
sequent = (D | E) -> B, C, D, B
sequent = D -> B, C, D, B
** axiom node **sequent = E -> B, C, D, B
** counter-example node **sequent = C, (D | E) -> C, D, B
** axiom node **Formula is not valid, details below.
+ Counter-examples:
.. E -> B, C, D, A
.. E -> B, C, D, B+ Falsifying valuations:
.. Valuation #1:
.. E -> t
.. B -> f
.. C -> f
.. D -> f
.. A -> f
.. Valuation #2:
.. E -> t
.. B -> f
.. C -> f
.. D -> f
```License
-------
See [LICENSE](LICENSE)Contributing
------------
Contributions are welcome[Eser Ozvataf](http://eser.ozvataf.com/)