manchun stephen siegel expr unsat forall int stderr stdin tokenizer bool ite mod div rem const blah datatype spec canonic herbrand rationals ints stateless inlining preprocess