fix(lp) : clear forbidden_set and recheck for optimality before exiting, speed up calculations with rational numbers

Signed-off-by: Lev Nachmanson <levnach@microsoft.com>