You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Improve SymbExLogger:
- Thread safe as long as silicon parallelizes up to the entity level: SymbLog itself is not thread safe. --ideModeAdvanced accordingly does not require --numberOfParallelVerifiers 1 anymore.
- Change SymbLog to accept a listener for appropriate events.
* move smt delta calculation to ProverStdIO for thread safety
* move smt statistics calculations out of ProverStdIO
* Bump silver submodule to master branch version
* move symbexlogger state into classes, shim the old usage
* make Verifier own a current MemberSymbExLogger
* Give Verifier the capability to open symbexlogs for members
The root symbexlog comes from Silicon and is computed explicitly on configuration, so it can be overridden
From there, the MainVerifier owns the root log, and WorkerVerifiers ask the MainVerifier for a member-scoped symbexlog
* swap out shims
* some bugs:
- do not use newEntityLogger directly, because it's not inserted in the members of the root log
- synchronize on the log instead of the map, because I'm using a var instead of mutable.Map
- delay opening the member scope to avoid using early initializers
* address comment
* make NoopLog do nothing
* also do nothing on whenEnabled for NoopLog
* symbexlogs can be closed: they do not accept further records (now unrelated to closeMemberScope)
* close log on timeout
* SymbExLogger.ofConfig makes the silicon slightly less lazy, so invalid options are not silently ignored when doing nothing
* use NoopMemberSymbExLog if there is no log yet (a bug, but better than crashing)
disallow use of ideModeAdvanced in the presence of parallelizeBranches
* move config to concrete logger; state is always null, so drop it.
* update silver
* change by-name trickery to lambdas
* remove debug println
* namespace Member
* clarify val names for Config vs LogConfig
* Revert "change by-name trickery to lambdas"
This reverts commit 505c61b.
* validateFileOpt already checks whether the file exists
* log a warning when the symbexlog config cannot be parsed
* no delta for values not yet encountered
* use the symbExLog of the current verifier
* resolve warnings: clean up imports; mark unused vals as @unused
* missed merge conflict: just use ours
* adjust documentation
* update silver
Co-authored-by: Pieter Bos <p.h.bos@student.utwente.nl>
0 commit comments