# File truthtable.rb, line 275 def cnf r = [] @table.each {|inputs, output| return output.to_s if inputs.empty? next if output term = [] each_input(inputs) {|name, input| if input term << "!#{name}" else term << name end } if term.length == 1 r << term.join('|') else r << "(#{term.join('|')})" end } return "true" if r.empty? r.join(' & ') end