theorem.rb revision 519e88f060555171716c8161ab5549e6f29fede6