Why does assume() mess with equality checks?
I ran into this interesting behaviour just now:
sage: bool(10 == log(282475249)/log(7))
True
sage: assume(282475249 == 7^x)
sage: bool(10 == log(282475249)/log(7))
False
Is this a bug? assume(7^x == 282475249) doesn't trigger the weird behaviour, but I'd expect those two assumptions to be equivalent.
I'm running SageMath version 8.0, Release Date: 2017-07-21
Well, try
assumethe other way around:to add a new question inside the question. I love such questions on a system written to highly serve higher mathematics. (And there is skew proportion of them w.r.t. questions involving e.g. elliptic curves...) Probably that the
assumetries to replace the LHS every time it can do it, then theboolhas to check for10 == log(7^x)/log(7), and even if gets the simplified versionbool( 10 == x )it may stop here, delivering a false. ThisFalsemeanssagecan not prove (without (further) help) that the assertion is true. It delivers aTrueiff it can.Note:
assumedoes not get all the best of the assumption in most cases. How could it?