レポジトリ
経緯
バイトに行ったら同僚が課題で分数として計算する電卓を作ったと言っていて、面白そうだから作ってみた。
言語を作ってみたくてちょうどyacc
を触ったりしていた。
やってること
yacc でパースしてごにょごにょした。 0除算とか考慮してない、とりあえず作ってみた感じ。 Goで書いてます。
他
前にもyacc
を使って論理式をパースしてtseitin encoding
する何かを作ったけど、肝心のtseitin encoding
を理解していなくて正しく動いているのかよくわからない。
SATに食わせてみれば分かりそうだし今度食わせてみようと思っている。詳しい人いたら教えてください><
2015/6/28 追記
tseitin encoding の方、すこしバグがありましたが修正して多分動くようになりました。 ついでにMinisatに渡して変数割当を表示するようになりました。