ブックマーク / qiita.com/41semicolon (1)

  • JavaScript で論理学を実装 - Qiita

    0. 概要 JavaScript上で命題論理の言語を実装し、意味論 (恒真式・意味論的同値関係やタブロー計算)の各種概念も実装に落とし込む。証明論は未実装。動作環境は Node。 依存パッケージは nearley (構文解析) のみ。npm i --save nearley で環境構築完了。 0. 表記 原子命題は p,q,r,s,t,u のみ利用可。¬⋀⋁→↔ は -,A,V,->,== とする。よって例えば、$\neg\neg p \leftrightarrow p$ は --p == p となるし、$\neg(p\wedge q)\leftrightarrow \neg p \vee \neg q$ は -(p A q) == -p V -qとなる。 1. 統語論 ~構文木の構築~ 文字列を構文木にする。木構造には JavaScript の Array を利用する。具体的には pAq

    JavaScript で論理学を実装 - Qiita
    netcraft3
    netcraft3 2019/04/06
  • 1