analyzer icon indicating copy to clipboard operation
analyzer copied to clipboard

Improve trigonometric abstractions

Open stilscher opened this issue 2 years ago • 6 comments

This PR improves the abstraction of the cos function if the argument is neither nan nor inf by

  • storing also the inverted relationship between arguments of math functions and (assigned variable, math function) in the tmpSpecial analysis
  • being more precise in the abstraction of cos(x) in case one can assure that variables representing isInf(x) and isNaN are definitely false

stilscher avatar Nov 23 '23 13:11 stilscher

This yields 4 more successful tasks, I'll start it on the server.

michael-schwarz avatar Nov 23 '23 15:11 michael-schwarz

Since this is still in need of refactoring/cleanup, it's too late to include for SV-COMP 2024. Four additional tasks out of ~32000 is not worth the risk for a possible regression.

sim642 avatar Nov 24 '23 08:11 sim642

Four additional tasks out of ~32000 is not worth the risk for a possible regression.

There is no regression, we ran it overnight on all tasks with full timeouts.

michael-schwarz avatar Nov 24 '23 08:11 michael-schwarz

It's not just about SV-COMP though. It will be the representative version of Goblint for the entire year to come. If something doesn't yet meet our own standards, then it's not ready for such release. This is just too last minute, considering the freezing deadline we set for ourselves.

sim642 avatar Nov 24 '23 09:11 sim642

Ok. I think it would've been nice for Sarah's work this past week to be reflected in that version, but I won't push too hard.

michael-schwarz avatar Nov 24 '23 09:11 michael-schwarz

Why is the TmpSpecialInv query needed? TmpSpecial itself already is a certain inverse (for refining the argument based on the return value), so TmpSpecialInv is some kind of inverse of the inverse. Is that not just normal forward evaluation? The new query is also used in eval not invariant.

sim642 avatar Nov 27 '23 12:11 sim642