All Projects → mrieppel → fitchjs

mrieppel / fitchjs

Licence: other
Fitch style proof constructor

Programming Languages

javascript
184084 projects - #8 most used programming language
HTML
75241 projects
CSS
56736 projects

Projects that are alternatives of or similar to fitchjs

LPL-solutions
Solutions for the book "Language Proof and Logic".
Stars: ✭ 51 (+168.42%)
Mutual labels:  proof, logic, fitch-proofs
LPL
📚Solutions to Language, Proof and Logic (2nd Edition)
Stars: ✭ 21 (+10.53%)
Mutual labels:  proof, logic, fitch-proofs
vulcan
A JavaScript propositional logic and resolution library
Stars: ✭ 56 (+194.74%)
Mutual labels:  proof, logic
thesisthemeCSU
A template for the thesis of CSU (Central South University).
Stars: ✭ 13 (-31.58%)
Mutual labels:  latex
academic-cv-publications
Generate a customised list of publications for your LaTeX CV using BibTeX entries.
Stars: ✭ 60 (+215.79%)
Mutual labels:  latex
PS-FCN Poster LaTex
LaTex Poster for PS-FCN (ECCV 2018)
Stars: ✭ 41 (+115.79%)
Mutual labels:  latex
PythonTipsDS
Python Tips for Data Scientist
Stars: ✭ 23 (+21.05%)
Mutual labels:  latex
Study-LaTeX
LaTeX学习笔记
Stars: ✭ 22 (+15.79%)
Mutual labels:  latex
rfc-bibtex
A command line tool that creates bibtex entries for IETF RFCs and Internet Drafts.
Stars: ✭ 43 (+126.32%)
Mutual labels:  latex
TUMGAD
Exercise generator and helpful materials for the Introduction to Algorithms and Data Structures 📚
Stars: ✭ 27 (+42.11%)
Mutual labels:  latex
master-thesis
Выпускная квалификационная работа (ВКР) магистра в LaTeX, оформленная в соответствии с нормоконтролем Севастопольского государственного университета в 2017 г.
Stars: ✭ 84 (+342.11%)
Mutual labels:  latex
csasdown
📖 An R package for creating CSAS reports in PDF or Word format with R Markdown and bookdown
Stars: ✭ 40 (+110.53%)
Mutual labels:  latex
purple-pi
💜 LaTeX math wherever you want
Stars: ✭ 31 (+63.16%)
Mutual labels:  latex
phplatex
Inline TeX in PHP pages
Stars: ✭ 34 (+78.95%)
Mutual labels:  latex
Planeverb
Project Planeverb is a CPU based real-time wave-based acoustics engine for games. It comes with an integration with the Unity Engine.
Stars: ✭ 22 (+15.79%)
Mutual labels:  proof
Resume-Generator
A python tool help you generator your resume with your pre defined JSON file
Stars: ✭ 26 (+36.84%)
Mutual labels:  latex
hfmath
Render LaTeX math with Hershey Fonts
Stars: ✭ 76 (+300%)
Mutual labels:  latex
SlackLateX
Bot that posts posts Latex pictures
Stars: ✭ 39 (+105.26%)
Mutual labels:  latex
react-latex-next
Render LaTeX in React apps
Stars: ✭ 18 (-5.26%)
Mutual labels:  latex
zotero-texmacs-integration
Integration of the Juris-M or Zotero reference manager with TeXmacs for using CSL citation styles in documents.
Stars: ✭ 17 (-10.53%)
Mutual labels:  latex

FitchJS

FitchJS is a web app written in JavaScript that lets users construct proofs in a Fitch-style natural deduction system, and export verified proofs in plain text or LaTeX. It is a modification of the LemmoNaDe program, and implements a similar rule set adapted to a Fitch notation. I am no longer actively developing this program. FitchFX is a newer version, with a slightly different syntax for quantifiers and a different set of rules (corresponding to those in my remix of the forall x logic textbook).

A live version of the program is here.

Here's a brief description of the content of the various javascript files:

  • script/draw.js: code to draw the proof as an svg using D3.js.

  • script/parsing.js: code to parse formulas into trees. Also contains code for transforming formulas in the "plain" notation into formulas containing unicode characters, and code for generating formulas in latex. Note that internally, the program expects the "simple" notation, e.g. '>' and '<>', rather than the unicode variants. Proofs can also only be imported in the plain notation.

  • script/rules_helper.js: various helper functions needed by the rule checking code. E.g. checking what lines are available from the current line, checking what free variables occur in a line, creating instances of quantified formulas etc.

  • script/rules_pl.js: code implementing rules of propositional logic.

  • script/rules_ql.js: code implementing rules of quantificational logic.

  • script/rules_siti_pl.js: code implementing sequent/theorem introduction (SI/TI) rules.

  • samples/: contains some sample proofs that can be imported into the program. The program will export proofs in LaTex markup that compiles using Johan Klüwer's fitch.sty (also included).

  • script/ui.js: code for the user interface, i.e. to dynamically change which menu item ("Construct Proof", "Export/Import", and "Reference") is active.

  • script/userio.js: code to capture user input (e.g. to begin a problem, append a line, import a proof etc.) and generate the appropriate output to the html page. Also contains the global variable that holds the proof.

  • script/validate.js: code to validate the user input, e.g. checking for well-formedness of input formulas, and to dispatch the user input to the appropriate rule checking code.

Thanks to Fred Mesnard for bug reports!

(c) Michael Rieppel 2015-2017. Released under the MIT License. See LICENSE above for more information.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].