/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerC.xml -s ../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound5.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-07 15:09:42,361 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-07 15:09:42,362 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-07 15:09:42,401 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-07 15:09:42,402 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-07 15:09:42,403 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-07 15:09:42,404 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-07 15:09:42,406 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-07 15:09:42,408 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-07 15:09:42,411 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-07 15:09:42,411 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-07 15:09:42,412 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-07 15:09:42,413 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-07 15:09:42,414 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-07 15:09:42,415 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-07 15:09:42,417 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-07 15:09:42,417 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-07 15:09:42,418 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-07 15:09:42,419 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-07 15:09:42,423 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-07 15:09:42,425 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-07 15:09:42,426 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-07 15:09:42,426 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-07 15:09:42,427 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-07 15:09:42,428 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-07 15:09:42,432 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-07 15:09:42,433 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-07 15:09:42,433 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-07 15:09:42,433 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-07 15:09:42,434 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-07 15:09:42,435 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-07 15:09:42,435 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-07 15:09:42,436 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-07 15:09:42,436 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-07 15:09:42,437 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-07 15:09:42,437 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-07 15:09:42,437 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-07 15:09:42,438 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-07 15:09:42,438 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-07 15:09:42,438 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-07 15:09:42,438 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-07 15:09:42,439 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-07 15:09:42,440 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf [2022-04-07 15:09:42,466 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-07 15:09:42,466 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-07 15:09:42,467 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-04-07 15:09:42,467 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-04-07 15:09:42,467 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-07 15:09:42,467 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-07 15:09:42,468 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-07 15:09:42,468 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-07 15:09:42,468 INFO L138 SettingsManager]: * Use SBE=true [2022-04-07 15:09:42,468 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-07 15:09:42,469 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-07 15:09:42,469 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-07 15:09:42,469 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-07 15:09:42,469 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-07 15:09:42,469 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-07 15:09:42,469 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-07 15:09:42,469 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-07 15:09:42,470 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-07 15:09:42,470 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-07 15:09:42,470 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-07 15:09:42,470 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-07 15:09:42,470 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-07 15:09:42,470 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-07 15:09:42,470 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-07 15:09:42,471 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 15:09:42,471 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-07 15:09:42,471 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-07 15:09:42,471 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-07 15:09:42,471 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-07 15:09:42,471 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-07 15:09:42,471 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-04-07 15:09:42,471 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-04-07 15:09:42,471 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-07 15:09:42,472 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-07 15:09:42,672 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-07 15:09:42,691 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-07 15:09:42,693 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-07 15:09:42,694 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-07 15:09:42,694 INFO L275 PluginConnector]: CDTParser initialized [2022-04-07 15:09:42,695 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound5.c [2022-04-07 15:09:42,747 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/6d852c187/2044b2f0d7284b188ee3a208624a73cb/FLAG49faf6b4b [2022-04-07 15:09:43,131 INFO L306 CDTParser]: Found 1 translation units. [2022-04-07 15:09:43,131 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound5.c [2022-04-07 15:09:43,137 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/6d852c187/2044b2f0d7284b188ee3a208624a73cb/FLAG49faf6b4b [2022-04-07 15:09:43,149 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/6d852c187/2044b2f0d7284b188ee3a208624a73cb [2022-04-07 15:09:43,151 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-07 15:09:43,151 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-07 15:09:43,153 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-07 15:09:43,154 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-07 15:09:43,156 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-07 15:09:43,156 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 03:09:43" (1/1) ... [2022-04-07 15:09:43,158 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5bda8aa2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 03:09:43, skipping insertion in model container [2022-04-07 15:09:43,158 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 03:09:43" (1/1) ... [2022-04-07 15:09:43,163 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-07 15:09:43,174 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-07 15:09:43,313 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound5.c[524,537] [2022-04-07 15:09:43,344 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 15:09:43,350 INFO L203 MainTranslator]: Completed pre-run [2022-04-07 15:09:43,360 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound5.c[524,537] [2022-04-07 15:09:43,380 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 15:09:43,396 INFO L208 MainTranslator]: Completed translation [2022-04-07 15:09:43,396 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 03:09:43 WrapperNode [2022-04-07 15:09:43,396 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-07 15:09:43,397 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-07 15:09:43,397 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-07 15:09:43,397 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-07 15:09:43,404 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 03:09:43" (1/1) ... [2022-04-07 15:09:43,405 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 03:09:43" (1/1) ... [2022-04-07 15:09:43,424 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 03:09:43" (1/1) ... [2022-04-07 15:09:43,425 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 03:09:43" (1/1) ... [2022-04-07 15:09:43,435 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 03:09:43" (1/1) ... [2022-04-07 15:09:43,438 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 03:09:43" (1/1) ... [2022-04-07 15:09:43,439 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 03:09:43" (1/1) ... [2022-04-07 15:09:43,440 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-07 15:09:43,441 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-07 15:09:43,441 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-07 15:09:43,441 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-07 15:09:43,442 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 03:09:43" (1/1) ... [2022-04-07 15:09:43,447 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 15:09:43,454 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 15:09:43,473 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-07 15:09:43,490 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-07 15:09:43,502 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-07 15:09:43,503 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-07 15:09:43,503 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-07 15:09:43,503 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-07 15:09:43,504 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-07 15:09:43,504 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-07 15:09:43,504 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-07 15:09:43,504 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-07 15:09:43,504 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-07 15:09:43,504 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-07 15:09:43,504 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-07 15:09:43,504 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-07 15:09:43,504 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-07 15:09:43,505 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-07 15:09:43,505 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-07 15:09:43,505 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-07 15:09:43,505 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-07 15:09:43,505 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-07 15:09:43,505 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-07 15:09:43,505 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-07 15:09:43,563 INFO L234 CfgBuilder]: Building ICFG [2022-04-07 15:09:43,564 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-07 15:09:43,788 INFO L275 CfgBuilder]: Performing block encoding [2022-04-07 15:09:43,793 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-07 15:09:43,793 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-07 15:09:43,794 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 03:09:43 BoogieIcfgContainer [2022-04-07 15:09:43,794 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-07 15:09:43,795 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-07 15:09:43,796 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-07 15:09:43,799 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-07 15:09:43,799 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 07.04 03:09:43" (1/3) ... [2022-04-07 15:09:43,799 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1b1f03b4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 03:09:43, skipping insertion in model container [2022-04-07 15:09:43,800 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 03:09:43" (2/3) ... [2022-04-07 15:09:43,800 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1b1f03b4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 03:09:43, skipping insertion in model container [2022-04-07 15:09:43,800 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 03:09:43" (3/3) ... [2022-04-07 15:09:43,801 INFO L111 eAbstractionObserver]: Analyzing ICFG prod4br-ll_unwindbound5.c [2022-04-07 15:09:43,804 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-07 15:09:43,804 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-07 15:09:43,839 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-07 15:09:43,848 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-07 15:09:43,848 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-07 15:09:43,866 INFO L276 IsEmpty]: Start isEmpty. Operand has 32 states, 20 states have (on average 1.45) internal successors, (29), 21 states have internal predecessors, (29), 6 states have call successors, (6), 4 states have call predecessors, (6), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 15:09:43,870 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-07 15:09:43,870 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 15:09:43,870 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 15:09:43,871 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 15:09:43,875 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 15:09:43,875 INFO L85 PathProgramCache]: Analyzing trace with hash 1717894843, now seen corresponding path program 1 times [2022-04-07 15:09:43,881 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 15:09:43,882 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [45500744] [2022-04-07 15:09:43,882 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:09:43,883 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 15:09:43,966 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:09:44,014 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-07 15:09:44,018 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:09:44,034 INFO L290 TraceCheckUtils]: 0: Hoare triple {44#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {35#true} is VALID [2022-04-07 15:09:44,034 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume true; {35#true} is VALID [2022-04-07 15:09:44,035 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {35#true} {35#true} #77#return; {35#true} is VALID [2022-04-07 15:09:44,035 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-07 15:09:44,037 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:09:44,044 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-04-07 15:09:44,045 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-04-07 15:09:44,045 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} assume true; {36#false} is VALID [2022-04-07 15:09:44,046 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {35#true} #69#return; {36#false} is VALID [2022-04-07 15:09:44,046 INFO L272 TraceCheckUtils]: 0: Hoare triple {35#true} call ULTIMATE.init(); {44#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-07 15:09:44,047 INFO L290 TraceCheckUtils]: 1: Hoare triple {44#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {35#true} is VALID [2022-04-07 15:09:44,047 INFO L290 TraceCheckUtils]: 2: Hoare triple {35#true} assume true; {35#true} is VALID [2022-04-07 15:09:44,047 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {35#true} {35#true} #77#return; {35#true} is VALID [2022-04-07 15:09:44,047 INFO L272 TraceCheckUtils]: 4: Hoare triple {35#true} call #t~ret7 := main(); {35#true} is VALID [2022-04-07 15:09:44,047 INFO L290 TraceCheckUtils]: 5: Hoare triple {35#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {35#true} is VALID [2022-04-07 15:09:44,048 INFO L272 TraceCheckUtils]: 6: Hoare triple {35#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {35#true} is VALID [2022-04-07 15:09:44,048 INFO L290 TraceCheckUtils]: 7: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-04-07 15:09:44,048 INFO L290 TraceCheckUtils]: 8: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-04-07 15:09:44,048 INFO L290 TraceCheckUtils]: 9: Hoare triple {36#false} assume true; {36#false} is VALID [2022-04-07 15:09:44,049 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {36#false} {35#true} #69#return; {36#false} is VALID [2022-04-07 15:09:44,049 INFO L290 TraceCheckUtils]: 11: Hoare triple {36#false} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {36#false} is VALID [2022-04-07 15:09:44,049 INFO L290 TraceCheckUtils]: 12: Hoare triple {36#false} assume !true; {36#false} is VALID [2022-04-07 15:09:44,049 INFO L272 TraceCheckUtils]: 13: Hoare triple {36#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {36#false} is VALID [2022-04-07 15:09:44,050 INFO L290 TraceCheckUtils]: 14: Hoare triple {36#false} ~cond := #in~cond; {36#false} is VALID [2022-04-07 15:09:44,050 INFO L290 TraceCheckUtils]: 15: Hoare triple {36#false} assume 0 == ~cond; {36#false} is VALID [2022-04-07 15:09:44,050 INFO L290 TraceCheckUtils]: 16: Hoare triple {36#false} assume !false; {36#false} is VALID [2022-04-07 15:09:44,050 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-07 15:09:44,051 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 15:09:44,051 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [45500744] [2022-04-07 15:09:44,051 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [45500744] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 15:09:44,052 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 15:09:44,052 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-07 15:09:44,053 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1100056885] [2022-04-07 15:09:44,053 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 15:09:44,058 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-07 15:09:44,059 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 15:09:44,061 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-07 15:09:44,087 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 15:09:44,087 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-07 15:09:44,087 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 15:09:44,102 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-07 15:09:44,103 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-07 15:09:44,106 INFO L87 Difference]: Start difference. First operand has 32 states, 20 states have (on average 1.45) internal successors, (29), 21 states have internal predecessors, (29), 6 states have call successors, (6), 4 states have call predecessors, (6), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-07 15:09:44,288 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:09:44,289 INFO L93 Difference]: Finished difference Result 56 states and 77 transitions. [2022-04-07 15:09:44,289 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-07 15:09:44,289 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-07 15:09:44,289 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 15:09:44,290 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-07 15:09:44,301 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 77 transitions. [2022-04-07 15:09:44,301 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-07 15:09:44,307 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 77 transitions. [2022-04-07 15:09:44,307 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 77 transitions. [2022-04-07 15:09:44,388 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 15:09:44,393 INFO L225 Difference]: With dead ends: 56 [2022-04-07 15:09:44,394 INFO L226 Difference]: Without dead ends: 28 [2022-04-07 15:09:44,399 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-07 15:09:44,401 INFO L913 BasicCegarLoop]: 36 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 19 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 40 SdHoareTripleChecker+Invalid, 24 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 19 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 15:09:44,402 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [11 Valid, 40 Invalid, 24 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 19 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 15:09:44,411 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28 states. [2022-04-07 15:09:44,421 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28 to 27. [2022-04-07 15:09:44,421 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 15:09:44,422 INFO L82 GeneralOperation]: Start isEquivalent. First operand 28 states. Second operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-07 15:09:44,422 INFO L74 IsIncluded]: Start isIncluded. First operand 28 states. Second operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-07 15:09:44,423 INFO L87 Difference]: Start difference. First operand 28 states. Second operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-07 15:09:44,426 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:09:44,426 INFO L93 Difference]: Finished difference Result 28 states and 34 transitions. [2022-04-07 15:09:44,426 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 34 transitions. [2022-04-07 15:09:44,426 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:09:44,427 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:09:44,427 INFO L74 IsIncluded]: Start isIncluded. First operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 28 states. [2022-04-07 15:09:44,427 INFO L87 Difference]: Start difference. First operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 28 states. [2022-04-07 15:09:44,430 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:09:44,430 INFO L93 Difference]: Finished difference Result 28 states and 34 transitions. [2022-04-07 15:09:44,430 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 34 transitions. [2022-04-07 15:09:44,431 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:09:44,431 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:09:44,431 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 15:09:44,431 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 15:09:44,431 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-07 15:09:44,433 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 33 transitions. [2022-04-07 15:09:44,434 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 33 transitions. Word has length 17 [2022-04-07 15:09:44,435 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 15:09:44,435 INFO L478 AbstractCegarLoop]: Abstraction has 27 states and 33 transitions. [2022-04-07 15:09:44,435 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-07 15:09:44,435 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 33 transitions. [2022-04-07 15:09:44,435 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-07 15:09:44,436 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 15:09:44,436 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 15:09:44,436 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-07 15:09:44,436 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 15:09:44,436 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 15:09:44,437 INFO L85 PathProgramCache]: Analyzing trace with hash 444281082, now seen corresponding path program 1 times [2022-04-07 15:09:44,437 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 15:09:44,437 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [906310634] [2022-04-07 15:09:44,437 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:09:44,437 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 15:09:44,452 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 15:09:44,464 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2040451440] [2022-04-07 15:09:44,464 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:09:44,465 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 15:09:44,465 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 15:09:44,466 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 15:09:44,467 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-07 15:09:44,510 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:09:44,512 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-07 15:09:44,527 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:09:44,532 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 15:09:44,669 INFO L272 TraceCheckUtils]: 0: Hoare triple {214#true} call ULTIMATE.init(); {214#true} is VALID [2022-04-07 15:09:44,672 INFO L290 TraceCheckUtils]: 1: Hoare triple {214#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {222#(<= ~counter~0 0)} is VALID [2022-04-07 15:09:44,672 INFO L290 TraceCheckUtils]: 2: Hoare triple {222#(<= ~counter~0 0)} assume true; {222#(<= ~counter~0 0)} is VALID [2022-04-07 15:09:44,673 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {222#(<= ~counter~0 0)} {214#true} #77#return; {222#(<= ~counter~0 0)} is VALID [2022-04-07 15:09:44,673 INFO L272 TraceCheckUtils]: 4: Hoare triple {222#(<= ~counter~0 0)} call #t~ret7 := main(); {222#(<= ~counter~0 0)} is VALID [2022-04-07 15:09:44,674 INFO L290 TraceCheckUtils]: 5: Hoare triple {222#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {222#(<= ~counter~0 0)} is VALID [2022-04-07 15:09:44,674 INFO L272 TraceCheckUtils]: 6: Hoare triple {222#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {222#(<= ~counter~0 0)} is VALID [2022-04-07 15:09:44,674 INFO L290 TraceCheckUtils]: 7: Hoare triple {222#(<= ~counter~0 0)} ~cond := #in~cond; {222#(<= ~counter~0 0)} is VALID [2022-04-07 15:09:44,675 INFO L290 TraceCheckUtils]: 8: Hoare triple {222#(<= ~counter~0 0)} assume !(0 == ~cond); {222#(<= ~counter~0 0)} is VALID [2022-04-07 15:09:44,675 INFO L290 TraceCheckUtils]: 9: Hoare triple {222#(<= ~counter~0 0)} assume true; {222#(<= ~counter~0 0)} is VALID [2022-04-07 15:09:44,676 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {222#(<= ~counter~0 0)} {222#(<= ~counter~0 0)} #69#return; {222#(<= ~counter~0 0)} is VALID [2022-04-07 15:09:44,676 INFO L290 TraceCheckUtils]: 11: Hoare triple {222#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {222#(<= ~counter~0 0)} is VALID [2022-04-07 15:09:44,677 INFO L290 TraceCheckUtils]: 12: Hoare triple {222#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {256#(<= |main_#t~post6| 0)} is VALID [2022-04-07 15:09:44,677 INFO L290 TraceCheckUtils]: 13: Hoare triple {256#(<= |main_#t~post6| 0)} assume !(#t~post6 < 5);havoc #t~post6; {215#false} is VALID [2022-04-07 15:09:44,677 INFO L272 TraceCheckUtils]: 14: Hoare triple {215#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {215#false} is VALID [2022-04-07 15:09:44,678 INFO L290 TraceCheckUtils]: 15: Hoare triple {215#false} ~cond := #in~cond; {215#false} is VALID [2022-04-07 15:09:44,678 INFO L290 TraceCheckUtils]: 16: Hoare triple {215#false} assume 0 == ~cond; {215#false} is VALID [2022-04-07 15:09:44,678 INFO L290 TraceCheckUtils]: 17: Hoare triple {215#false} assume !false; {215#false} is VALID [2022-04-07 15:09:44,679 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-07 15:09:44,679 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 15:09:44,679 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 15:09:44,679 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [906310634] [2022-04-07 15:09:44,680 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 15:09:44,680 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2040451440] [2022-04-07 15:09:44,683 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2040451440] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 15:09:44,683 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 15:09:44,683 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-07 15:09:44,684 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1367156345] [2022-04-07 15:09:44,684 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 15:09:44,685 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-04-07 15:09:44,685 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 15:09:44,686 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-07 15:09:44,702 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 15:09:44,703 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-07 15:09:44,703 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 15:09:44,704 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-07 15:09:44,704 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-07 15:09:44,705 INFO L87 Difference]: Start difference. First operand 27 states and 33 transitions. Second operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-07 15:09:44,784 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:09:44,784 INFO L93 Difference]: Finished difference Result 37 states and 44 transitions. [2022-04-07 15:09:44,785 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-07 15:09:44,785 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-04-07 15:09:44,785 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 15:09:44,785 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-07 15:09:44,787 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 44 transitions. [2022-04-07 15:09:44,788 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-07 15:09:44,790 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 44 transitions. [2022-04-07 15:09:44,790 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 44 transitions. [2022-04-07 15:09:44,824 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 15:09:44,825 INFO L225 Difference]: With dead ends: 37 [2022-04-07 15:09:44,825 INFO L226 Difference]: Without dead ends: 29 [2022-04-07 15:09:44,826 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-07 15:09:44,826 INFO L913 BasicCegarLoop]: 31 mSDtfsCounter, 0 mSDsluCounter, 50 mSDsCounter, 0 mSdLazyCounter, 7 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 81 SdHoareTripleChecker+Invalid, 7 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 7 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 15:09:44,827 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 81 Invalid, 7 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 7 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 15:09:44,827 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2022-04-07 15:09:44,834 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 29. [2022-04-07 15:09:44,834 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 15:09:44,834 INFO L82 GeneralOperation]: Start isEquivalent. First operand 29 states. Second operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-07 15:09:44,835 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-07 15:09:44,835 INFO L87 Difference]: Start difference. First operand 29 states. Second operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-07 15:09:44,837 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:09:44,837 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2022-04-07 15:09:44,837 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-07 15:09:44,837 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:09:44,837 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:09:44,838 INFO L74 IsIncluded]: Start isIncluded. First operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 29 states. [2022-04-07 15:09:44,838 INFO L87 Difference]: Start difference. First operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 29 states. [2022-04-07 15:09:44,840 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:09:44,840 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2022-04-07 15:09:44,840 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-07 15:09:44,840 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:09:44,840 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:09:44,841 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 15:09:44,841 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 15:09:44,841 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-07 15:09:44,842 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 35 transitions. [2022-04-07 15:09:44,842 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 35 transitions. Word has length 18 [2022-04-07 15:09:44,842 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 15:09:44,843 INFO L478 AbstractCegarLoop]: Abstraction has 29 states and 35 transitions. [2022-04-07 15:09:44,843 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-07 15:09:44,843 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-07 15:09:44,843 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-07 15:09:44,843 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 15:09:44,843 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 15:09:44,861 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-07 15:09:45,056 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 15:09:45,056 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 15:09:45,057 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 15:09:45,057 INFO L85 PathProgramCache]: Analyzing trace with hash 446068542, now seen corresponding path program 1 times [2022-04-07 15:09:45,057 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 15:09:45,057 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1404580186] [2022-04-07 15:09:45,057 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:09:45,057 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 15:09:45,082 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 15:09:45,082 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1970893414] [2022-04-07 15:09:45,082 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:09:45,083 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 15:09:45,083 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 15:09:45,084 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 15:09:45,085 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-07 15:09:45,116 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:09:45,117 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-07 15:09:45,129 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:09:45,130 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 15:09:45,270 INFO L272 TraceCheckUtils]: 0: Hoare triple {422#true} call ULTIMATE.init(); {422#true} is VALID [2022-04-07 15:09:45,270 INFO L290 TraceCheckUtils]: 1: Hoare triple {422#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {422#true} is VALID [2022-04-07 15:09:45,270 INFO L290 TraceCheckUtils]: 2: Hoare triple {422#true} assume true; {422#true} is VALID [2022-04-07 15:09:45,270 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {422#true} {422#true} #77#return; {422#true} is VALID [2022-04-07 15:09:45,270 INFO L272 TraceCheckUtils]: 4: Hoare triple {422#true} call #t~ret7 := main(); {422#true} is VALID [2022-04-07 15:09:45,271 INFO L290 TraceCheckUtils]: 5: Hoare triple {422#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {422#true} is VALID [2022-04-07 15:09:45,271 INFO L272 TraceCheckUtils]: 6: Hoare triple {422#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {422#true} is VALID [2022-04-07 15:09:45,274 INFO L290 TraceCheckUtils]: 7: Hoare triple {422#true} ~cond := #in~cond; {422#true} is VALID [2022-04-07 15:09:45,274 INFO L290 TraceCheckUtils]: 8: Hoare triple {422#true} assume !(0 == ~cond); {422#true} is VALID [2022-04-07 15:09:45,274 INFO L290 TraceCheckUtils]: 9: Hoare triple {422#true} assume true; {422#true} is VALID [2022-04-07 15:09:45,274 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {422#true} {422#true} #69#return; {422#true} is VALID [2022-04-07 15:09:45,275 INFO L290 TraceCheckUtils]: 11: Hoare triple {422#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {460#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-07 15:09:45,276 INFO L290 TraceCheckUtils]: 12: Hoare triple {460#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {460#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-07 15:09:45,277 INFO L290 TraceCheckUtils]: 13: Hoare triple {460#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 5);havoc #t~post6; {460#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-07 15:09:45,278 INFO L272 TraceCheckUtils]: 14: Hoare triple {460#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {470#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 15:09:45,279 INFO L290 TraceCheckUtils]: 15: Hoare triple {470#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {474#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 15:09:45,279 INFO L290 TraceCheckUtils]: 16: Hoare triple {474#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {423#false} is VALID [2022-04-07 15:09:45,279 INFO L290 TraceCheckUtils]: 17: Hoare triple {423#false} assume !false; {423#false} is VALID [2022-04-07 15:09:45,280 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-07 15:09:45,280 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 15:09:45,281 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 15:09:45,283 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1404580186] [2022-04-07 15:09:45,283 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 15:09:45,283 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1970893414] [2022-04-07 15:09:45,283 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1970893414] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 15:09:45,283 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 15:09:45,283 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-07 15:09:45,283 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [532636888] [2022-04-07 15:09:45,284 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 15:09:45,284 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-07 15:09:45,285 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 15:09:45,285 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-07 15:09:45,296 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 15:09:45,297 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-07 15:09:45,297 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 15:09:45,297 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-07 15:09:45,297 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-07 15:09:45,297 INFO L87 Difference]: Start difference. First operand 29 states and 35 transitions. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-07 15:09:45,482 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:09:45,482 INFO L93 Difference]: Finished difference Result 42 states and 53 transitions. [2022-04-07 15:09:45,482 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-07 15:09:45,482 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-07 15:09:45,482 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 15:09:45,482 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-07 15:09:45,484 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 53 transitions. [2022-04-07 15:09:45,484 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-07 15:09:45,485 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 53 transitions. [2022-04-07 15:09:45,485 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 53 transitions. [2022-04-07 15:09:45,534 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 15:09:45,535 INFO L225 Difference]: With dead ends: 42 [2022-04-07 15:09:45,535 INFO L226 Difference]: Without dead ends: 40 [2022-04-07 15:09:45,535 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 14 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-07 15:09:45,536 INFO L913 BasicCegarLoop]: 24 mSDtfsCounter, 9 mSDsluCounter, 59 mSDsCounter, 0 mSdLazyCounter, 54 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 83 SdHoareTripleChecker+Invalid, 54 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 54 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-07 15:09:45,536 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [11 Valid, 83 Invalid, 54 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 54 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-07 15:09:45,537 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2022-04-07 15:09:45,546 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 34. [2022-04-07 15:09:45,546 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 15:09:45,547 INFO L82 GeneralOperation]: Start isEquivalent. First operand 40 states. Second operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-07 15:09:45,547 INFO L74 IsIncluded]: Start isIncluded. First operand 40 states. Second operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-07 15:09:45,547 INFO L87 Difference]: Start difference. First operand 40 states. Second operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-07 15:09:45,549 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:09:45,549 INFO L93 Difference]: Finished difference Result 40 states and 51 transitions. [2022-04-07 15:09:45,549 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 51 transitions. [2022-04-07 15:09:45,549 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:09:45,550 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:09:45,550 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) Second operand 40 states. [2022-04-07 15:09:45,550 INFO L87 Difference]: Start difference. First operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) Second operand 40 states. [2022-04-07 15:09:45,552 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:09:45,552 INFO L93 Difference]: Finished difference Result 40 states and 51 transitions. [2022-04-07 15:09:45,552 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 51 transitions. [2022-04-07 15:09:45,552 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:09:45,552 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:09:45,552 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 15:09:45,552 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 15:09:45,553 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-07 15:09:45,554 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 40 transitions. [2022-04-07 15:09:45,554 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 40 transitions. Word has length 18 [2022-04-07 15:09:45,554 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 15:09:45,554 INFO L478 AbstractCegarLoop]: Abstraction has 34 states and 40 transitions. [2022-04-07 15:09:45,554 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-07 15:09:45,554 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 40 transitions. [2022-04-07 15:09:45,555 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-04-07 15:09:45,555 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 15:09:45,555 INFO L499 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 15:09:45,581 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-07 15:09:45,760 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-07 15:09:45,760 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 15:09:45,761 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 15:09:45,761 INFO L85 PathProgramCache]: Analyzing trace with hash -1308579644, now seen corresponding path program 1 times [2022-04-07 15:09:45,761 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 15:09:45,761 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [669848786] [2022-04-07 15:09:45,761 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:09:45,761 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 15:09:45,772 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 15:09:45,772 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1178089042] [2022-04-07 15:09:45,772 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:09:45,773 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 15:09:45,773 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 15:09:45,776 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 15:09:45,812 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:09:45,813 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-07 15:09:45,814 INFO L263 TraceCheckSpWp]: Trace formula consists of 96 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-07 15:09:45,825 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:09:45,827 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 15:09:56,230 INFO L272 TraceCheckUtils]: 0: Hoare triple {668#true} call ULTIMATE.init(); {668#true} is VALID [2022-04-07 15:09:56,230 INFO L290 TraceCheckUtils]: 1: Hoare triple {668#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {668#true} is VALID [2022-04-07 15:09:56,230 INFO L290 TraceCheckUtils]: 2: Hoare triple {668#true} assume true; {668#true} is VALID [2022-04-07 15:09:56,230 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {668#true} {668#true} #77#return; {668#true} is VALID [2022-04-07 15:09:56,230 INFO L272 TraceCheckUtils]: 4: Hoare triple {668#true} call #t~ret7 := main(); {668#true} is VALID [2022-04-07 15:09:56,231 INFO L290 TraceCheckUtils]: 5: Hoare triple {668#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {668#true} is VALID [2022-04-07 15:09:56,231 INFO L272 TraceCheckUtils]: 6: Hoare triple {668#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {668#true} is VALID [2022-04-07 15:09:56,231 INFO L290 TraceCheckUtils]: 7: Hoare triple {668#true} ~cond := #in~cond; {694#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 15:09:56,232 INFO L290 TraceCheckUtils]: 8: Hoare triple {694#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {698#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 15:09:56,232 INFO L290 TraceCheckUtils]: 9: Hoare triple {698#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {698#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 15:09:56,233 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {698#(not (= |assume_abort_if_not_#in~cond| 0))} {668#true} #69#return; {705#(<= 1 main_~y~0)} is VALID [2022-04-07 15:09:56,233 INFO L290 TraceCheckUtils]: 11: Hoare triple {705#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {709#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is VALID [2022-04-07 15:09:56,234 INFO L290 TraceCheckUtils]: 12: Hoare triple {709#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {709#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is VALID [2022-04-07 15:09:56,234 INFO L290 TraceCheckUtils]: 13: Hoare triple {709#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} assume !!(#t~post6 < 5);havoc #t~post6; {709#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is VALID [2022-04-07 15:09:56,235 INFO L272 TraceCheckUtils]: 14: Hoare triple {709#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {668#true} is VALID [2022-04-07 15:09:56,235 INFO L290 TraceCheckUtils]: 15: Hoare triple {668#true} ~cond := #in~cond; {722#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-07 15:09:56,235 INFO L290 TraceCheckUtils]: 16: Hoare triple {722#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {726#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 15:09:56,236 INFO L290 TraceCheckUtils]: 17: Hoare triple {726#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {726#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 15:09:58,239 WARN L284 TraceCheckUtils]: 18: Hoare quadruple {726#(not (= |__VERIFIER_assert_#in~cond| 0))} {709#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} #71#return; {733#(and (or (and (= (mod (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) (* main_~b~0 main_~a~0)) 0) (not (= main_~a~0 0))) (= (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) 0)) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is UNKNOWN [2022-04-07 15:09:58,241 INFO L290 TraceCheckUtils]: 19: Hoare triple {733#(and (or (and (= (mod (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) (* main_~b~0 main_~a~0)) 0) (not (= main_~a~0 0))) (= (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) 0)) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} assume !(0 != ~a~0 && 0 != ~b~0); {737#(and (= main_~q~0 (* main_~y~0 main_~x~0)) (<= 1 main_~y~0))} is VALID [2022-04-07 15:09:58,241 INFO L272 TraceCheckUtils]: 20: Hoare triple {737#(and (= main_~q~0 (* main_~y~0 main_~x~0)) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {741#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 15:09:58,242 INFO L290 TraceCheckUtils]: 21: Hoare triple {741#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {745#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 15:09:58,243 INFO L290 TraceCheckUtils]: 22: Hoare triple {745#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {669#false} is VALID [2022-04-07 15:09:58,243 INFO L290 TraceCheckUtils]: 23: Hoare triple {669#false} assume !false; {669#false} is VALID [2022-04-07 15:09:58,243 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-07 15:09:58,243 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 15:10:12,948 INFO L290 TraceCheckUtils]: 23: Hoare triple {669#false} assume !false; {669#false} is VALID [2022-04-07 15:10:12,949 INFO L290 TraceCheckUtils]: 22: Hoare triple {745#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {669#false} is VALID [2022-04-07 15:10:12,949 INFO L290 TraceCheckUtils]: 21: Hoare triple {741#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {745#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 15:10:12,950 INFO L272 TraceCheckUtils]: 20: Hoare triple {761#(= main_~q~0 (* main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {741#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 15:10:12,951 INFO L290 TraceCheckUtils]: 19: Hoare triple {765#(or (= main_~q~0 (* main_~y~0 main_~x~0)) (and (not (= main_~b~0 0)) (not (= main_~a~0 0))))} assume !(0 != ~a~0 && 0 != ~b~0); {761#(= main_~q~0 (* main_~y~0 main_~x~0))} is VALID [2022-04-07 15:10:12,952 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {726#(not (= |__VERIFIER_assert_#in~cond| 0))} {668#true} #71#return; {765#(or (= main_~q~0 (* main_~y~0 main_~x~0)) (and (not (= main_~b~0 0)) (not (= main_~a~0 0))))} is VALID [2022-04-07 15:10:12,952 INFO L290 TraceCheckUtils]: 17: Hoare triple {726#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {726#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 15:10:12,952 INFO L290 TraceCheckUtils]: 16: Hoare triple {778#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {726#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 15:10:12,953 INFO L290 TraceCheckUtils]: 15: Hoare triple {668#true} ~cond := #in~cond; {778#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-07 15:10:12,953 INFO L272 TraceCheckUtils]: 14: Hoare triple {668#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {668#true} is VALID [2022-04-07 15:10:12,953 INFO L290 TraceCheckUtils]: 13: Hoare triple {668#true} assume !!(#t~post6 < 5);havoc #t~post6; {668#true} is VALID [2022-04-07 15:10:12,953 INFO L290 TraceCheckUtils]: 12: Hoare triple {668#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {668#true} is VALID [2022-04-07 15:10:12,953 INFO L290 TraceCheckUtils]: 11: Hoare triple {668#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {668#true} is VALID [2022-04-07 15:10:12,953 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {668#true} {668#true} #69#return; {668#true} is VALID [2022-04-07 15:10:12,954 INFO L290 TraceCheckUtils]: 9: Hoare triple {668#true} assume true; {668#true} is VALID [2022-04-07 15:10:12,954 INFO L290 TraceCheckUtils]: 8: Hoare triple {668#true} assume !(0 == ~cond); {668#true} is VALID [2022-04-07 15:10:12,954 INFO L290 TraceCheckUtils]: 7: Hoare triple {668#true} ~cond := #in~cond; {668#true} is VALID [2022-04-07 15:10:12,954 INFO L272 TraceCheckUtils]: 6: Hoare triple {668#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {668#true} is VALID [2022-04-07 15:10:12,954 INFO L290 TraceCheckUtils]: 5: Hoare triple {668#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {668#true} is VALID [2022-04-07 15:10:12,954 INFO L272 TraceCheckUtils]: 4: Hoare triple {668#true} call #t~ret7 := main(); {668#true} is VALID [2022-04-07 15:10:12,954 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {668#true} {668#true} #77#return; {668#true} is VALID [2022-04-07 15:10:12,954 INFO L290 TraceCheckUtils]: 2: Hoare triple {668#true} assume true; {668#true} is VALID [2022-04-07 15:10:12,954 INFO L290 TraceCheckUtils]: 1: Hoare triple {668#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {668#true} is VALID [2022-04-07 15:10:12,955 INFO L272 TraceCheckUtils]: 0: Hoare triple {668#true} call ULTIMATE.init(); {668#true} is VALID [2022-04-07 15:10:12,955 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-07 15:10:12,955 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 15:10:12,955 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [669848786] [2022-04-07 15:10:12,955 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 15:10:12,955 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1178089042] [2022-04-07 15:10:12,955 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1178089042] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 15:10:12,955 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 15:10:12,955 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 8] total 15 [2022-04-07 15:10:12,956 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [636605927] [2022-04-07 15:10:12,956 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 15:10:12,956 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 13 states have (on average 1.9230769230769231) internal successors, (25), 11 states have internal predecessors, (25), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) Word has length 24 [2022-04-07 15:10:12,956 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 15:10:12,957 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 13 states have (on average 1.9230769230769231) internal successors, (25), 11 states have internal predecessors, (25), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-07 15:10:14,993 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 36 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-07 15:10:14,993 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-07 15:10:14,993 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 15:10:14,994 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-07 15:10:14,994 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=39, Invalid=171, Unknown=0, NotChecked=0, Total=210 [2022-04-07 15:10:14,994 INFO L87 Difference]: Start difference. First operand 34 states and 40 transitions. Second operand has 15 states, 13 states have (on average 1.9230769230769231) internal successors, (25), 11 states have internal predecessors, (25), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-07 15:10:17,296 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:10:17,296 INFO L93 Difference]: Finished difference Result 55 states and 72 transitions. [2022-04-07 15:10:17,296 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-07 15:10:17,297 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 13 states have (on average 1.9230769230769231) internal successors, (25), 11 states have internal predecessors, (25), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) Word has length 24 [2022-04-07 15:10:17,297 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 15:10:17,297 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 13 states have (on average 1.9230769230769231) internal successors, (25), 11 states have internal predecessors, (25), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-07 15:10:17,299 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 69 transitions. [2022-04-07 15:10:17,299 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 13 states have (on average 1.9230769230769231) internal successors, (25), 11 states have internal predecessors, (25), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-07 15:10:17,301 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 69 transitions. [2022-04-07 15:10:17,301 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 69 transitions. [2022-04-07 15:10:19,368 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 68 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-07 15:10:19,369 INFO L225 Difference]: With dead ends: 55 [2022-04-07 15:10:19,369 INFO L226 Difference]: Without dead ends: 53 [2022-04-07 15:10:19,369 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 53 GetRequests, 34 SyntacticMatches, 1 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 52 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=71, Invalid=309, Unknown=0, NotChecked=0, Total=380 [2022-04-07 15:10:19,370 INFO L913 BasicCegarLoop]: 20 mSDtfsCounter, 51 mSDsluCounter, 103 mSDsCounter, 0 mSdLazyCounter, 199 mSolverCounterSat, 31 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 55 SdHoareTripleChecker+Valid, 123 SdHoareTripleChecker+Invalid, 230 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 31 IncrementalHoareTripleChecker+Valid, 199 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.0s IncrementalHoareTripleChecker+Time [2022-04-07 15:10:19,372 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [55 Valid, 123 Invalid, 230 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [31 Valid, 199 Invalid, 0 Unknown, 0 Unchecked, 1.0s Time] [2022-04-07 15:10:19,372 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 53 states. [2022-04-07 15:10:19,386 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 53 to 39. [2022-04-07 15:10:19,386 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 15:10:19,386 INFO L82 GeneralOperation]: Start isEquivalent. First operand 53 states. Second operand has 39 states, 25 states have (on average 1.24) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 15:10:19,387 INFO L74 IsIncluded]: Start isIncluded. First operand 53 states. Second operand has 39 states, 25 states have (on average 1.24) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 15:10:19,387 INFO L87 Difference]: Start difference. First operand 53 states. Second operand has 39 states, 25 states have (on average 1.24) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 15:10:19,389 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:10:19,389 INFO L93 Difference]: Finished difference Result 53 states and 70 transitions. [2022-04-07 15:10:19,389 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 70 transitions. [2022-04-07 15:10:19,390 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:10:19,390 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:10:19,390 INFO L74 IsIncluded]: Start isIncluded. First operand has 39 states, 25 states have (on average 1.24) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) Second operand 53 states. [2022-04-07 15:10:19,390 INFO L87 Difference]: Start difference. First operand has 39 states, 25 states have (on average 1.24) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) Second operand 53 states. [2022-04-07 15:10:19,392 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:10:19,392 INFO L93 Difference]: Finished difference Result 53 states and 70 transitions. [2022-04-07 15:10:19,392 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 70 transitions. [2022-04-07 15:10:19,393 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:10:19,393 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:10:19,393 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 15:10:19,393 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 15:10:19,393 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 39 states, 25 states have (on average 1.24) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 15:10:19,394 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 39 states to 39 states and 45 transitions. [2022-04-07 15:10:19,394 INFO L78 Accepts]: Start accepts. Automaton has 39 states and 45 transitions. Word has length 24 [2022-04-07 15:10:19,394 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 15:10:19,395 INFO L478 AbstractCegarLoop]: Abstraction has 39 states and 45 transitions. [2022-04-07 15:10:19,395 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 13 states have (on average 1.9230769230769231) internal successors, (25), 11 states have internal predecessors, (25), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-07 15:10:19,395 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 45 transitions. [2022-04-07 15:10:19,395 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-04-07 15:10:19,395 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 15:10:19,395 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 15:10:19,415 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Ended with exit code 0 [2022-04-07 15:10:19,612 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 15:10:19,613 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 15:10:19,613 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 15:10:19,613 INFO L85 PathProgramCache]: Analyzing trace with hash 1797927234, now seen corresponding path program 1 times [2022-04-07 15:10:19,613 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 15:10:19,614 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1666444591] [2022-04-07 15:10:19,614 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:10:19,614 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 15:10:19,625 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 15:10:19,625 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1000810665] [2022-04-07 15:10:19,625 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:10:19,626 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 15:10:19,626 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 15:10:19,629 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 15:10:19,630 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-07 15:10:19,664 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:10:19,665 INFO L263 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-07 15:10:19,679 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:10:19,680 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 15:10:19,823 INFO L272 TraceCheckUtils]: 0: Hoare triple {1077#true} call ULTIMATE.init(); {1077#true} is VALID [2022-04-07 15:10:19,823 INFO L290 TraceCheckUtils]: 1: Hoare triple {1077#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1085#(<= ~counter~0 0)} is VALID [2022-04-07 15:10:19,824 INFO L290 TraceCheckUtils]: 2: Hoare triple {1085#(<= ~counter~0 0)} assume true; {1085#(<= ~counter~0 0)} is VALID [2022-04-07 15:10:19,824 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1085#(<= ~counter~0 0)} {1077#true} #77#return; {1085#(<= ~counter~0 0)} is VALID [2022-04-07 15:10:19,825 INFO L272 TraceCheckUtils]: 4: Hoare triple {1085#(<= ~counter~0 0)} call #t~ret7 := main(); {1085#(<= ~counter~0 0)} is VALID [2022-04-07 15:10:19,825 INFO L290 TraceCheckUtils]: 5: Hoare triple {1085#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1085#(<= ~counter~0 0)} is VALID [2022-04-07 15:10:19,825 INFO L272 TraceCheckUtils]: 6: Hoare triple {1085#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1085#(<= ~counter~0 0)} is VALID [2022-04-07 15:10:19,826 INFO L290 TraceCheckUtils]: 7: Hoare triple {1085#(<= ~counter~0 0)} ~cond := #in~cond; {1085#(<= ~counter~0 0)} is VALID [2022-04-07 15:10:19,826 INFO L290 TraceCheckUtils]: 8: Hoare triple {1085#(<= ~counter~0 0)} assume !(0 == ~cond); {1085#(<= ~counter~0 0)} is VALID [2022-04-07 15:10:19,826 INFO L290 TraceCheckUtils]: 9: Hoare triple {1085#(<= ~counter~0 0)} assume true; {1085#(<= ~counter~0 0)} is VALID [2022-04-07 15:10:19,827 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1085#(<= ~counter~0 0)} {1085#(<= ~counter~0 0)} #69#return; {1085#(<= ~counter~0 0)} is VALID [2022-04-07 15:10:19,827 INFO L290 TraceCheckUtils]: 11: Hoare triple {1085#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {1085#(<= ~counter~0 0)} is VALID [2022-04-07 15:10:19,828 INFO L290 TraceCheckUtils]: 12: Hoare triple {1085#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1119#(<= ~counter~0 1)} is VALID [2022-04-07 15:10:19,828 INFO L290 TraceCheckUtils]: 13: Hoare triple {1119#(<= ~counter~0 1)} assume !!(#t~post6 < 5);havoc #t~post6; {1119#(<= ~counter~0 1)} is VALID [2022-04-07 15:10:19,829 INFO L272 TraceCheckUtils]: 14: Hoare triple {1119#(<= ~counter~0 1)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1119#(<= ~counter~0 1)} is VALID [2022-04-07 15:10:19,830 INFO L290 TraceCheckUtils]: 15: Hoare triple {1119#(<= ~counter~0 1)} ~cond := #in~cond; {1119#(<= ~counter~0 1)} is VALID [2022-04-07 15:10:19,830 INFO L290 TraceCheckUtils]: 16: Hoare triple {1119#(<= ~counter~0 1)} assume !(0 == ~cond); {1119#(<= ~counter~0 1)} is VALID [2022-04-07 15:10:19,830 INFO L290 TraceCheckUtils]: 17: Hoare triple {1119#(<= ~counter~0 1)} assume true; {1119#(<= ~counter~0 1)} is VALID [2022-04-07 15:10:19,831 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1119#(<= ~counter~0 1)} {1119#(<= ~counter~0 1)} #71#return; {1119#(<= ~counter~0 1)} is VALID [2022-04-07 15:10:19,831 INFO L290 TraceCheckUtils]: 19: Hoare triple {1119#(<= ~counter~0 1)} assume !!(0 != ~a~0 && 0 != ~b~0); {1119#(<= ~counter~0 1)} is VALID [2022-04-07 15:10:19,832 INFO L290 TraceCheckUtils]: 20: Hoare triple {1119#(<= ~counter~0 1)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {1119#(<= ~counter~0 1)} is VALID [2022-04-07 15:10:19,832 INFO L290 TraceCheckUtils]: 21: Hoare triple {1119#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1147#(<= |main_#t~post6| 1)} is VALID [2022-04-07 15:10:19,833 INFO L290 TraceCheckUtils]: 22: Hoare triple {1147#(<= |main_#t~post6| 1)} assume !(#t~post6 < 5);havoc #t~post6; {1078#false} is VALID [2022-04-07 15:10:19,833 INFO L272 TraceCheckUtils]: 23: Hoare triple {1078#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {1078#false} is VALID [2022-04-07 15:10:19,833 INFO L290 TraceCheckUtils]: 24: Hoare triple {1078#false} ~cond := #in~cond; {1078#false} is VALID [2022-04-07 15:10:19,833 INFO L290 TraceCheckUtils]: 25: Hoare triple {1078#false} assume 0 == ~cond; {1078#false} is VALID [2022-04-07 15:10:19,833 INFO L290 TraceCheckUtils]: 26: Hoare triple {1078#false} assume !false; {1078#false} is VALID [2022-04-07 15:10:19,833 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-07 15:10:19,833 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 15:10:19,977 INFO L290 TraceCheckUtils]: 26: Hoare triple {1078#false} assume !false; {1078#false} is VALID [2022-04-07 15:10:19,977 INFO L290 TraceCheckUtils]: 25: Hoare triple {1078#false} assume 0 == ~cond; {1078#false} is VALID [2022-04-07 15:10:19,977 INFO L290 TraceCheckUtils]: 24: Hoare triple {1078#false} ~cond := #in~cond; {1078#false} is VALID [2022-04-07 15:10:19,977 INFO L272 TraceCheckUtils]: 23: Hoare triple {1078#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {1078#false} is VALID [2022-04-07 15:10:19,978 INFO L290 TraceCheckUtils]: 22: Hoare triple {1175#(< |main_#t~post6| 5)} assume !(#t~post6 < 5);havoc #t~post6; {1078#false} is VALID [2022-04-07 15:10:19,978 INFO L290 TraceCheckUtils]: 21: Hoare triple {1179#(< ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1175#(< |main_#t~post6| 5)} is VALID [2022-04-07 15:10:19,979 INFO L290 TraceCheckUtils]: 20: Hoare triple {1179#(< ~counter~0 5)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {1179#(< ~counter~0 5)} is VALID [2022-04-07 15:10:19,979 INFO L290 TraceCheckUtils]: 19: Hoare triple {1179#(< ~counter~0 5)} assume !!(0 != ~a~0 && 0 != ~b~0); {1179#(< ~counter~0 5)} is VALID [2022-04-07 15:10:19,980 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1077#true} {1179#(< ~counter~0 5)} #71#return; {1179#(< ~counter~0 5)} is VALID [2022-04-07 15:10:19,980 INFO L290 TraceCheckUtils]: 17: Hoare triple {1077#true} assume true; {1077#true} is VALID [2022-04-07 15:10:19,980 INFO L290 TraceCheckUtils]: 16: Hoare triple {1077#true} assume !(0 == ~cond); {1077#true} is VALID [2022-04-07 15:10:19,980 INFO L290 TraceCheckUtils]: 15: Hoare triple {1077#true} ~cond := #in~cond; {1077#true} is VALID [2022-04-07 15:10:19,980 INFO L272 TraceCheckUtils]: 14: Hoare triple {1179#(< ~counter~0 5)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1077#true} is VALID [2022-04-07 15:10:19,980 INFO L290 TraceCheckUtils]: 13: Hoare triple {1179#(< ~counter~0 5)} assume !!(#t~post6 < 5);havoc #t~post6; {1179#(< ~counter~0 5)} is VALID [2022-04-07 15:10:19,981 INFO L290 TraceCheckUtils]: 12: Hoare triple {1207#(< ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1179#(< ~counter~0 5)} is VALID [2022-04-07 15:10:19,981 INFO L290 TraceCheckUtils]: 11: Hoare triple {1207#(< ~counter~0 4)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {1207#(< ~counter~0 4)} is VALID [2022-04-07 15:10:19,982 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1077#true} {1207#(< ~counter~0 4)} #69#return; {1207#(< ~counter~0 4)} is VALID [2022-04-07 15:10:19,982 INFO L290 TraceCheckUtils]: 9: Hoare triple {1077#true} assume true; {1077#true} is VALID [2022-04-07 15:10:19,982 INFO L290 TraceCheckUtils]: 8: Hoare triple {1077#true} assume !(0 == ~cond); {1077#true} is VALID [2022-04-07 15:10:19,982 INFO L290 TraceCheckUtils]: 7: Hoare triple {1077#true} ~cond := #in~cond; {1077#true} is VALID [2022-04-07 15:10:19,982 INFO L272 TraceCheckUtils]: 6: Hoare triple {1207#(< ~counter~0 4)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1077#true} is VALID [2022-04-07 15:10:19,982 INFO L290 TraceCheckUtils]: 5: Hoare triple {1207#(< ~counter~0 4)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1207#(< ~counter~0 4)} is VALID [2022-04-07 15:10:19,983 INFO L272 TraceCheckUtils]: 4: Hoare triple {1207#(< ~counter~0 4)} call #t~ret7 := main(); {1207#(< ~counter~0 4)} is VALID [2022-04-07 15:10:19,983 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1207#(< ~counter~0 4)} {1077#true} #77#return; {1207#(< ~counter~0 4)} is VALID [2022-04-07 15:10:19,984 INFO L290 TraceCheckUtils]: 2: Hoare triple {1207#(< ~counter~0 4)} assume true; {1207#(< ~counter~0 4)} is VALID [2022-04-07 15:10:19,984 INFO L290 TraceCheckUtils]: 1: Hoare triple {1077#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1207#(< ~counter~0 4)} is VALID [2022-04-07 15:10:19,984 INFO L272 TraceCheckUtils]: 0: Hoare triple {1077#true} call ULTIMATE.init(); {1077#true} is VALID [2022-04-07 15:10:19,984 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-07 15:10:19,985 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 15:10:19,985 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1666444591] [2022-04-07 15:10:19,985 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 15:10:19,985 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1000810665] [2022-04-07 15:10:19,985 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1000810665] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 15:10:19,985 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 15:10:19,985 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-07 15:10:19,985 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [283607690] [2022-04-07 15:10:19,985 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 15:10:19,986 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) Word has length 27 [2022-04-07 15:10:19,986 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 15:10:19,986 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-07 15:10:20,023 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 15:10:20,023 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-07 15:10:20,023 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 15:10:20,024 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-07 15:10:20,024 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-07 15:10:20,024 INFO L87 Difference]: Start difference. First operand 39 states and 45 transitions. Second operand has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-07 15:10:20,268 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:10:20,268 INFO L93 Difference]: Finished difference Result 103 states and 123 transitions. [2022-04-07 15:10:20,268 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-07 15:10:20,268 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) Word has length 27 [2022-04-07 15:10:20,270 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 15:10:20,270 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-07 15:10:20,275 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 106 transitions. [2022-04-07 15:10:20,275 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-07 15:10:20,281 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 106 transitions. [2022-04-07 15:10:20,281 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 106 transitions. [2022-04-07 15:10:20,354 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 106 edges. 106 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 15:10:20,357 INFO L225 Difference]: With dead ends: 103 [2022-04-07 15:10:20,358 INFO L226 Difference]: Without dead ends: 93 [2022-04-07 15:10:20,358 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 56 GetRequests, 47 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=40, Invalid=70, Unknown=0, NotChecked=0, Total=110 [2022-04-07 15:10:20,359 INFO L913 BasicCegarLoop]: 39 mSDtfsCounter, 55 mSDsluCounter, 143 mSDsCounter, 0 mSdLazyCounter, 33 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 55 SdHoareTripleChecker+Valid, 182 SdHoareTripleChecker+Invalid, 44 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 33 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 15:10:20,359 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [55 Valid, 182 Invalid, 44 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 33 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 15:10:20,360 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 93 states. [2022-04-07 15:10:20,398 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 93 to 87. [2022-04-07 15:10:20,399 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 15:10:20,399 INFO L82 GeneralOperation]: Start isEquivalent. First operand 93 states. Second operand has 87 states, 60 states have (on average 1.3333333333333333) internal successors, (80), 64 states have internal predecessors, (80), 16 states have call successors, (16), 12 states have call predecessors, (16), 10 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-07 15:10:20,400 INFO L74 IsIncluded]: Start isIncluded. First operand 93 states. Second operand has 87 states, 60 states have (on average 1.3333333333333333) internal successors, (80), 64 states have internal predecessors, (80), 16 states have call successors, (16), 12 states have call predecessors, (16), 10 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-07 15:10:20,401 INFO L87 Difference]: Start difference. First operand 93 states. Second operand has 87 states, 60 states have (on average 1.3333333333333333) internal successors, (80), 64 states have internal predecessors, (80), 16 states have call successors, (16), 12 states have call predecessors, (16), 10 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-07 15:10:20,406 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:10:20,406 INFO L93 Difference]: Finished difference Result 93 states and 110 transitions. [2022-04-07 15:10:20,406 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 110 transitions. [2022-04-07 15:10:20,408 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:10:20,408 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:10:20,409 INFO L74 IsIncluded]: Start isIncluded. First operand has 87 states, 60 states have (on average 1.3333333333333333) internal successors, (80), 64 states have internal predecessors, (80), 16 states have call successors, (16), 12 states have call predecessors, (16), 10 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) Second operand 93 states. [2022-04-07 15:10:20,409 INFO L87 Difference]: Start difference. First operand has 87 states, 60 states have (on average 1.3333333333333333) internal successors, (80), 64 states have internal predecessors, (80), 16 states have call successors, (16), 12 states have call predecessors, (16), 10 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) Second operand 93 states. [2022-04-07 15:10:20,413 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:10:20,413 INFO L93 Difference]: Finished difference Result 93 states and 110 transitions. [2022-04-07 15:10:20,413 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 110 transitions. [2022-04-07 15:10:20,414 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:10:20,414 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:10:20,414 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 15:10:20,414 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 15:10:20,414 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 87 states, 60 states have (on average 1.3333333333333333) internal successors, (80), 64 states have internal predecessors, (80), 16 states have call successors, (16), 12 states have call predecessors, (16), 10 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-07 15:10:20,416 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 87 states to 87 states and 107 transitions. [2022-04-07 15:10:20,417 INFO L78 Accepts]: Start accepts. Automaton has 87 states and 107 transitions. Word has length 27 [2022-04-07 15:10:20,417 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 15:10:20,417 INFO L478 AbstractCegarLoop]: Abstraction has 87 states and 107 transitions. [2022-04-07 15:10:20,417 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-07 15:10:20,417 INFO L276 IsEmpty]: Start isEmpty. Operand 87 states and 107 transitions. [2022-04-07 15:10:20,417 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-04-07 15:10:20,417 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 15:10:20,418 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 15:10:20,435 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-07 15:10:20,623 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 15:10:20,624 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 15:10:20,624 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 15:10:20,624 INFO L85 PathProgramCache]: Analyzing trace with hash 1799714694, now seen corresponding path program 1 times [2022-04-07 15:10:20,624 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 15:10:20,624 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [492284906] [2022-04-07 15:10:20,624 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:10:20,625 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 15:10:20,644 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 15:10:20,644 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [881259288] [2022-04-07 15:10:20,644 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:10:20,644 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 15:10:20,645 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 15:10:20,645 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 15:10:20,651 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-07 15:10:20,687 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:10:20,691 INFO L263 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 34 conjunts are in the unsatisfiable core [2022-04-07 15:10:20,702 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:10:20,703 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 15:10:25,501 INFO L272 TraceCheckUtils]: 0: Hoare triple {1697#true} call ULTIMATE.init(); {1697#true} is VALID [2022-04-07 15:10:25,501 INFO L290 TraceCheckUtils]: 1: Hoare triple {1697#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1697#true} is VALID [2022-04-07 15:10:25,501 INFO L290 TraceCheckUtils]: 2: Hoare triple {1697#true} assume true; {1697#true} is VALID [2022-04-07 15:10:25,501 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1697#true} {1697#true} #77#return; {1697#true} is VALID [2022-04-07 15:10:25,501 INFO L272 TraceCheckUtils]: 4: Hoare triple {1697#true} call #t~ret7 := main(); {1697#true} is VALID [2022-04-07 15:10:25,501 INFO L290 TraceCheckUtils]: 5: Hoare triple {1697#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1697#true} is VALID [2022-04-07 15:10:25,502 INFO L272 TraceCheckUtils]: 6: Hoare triple {1697#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1697#true} is VALID [2022-04-07 15:10:25,502 INFO L290 TraceCheckUtils]: 7: Hoare triple {1697#true} ~cond := #in~cond; {1723#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 15:10:25,502 INFO L290 TraceCheckUtils]: 8: Hoare triple {1723#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1727#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 15:10:25,503 INFO L290 TraceCheckUtils]: 9: Hoare triple {1727#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1727#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 15:10:25,503 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1727#(not (= |assume_abort_if_not_#in~cond| 0))} {1697#true} #69#return; {1734#(<= 1 main_~y~0)} is VALID [2022-04-07 15:10:25,503 INFO L290 TraceCheckUtils]: 11: Hoare triple {1734#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {1738#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-07 15:10:25,504 INFO L290 TraceCheckUtils]: 12: Hoare triple {1738#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1738#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-07 15:10:25,504 INFO L290 TraceCheckUtils]: 13: Hoare triple {1738#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 5);havoc #t~post6; {1738#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-07 15:10:25,504 INFO L272 TraceCheckUtils]: 14: Hoare triple {1738#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1697#true} is VALID [2022-04-07 15:10:25,505 INFO L290 TraceCheckUtils]: 15: Hoare triple {1697#true} ~cond := #in~cond; {1751#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-07 15:10:25,505 INFO L290 TraceCheckUtils]: 16: Hoare triple {1751#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {1755#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 15:10:25,505 INFO L290 TraceCheckUtils]: 17: Hoare triple {1755#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1755#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 15:10:25,506 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1755#(not (= |__VERIFIER_assert_#in~cond| 0))} {1738#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #71#return; {1738#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-07 15:10:25,506 INFO L290 TraceCheckUtils]: 19: Hoare triple {1738#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~a~0 && 0 != ~b~0); {1738#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-07 15:10:25,512 INFO L290 TraceCheckUtils]: 20: Hoare triple {1738#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {1768#(and (= (div main_~y~0 2) main_~b~0) (<= (mod main_~y~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (<= 1 main_~y~0) (= (mod main_~x~0 2) 0))} is VALID [2022-04-07 15:10:25,512 INFO L290 TraceCheckUtils]: 21: Hoare triple {1768#(and (= (div main_~y~0 2) main_~b~0) (<= (mod main_~y~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (<= 1 main_~y~0) (= (mod main_~x~0 2) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1768#(and (= (div main_~y~0 2) main_~b~0) (<= (mod main_~y~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (<= 1 main_~y~0) (= (mod main_~x~0 2) 0))} is VALID [2022-04-07 15:10:25,513 INFO L290 TraceCheckUtils]: 22: Hoare triple {1768#(and (= (div main_~y~0 2) main_~b~0) (<= (mod main_~y~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (<= 1 main_~y~0) (= (mod main_~x~0 2) 0))} assume !!(#t~post6 < 5);havoc #t~post6; {1768#(and (= (div main_~y~0 2) main_~b~0) (<= (mod main_~y~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (<= 1 main_~y~0) (= (mod main_~x~0 2) 0))} is VALID [2022-04-07 15:10:25,515 INFO L272 TraceCheckUtils]: 23: Hoare triple {1768#(and (= (div main_~y~0 2) main_~b~0) (<= (mod main_~y~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (<= 1 main_~y~0) (= (mod main_~x~0 2) 0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1778#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 15:10:25,518 INFO L290 TraceCheckUtils]: 24: Hoare triple {1778#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1782#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 15:10:25,519 INFO L290 TraceCheckUtils]: 25: Hoare triple {1782#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1698#false} is VALID [2022-04-07 15:10:25,519 INFO L290 TraceCheckUtils]: 26: Hoare triple {1698#false} assume !false; {1698#false} is VALID [2022-04-07 15:10:25,519 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 1 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-07 15:10:25,519 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 15:11:46,119 INFO L290 TraceCheckUtils]: 26: Hoare triple {1698#false} assume !false; {1698#false} is VALID [2022-04-07 15:11:46,120 INFO L290 TraceCheckUtils]: 25: Hoare triple {1782#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1698#false} is VALID [2022-04-07 15:11:46,120 INFO L290 TraceCheckUtils]: 24: Hoare triple {1778#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1782#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 15:11:46,121 INFO L272 TraceCheckUtils]: 23: Hoare triple {1798#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1778#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 15:11:46,122 INFO L290 TraceCheckUtils]: 22: Hoare triple {1798#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} assume !!(#t~post6 < 5);havoc #t~post6; {1798#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-07 15:11:46,122 INFO L290 TraceCheckUtils]: 21: Hoare triple {1798#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1798#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-07 15:11:46,126 INFO L290 TraceCheckUtils]: 20: Hoare triple {1808#(or (and (or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0))) (or (= (mod main_~b~0 2) 0) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))) (not (= (mod main_~a~0 2) 0)) (and (not (< main_~b~0 0)) (not (<= (mod main_~b~0 2) 0))))} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {1798#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-07 15:11:46,127 INFO L290 TraceCheckUtils]: 19: Hoare triple {1808#(or (and (or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0))) (or (= (mod main_~b~0 2) 0) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))) (not (= (mod main_~a~0 2) 0)) (and (not (< main_~b~0 0)) (not (<= (mod main_~b~0 2) 0))))} assume !!(0 != ~a~0 && 0 != ~b~0); {1808#(or (and (or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0))) (or (= (mod main_~b~0 2) 0) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))) (not (= (mod main_~a~0 2) 0)) (and (not (< main_~b~0 0)) (not (<= (mod main_~b~0 2) 0))))} is VALID [2022-04-07 15:11:46,136 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1755#(not (= |__VERIFIER_assert_#in~cond| 0))} {1815#(or (not (= (mod main_~a~0 2) 0)) (= (mod main_~b~0 2) 0) (not (< main_~b~0 0)) (not (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))} #71#return; {1808#(or (and (or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0))) (or (= (mod main_~b~0 2) 0) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))) (not (= (mod main_~a~0 2) 0)) (and (not (< main_~b~0 0)) (not (<= (mod main_~b~0 2) 0))))} is VALID [2022-04-07 15:11:46,136 INFO L290 TraceCheckUtils]: 17: Hoare triple {1755#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1755#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 15:11:46,136 INFO L290 TraceCheckUtils]: 16: Hoare triple {1825#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {1755#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 15:11:46,137 INFO L290 TraceCheckUtils]: 15: Hoare triple {1697#true} ~cond := #in~cond; {1825#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-07 15:11:46,137 INFO L272 TraceCheckUtils]: 14: Hoare triple {1815#(or (not (= (mod main_~a~0 2) 0)) (= (mod main_~b~0 2) 0) (not (< main_~b~0 0)) (not (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1697#true} is VALID [2022-04-07 15:11:46,138 INFO L290 TraceCheckUtils]: 13: Hoare triple {1815#(or (not (= (mod main_~a~0 2) 0)) (= (mod main_~b~0 2) 0) (not (< main_~b~0 0)) (not (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))} assume !!(#t~post6 < 5);havoc #t~post6; {1815#(or (not (= (mod main_~a~0 2) 0)) (= (mod main_~b~0 2) 0) (not (< main_~b~0 0)) (not (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))} is VALID [2022-04-07 15:11:46,138 INFO L290 TraceCheckUtils]: 12: Hoare triple {1815#(or (not (= (mod main_~a~0 2) 0)) (= (mod main_~b~0 2) 0) (not (< main_~b~0 0)) (not (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1815#(or (not (= (mod main_~a~0 2) 0)) (= (mod main_~b~0 2) 0) (not (< main_~b~0 0)) (not (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))} is VALID [2022-04-07 15:11:46,139 INFO L290 TraceCheckUtils]: 11: Hoare triple {1838#(or (<= 0 main_~y~0) (= (mod main_~y~0 2) 0) (= (+ (* (div main_~x~0 2) 4) (* (* (div main_~x~0 2) (div main_~y~0 2)) 4)) (* main_~y~0 main_~x~0)) (not (= (mod main_~x~0 2) 0)))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {1815#(or (not (= (mod main_~a~0 2) 0)) (= (mod main_~b~0 2) 0) (not (< main_~b~0 0)) (not (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))} is VALID [2022-04-07 15:11:46,140 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1727#(not (= |assume_abort_if_not_#in~cond| 0))} {1697#true} #69#return; {1838#(or (<= 0 main_~y~0) (= (mod main_~y~0 2) 0) (= (+ (* (div main_~x~0 2) 4) (* (* (div main_~x~0 2) (div main_~y~0 2)) 4)) (* main_~y~0 main_~x~0)) (not (= (mod main_~x~0 2) 0)))} is VALID [2022-04-07 15:11:46,140 INFO L290 TraceCheckUtils]: 9: Hoare triple {1727#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1727#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 15:11:46,141 INFO L290 TraceCheckUtils]: 8: Hoare triple {1851#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {1727#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 15:11:46,141 INFO L290 TraceCheckUtils]: 7: Hoare triple {1697#true} ~cond := #in~cond; {1851#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-07 15:11:46,141 INFO L272 TraceCheckUtils]: 6: Hoare triple {1697#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1697#true} is VALID [2022-04-07 15:11:46,141 INFO L290 TraceCheckUtils]: 5: Hoare triple {1697#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1697#true} is VALID [2022-04-07 15:11:46,141 INFO L272 TraceCheckUtils]: 4: Hoare triple {1697#true} call #t~ret7 := main(); {1697#true} is VALID [2022-04-07 15:11:46,141 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1697#true} {1697#true} #77#return; {1697#true} is VALID [2022-04-07 15:11:46,141 INFO L290 TraceCheckUtils]: 2: Hoare triple {1697#true} assume true; {1697#true} is VALID [2022-04-07 15:11:46,142 INFO L290 TraceCheckUtils]: 1: Hoare triple {1697#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1697#true} is VALID [2022-04-07 15:11:46,142 INFO L272 TraceCheckUtils]: 0: Hoare triple {1697#true} call ULTIMATE.init(); {1697#true} is VALID [2022-04-07 15:11:46,142 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 1 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-07 15:11:46,142 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 15:11:46,142 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [492284906] [2022-04-07 15:11:46,142 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 15:11:46,142 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [881259288] [2022-04-07 15:11:46,142 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [881259288] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 15:11:46,142 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 15:11:46,142 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 12] total 17 [2022-04-07 15:11:46,143 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1649935115] [2022-04-07 15:11:46,143 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 15:11:46,143 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 1.7647058823529411) internal successors, (30), 14 states have internal predecessors, (30), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) Word has length 27 [2022-04-07 15:11:46,143 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 15:11:46,143 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 17 states, 17 states have (on average 1.7647058823529411) internal successors, (30), 14 states have internal predecessors, (30), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-07 15:11:46,193 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 15:11:46,193 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-07 15:11:46,193 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 15:11:46,194 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-07 15:11:46,194 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=49, Invalid=223, Unknown=0, NotChecked=0, Total=272 [2022-04-07 15:11:46,194 INFO L87 Difference]: Start difference. First operand 87 states and 107 transitions. Second operand has 17 states, 17 states have (on average 1.7647058823529411) internal successors, (30), 14 states have internal predecessors, (30), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-07 15:11:49,585 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:11:49,586 INFO L93 Difference]: Finished difference Result 127 states and 164 transitions. [2022-04-07 15:11:49,586 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-07 15:11:49,586 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 1.7647058823529411) internal successors, (30), 14 states have internal predecessors, (30), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) Word has length 27 [2022-04-07 15:11:49,586 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 15:11:49,586 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 1.7647058823529411) internal successors, (30), 14 states have internal predecessors, (30), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-07 15:11:49,587 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 83 transitions. [2022-04-07 15:11:49,587 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 1.7647058823529411) internal successors, (30), 14 states have internal predecessors, (30), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-07 15:11:49,589 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 83 transitions. [2022-04-07 15:11:49,589 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 83 transitions. [2022-04-07 15:11:49,768 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 83 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 15:11:49,770 INFO L225 Difference]: With dead ends: 127 [2022-04-07 15:11:49,770 INFO L226 Difference]: Without dead ends: 121 [2022-04-07 15:11:49,771 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 58 GetRequests, 37 SyntacticMatches, 1 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 60 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=84, Invalid=378, Unknown=0, NotChecked=0, Total=462 [2022-04-07 15:11:49,771 INFO L913 BasicCegarLoop]: 23 mSDtfsCounter, 99 mSDsluCounter, 121 mSDsCounter, 0 mSdLazyCounter, 281 mSolverCounterSat, 89 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 102 SdHoareTripleChecker+Valid, 144 SdHoareTripleChecker+Invalid, 370 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 89 IncrementalHoareTripleChecker+Valid, 281 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.8s IncrementalHoareTripleChecker+Time [2022-04-07 15:11:49,771 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [102 Valid, 144 Invalid, 370 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [89 Valid, 281 Invalid, 0 Unknown, 0 Unchecked, 1.8s Time] [2022-04-07 15:11:49,772 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 121 states. [2022-04-07 15:11:49,826 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 121 to 79. [2022-04-07 15:11:49,827 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 15:11:49,827 INFO L82 GeneralOperation]: Start isEquivalent. First operand 121 states. Second operand has 79 states, 57 states have (on average 1.3157894736842106) internal successors, (75), 59 states have internal predecessors, (75), 12 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-07 15:11:49,827 INFO L74 IsIncluded]: Start isIncluded. First operand 121 states. Second operand has 79 states, 57 states have (on average 1.3157894736842106) internal successors, (75), 59 states have internal predecessors, (75), 12 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-07 15:11:49,827 INFO L87 Difference]: Start difference. First operand 121 states. Second operand has 79 states, 57 states have (on average 1.3157894736842106) internal successors, (75), 59 states have internal predecessors, (75), 12 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-07 15:11:49,831 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:11:49,831 INFO L93 Difference]: Finished difference Result 121 states and 156 transitions. [2022-04-07 15:11:49,831 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 156 transitions. [2022-04-07 15:11:49,831 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:11:49,831 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:11:49,831 INFO L74 IsIncluded]: Start isIncluded. First operand has 79 states, 57 states have (on average 1.3157894736842106) internal successors, (75), 59 states have internal predecessors, (75), 12 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Second operand 121 states. [2022-04-07 15:11:49,832 INFO L87 Difference]: Start difference. First operand has 79 states, 57 states have (on average 1.3157894736842106) internal successors, (75), 59 states have internal predecessors, (75), 12 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Second operand 121 states. [2022-04-07 15:11:49,835 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:11:49,835 INFO L93 Difference]: Finished difference Result 121 states and 156 transitions. [2022-04-07 15:11:49,835 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 156 transitions. [2022-04-07 15:11:49,835 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:11:49,835 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:11:49,835 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 15:11:49,835 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 15:11:49,836 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 79 states, 57 states have (on average 1.3157894736842106) internal successors, (75), 59 states have internal predecessors, (75), 12 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-07 15:11:49,837 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 79 states to 79 states and 96 transitions. [2022-04-07 15:11:49,837 INFO L78 Accepts]: Start accepts. Automaton has 79 states and 96 transitions. Word has length 27 [2022-04-07 15:11:49,838 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 15:11:49,838 INFO L478 AbstractCegarLoop]: Abstraction has 79 states and 96 transitions. [2022-04-07 15:11:49,838 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 17 states have (on average 1.7647058823529411) internal successors, (30), 14 states have internal predecessors, (30), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-07 15:11:49,838 INFO L276 IsEmpty]: Start isEmpty. Operand 79 states and 96 transitions. [2022-04-07 15:11:49,838 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-07 15:11:49,838 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 15:11:49,838 INFO L499 BasicCegarLoop]: trace histogram [3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 15:11:49,865 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-07 15:11:50,055 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 15:11:50,055 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 15:11:50,056 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 15:11:50,056 INFO L85 PathProgramCache]: Analyzing trace with hash -1613968938, now seen corresponding path program 1 times [2022-04-07 15:11:50,056 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 15:11:50,056 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1610047686] [2022-04-07 15:11:50,056 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:11:50,056 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 15:11:50,065 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 15:11:50,065 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [235202348] [2022-04-07 15:11:50,065 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:11:50,065 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 15:11:50,065 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 15:11:50,071 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 15:11:50,072 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-07 15:11:50,103 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:11:50,104 INFO L263 TraceCheckSpWp]: Trace formula consists of 105 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-07 15:11:50,111 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:11:50,112 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 15:11:50,233 INFO L272 TraceCheckUtils]: 0: Hoare triple {2407#true} call ULTIMATE.init(); {2407#true} is VALID [2022-04-07 15:11:50,234 INFO L290 TraceCheckUtils]: 1: Hoare triple {2407#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2407#true} is VALID [2022-04-07 15:11:50,234 INFO L290 TraceCheckUtils]: 2: Hoare triple {2407#true} assume true; {2407#true} is VALID [2022-04-07 15:11:50,234 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2407#true} {2407#true} #77#return; {2407#true} is VALID [2022-04-07 15:11:50,234 INFO L272 TraceCheckUtils]: 4: Hoare triple {2407#true} call #t~ret7 := main(); {2407#true} is VALID [2022-04-07 15:11:50,234 INFO L290 TraceCheckUtils]: 5: Hoare triple {2407#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2407#true} is VALID [2022-04-07 15:11:50,234 INFO L272 TraceCheckUtils]: 6: Hoare triple {2407#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2407#true} is VALID [2022-04-07 15:11:50,234 INFO L290 TraceCheckUtils]: 7: Hoare triple {2407#true} ~cond := #in~cond; {2433#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 15:11:50,235 INFO L290 TraceCheckUtils]: 8: Hoare triple {2433#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2437#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 15:11:50,235 INFO L290 TraceCheckUtils]: 9: Hoare triple {2437#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2437#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 15:11:50,236 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2437#(not (= |assume_abort_if_not_#in~cond| 0))} {2407#true} #69#return; {2444#(<= 1 main_~y~0)} is VALID [2022-04-07 15:11:50,236 INFO L290 TraceCheckUtils]: 11: Hoare triple {2444#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {2448#(<= 1 main_~b~0)} is VALID [2022-04-07 15:11:50,236 INFO L290 TraceCheckUtils]: 12: Hoare triple {2448#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2448#(<= 1 main_~b~0)} is VALID [2022-04-07 15:11:50,237 INFO L290 TraceCheckUtils]: 13: Hoare triple {2448#(<= 1 main_~b~0)} assume !!(#t~post6 < 5);havoc #t~post6; {2448#(<= 1 main_~b~0)} is VALID [2022-04-07 15:11:50,237 INFO L272 TraceCheckUtils]: 14: Hoare triple {2448#(<= 1 main_~b~0)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {2407#true} is VALID [2022-04-07 15:11:50,237 INFO L290 TraceCheckUtils]: 15: Hoare triple {2407#true} ~cond := #in~cond; {2407#true} is VALID [2022-04-07 15:11:50,237 INFO L290 TraceCheckUtils]: 16: Hoare triple {2407#true} assume !(0 == ~cond); {2407#true} is VALID [2022-04-07 15:11:50,237 INFO L290 TraceCheckUtils]: 17: Hoare triple {2407#true} assume true; {2407#true} is VALID [2022-04-07 15:11:50,238 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2407#true} {2448#(<= 1 main_~b~0)} #71#return; {2448#(<= 1 main_~b~0)} is VALID [2022-04-07 15:11:50,238 INFO L290 TraceCheckUtils]: 19: Hoare triple {2448#(<= 1 main_~b~0)} assume !(0 != ~a~0 && 0 != ~b~0); {2473#(and (= main_~a~0 0) (<= 1 main_~b~0))} is VALID [2022-04-07 15:11:50,238 INFO L272 TraceCheckUtils]: 20: Hoare triple {2473#(and (= main_~a~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {2407#true} is VALID [2022-04-07 15:11:50,238 INFO L290 TraceCheckUtils]: 21: Hoare triple {2407#true} ~cond := #in~cond; {2407#true} is VALID [2022-04-07 15:11:50,238 INFO L290 TraceCheckUtils]: 22: Hoare triple {2407#true} assume !(0 == ~cond); {2407#true} is VALID [2022-04-07 15:11:50,238 INFO L290 TraceCheckUtils]: 23: Hoare triple {2407#true} assume true; {2407#true} is VALID [2022-04-07 15:11:50,239 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {2407#true} {2473#(and (= main_~a~0 0) (<= 1 main_~b~0))} #73#return; {2473#(and (= main_~a~0 0) (<= 1 main_~b~0))} is VALID [2022-04-07 15:11:50,240 INFO L272 TraceCheckUtils]: 25: Hoare triple {2473#(and (= main_~a~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if 0 == ~a~0 * ~b~0 then 1 else 0)); {2492#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 15:11:50,240 INFO L290 TraceCheckUtils]: 26: Hoare triple {2492#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2496#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 15:11:50,241 INFO L290 TraceCheckUtils]: 27: Hoare triple {2496#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2408#false} is VALID [2022-04-07 15:11:50,241 INFO L290 TraceCheckUtils]: 28: Hoare triple {2408#false} assume !false; {2408#false} is VALID [2022-04-07 15:11:50,241 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-07 15:11:50,241 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 15:11:50,241 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 15:11:50,241 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1610047686] [2022-04-07 15:11:50,241 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 15:11:50,241 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [235202348] [2022-04-07 15:11:50,241 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [235202348] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 15:11:50,241 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 15:11:50,241 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-07 15:11:50,242 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [491194755] [2022-04-07 15:11:50,242 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 15:11:50,242 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 29 [2022-04-07 15:11:50,242 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 15:11:50,242 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-07 15:11:50,264 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 15:11:50,264 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-07 15:11:50,264 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 15:11:50,265 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-07 15:11:50,265 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=56, Unknown=0, NotChecked=0, Total=72 [2022-04-07 15:11:50,265 INFO L87 Difference]: Start difference. First operand 79 states and 96 transitions. Second operand has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-07 15:11:50,622 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:11:50,623 INFO L93 Difference]: Finished difference Result 116 states and 151 transitions. [2022-04-07 15:11:50,623 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-07 15:11:50,623 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 29 [2022-04-07 15:11:50,623 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 15:11:50,623 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-07 15:11:50,624 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 57 transitions. [2022-04-07 15:11:50,624 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-07 15:11:50,625 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 57 transitions. [2022-04-07 15:11:50,625 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 57 transitions. [2022-04-07 15:11:50,668 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 15:11:50,669 INFO L225 Difference]: With dead ends: 116 [2022-04-07 15:11:50,670 INFO L226 Difference]: Without dead ends: 104 [2022-04-07 15:11:50,670 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 32 GetRequests, 21 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=34, Invalid=122, Unknown=0, NotChecked=0, Total=156 [2022-04-07 15:11:50,670 INFO L913 BasicCegarLoop]: 26 mSDtfsCounter, 33 mSDsluCounter, 115 mSDsCounter, 0 mSdLazyCounter, 110 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 35 SdHoareTripleChecker+Valid, 141 SdHoareTripleChecker+Invalid, 119 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 110 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-07 15:11:50,671 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [35 Valid, 141 Invalid, 119 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 110 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-07 15:11:50,671 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 104 states. [2022-04-07 15:11:50,743 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 104 to 99. [2022-04-07 15:11:50,743 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 15:11:50,743 INFO L82 GeneralOperation]: Start isEquivalent. First operand 104 states. Second operand has 99 states, 74 states have (on average 1.3243243243243243) internal successors, (98), 76 states have internal predecessors, (98), 15 states have call successors, (15), 11 states have call predecessors, (15), 9 states have return successors, (12), 11 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-07 15:11:50,743 INFO L74 IsIncluded]: Start isIncluded. First operand 104 states. Second operand has 99 states, 74 states have (on average 1.3243243243243243) internal successors, (98), 76 states have internal predecessors, (98), 15 states have call successors, (15), 11 states have call predecessors, (15), 9 states have return successors, (12), 11 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-07 15:11:50,744 INFO L87 Difference]: Start difference. First operand 104 states. Second operand has 99 states, 74 states have (on average 1.3243243243243243) internal successors, (98), 76 states have internal predecessors, (98), 15 states have call successors, (15), 11 states have call predecessors, (15), 9 states have return successors, (12), 11 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-07 15:11:50,761 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:11:50,761 INFO L93 Difference]: Finished difference Result 104 states and 134 transitions. [2022-04-07 15:11:50,761 INFO L276 IsEmpty]: Start isEmpty. Operand 104 states and 134 transitions. [2022-04-07 15:11:50,761 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:11:50,761 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:11:50,762 INFO L74 IsIncluded]: Start isIncluded. First operand has 99 states, 74 states have (on average 1.3243243243243243) internal successors, (98), 76 states have internal predecessors, (98), 15 states have call successors, (15), 11 states have call predecessors, (15), 9 states have return successors, (12), 11 states have call predecessors, (12), 12 states have call successors, (12) Second operand 104 states. [2022-04-07 15:11:50,762 INFO L87 Difference]: Start difference. First operand has 99 states, 74 states have (on average 1.3243243243243243) internal successors, (98), 76 states have internal predecessors, (98), 15 states have call successors, (15), 11 states have call predecessors, (15), 9 states have return successors, (12), 11 states have call predecessors, (12), 12 states have call successors, (12) Second operand 104 states. [2022-04-07 15:11:50,764 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:11:50,764 INFO L93 Difference]: Finished difference Result 104 states and 134 transitions. [2022-04-07 15:11:50,765 INFO L276 IsEmpty]: Start isEmpty. Operand 104 states and 134 transitions. [2022-04-07 15:11:50,765 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:11:50,765 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:11:50,765 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 15:11:50,765 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 15:11:50,765 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 99 states, 74 states have (on average 1.3243243243243243) internal successors, (98), 76 states have internal predecessors, (98), 15 states have call successors, (15), 11 states have call predecessors, (15), 9 states have return successors, (12), 11 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-07 15:11:50,767 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 99 states to 99 states and 125 transitions. [2022-04-07 15:11:50,767 INFO L78 Accepts]: Start accepts. Automaton has 99 states and 125 transitions. Word has length 29 [2022-04-07 15:11:50,768 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 15:11:50,768 INFO L478 AbstractCegarLoop]: Abstraction has 99 states and 125 transitions. [2022-04-07 15:11:50,768 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-07 15:11:50,768 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 125 transitions. [2022-04-07 15:11:50,768 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-07 15:11:50,768 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 15:11:50,768 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 15:11:50,787 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-07 15:11:50,981 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 15:11:50,982 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 15:11:50,982 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 15:11:50,982 INFO L85 PathProgramCache]: Analyzing trace with hash 1524039145, now seen corresponding path program 1 times [2022-04-07 15:11:50,982 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 15:11:50,982 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [110931021] [2022-04-07 15:11:50,983 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:11:50,983 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 15:11:50,992 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 15:11:50,993 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [655868870] [2022-04-07 15:11:50,993 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:11:50,993 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 15:11:50,993 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 15:11:50,996 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 15:11:51,001 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-07 15:11:51,038 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:11:51,038 INFO L263 TraceCheckSpWp]: Trace formula consists of 131 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-07 15:11:51,045 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:11:51,046 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 15:11:51,145 INFO L272 TraceCheckUtils]: 0: Hoare triple {3011#true} call ULTIMATE.init(); {3011#true} is VALID [2022-04-07 15:11:51,146 INFO L290 TraceCheckUtils]: 1: Hoare triple {3011#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3011#true} is VALID [2022-04-07 15:11:51,146 INFO L290 TraceCheckUtils]: 2: Hoare triple {3011#true} assume true; {3011#true} is VALID [2022-04-07 15:11:51,146 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3011#true} {3011#true} #77#return; {3011#true} is VALID [2022-04-07 15:11:51,146 INFO L272 TraceCheckUtils]: 4: Hoare triple {3011#true} call #t~ret7 := main(); {3011#true} is VALID [2022-04-07 15:11:51,146 INFO L290 TraceCheckUtils]: 5: Hoare triple {3011#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3011#true} is VALID [2022-04-07 15:11:51,146 INFO L272 TraceCheckUtils]: 6: Hoare triple {3011#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3011#true} is VALID [2022-04-07 15:11:51,146 INFO L290 TraceCheckUtils]: 7: Hoare triple {3011#true} ~cond := #in~cond; {3011#true} is VALID [2022-04-07 15:11:51,146 INFO L290 TraceCheckUtils]: 8: Hoare triple {3011#true} assume !(0 == ~cond); {3011#true} is VALID [2022-04-07 15:11:51,146 INFO L290 TraceCheckUtils]: 9: Hoare triple {3011#true} assume true; {3011#true} is VALID [2022-04-07 15:11:51,146 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3011#true} {3011#true} #69#return; {3011#true} is VALID [2022-04-07 15:11:51,146 INFO L290 TraceCheckUtils]: 11: Hoare triple {3011#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {3011#true} is VALID [2022-04-07 15:11:51,147 INFO L290 TraceCheckUtils]: 12: Hoare triple {3011#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3011#true} is VALID [2022-04-07 15:11:51,147 INFO L290 TraceCheckUtils]: 13: Hoare triple {3011#true} assume !!(#t~post6 < 5);havoc #t~post6; {3011#true} is VALID [2022-04-07 15:11:51,147 INFO L272 TraceCheckUtils]: 14: Hoare triple {3011#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {3011#true} is VALID [2022-04-07 15:11:51,147 INFO L290 TraceCheckUtils]: 15: Hoare triple {3011#true} ~cond := #in~cond; {3011#true} is VALID [2022-04-07 15:11:51,147 INFO L290 TraceCheckUtils]: 16: Hoare triple {3011#true} assume !(0 == ~cond); {3011#true} is VALID [2022-04-07 15:11:51,147 INFO L290 TraceCheckUtils]: 17: Hoare triple {3011#true} assume true; {3011#true} is VALID [2022-04-07 15:11:51,147 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3011#true} {3011#true} #71#return; {3011#true} is VALID [2022-04-07 15:11:51,147 INFO L290 TraceCheckUtils]: 19: Hoare triple {3011#true} assume !!(0 != ~a~0 && 0 != ~b~0); {3073#(not (= main_~a~0 0))} is VALID [2022-04-07 15:11:51,148 INFO L290 TraceCheckUtils]: 20: Hoare triple {3073#(not (= main_~a~0 0))} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {3073#(not (= main_~a~0 0))} is VALID [2022-04-07 15:11:51,148 INFO L290 TraceCheckUtils]: 21: Hoare triple {3073#(not (= main_~a~0 0))} assume !(1 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {3073#(not (= main_~a~0 0))} is VALID [2022-04-07 15:11:51,148 INFO L290 TraceCheckUtils]: 22: Hoare triple {3073#(not (= main_~a~0 0))} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 1 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~b~0 := ~b~0 - 1;~q~0 := ~q~0 + ~a~0 * ~p~0; {3073#(not (= main_~a~0 0))} is VALID [2022-04-07 15:11:51,149 INFO L290 TraceCheckUtils]: 23: Hoare triple {3073#(not (= main_~a~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3073#(not (= main_~a~0 0))} is VALID [2022-04-07 15:11:51,149 INFO L290 TraceCheckUtils]: 24: Hoare triple {3073#(not (= main_~a~0 0))} assume !!(#t~post6 < 5);havoc #t~post6; {3073#(not (= main_~a~0 0))} is VALID [2022-04-07 15:11:51,149 INFO L272 TraceCheckUtils]: 25: Hoare triple {3073#(not (= main_~a~0 0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {3011#true} is VALID [2022-04-07 15:11:51,149 INFO L290 TraceCheckUtils]: 26: Hoare triple {3011#true} ~cond := #in~cond; {3011#true} is VALID [2022-04-07 15:11:51,149 INFO L290 TraceCheckUtils]: 27: Hoare triple {3011#true} assume !(0 == ~cond); {3011#true} is VALID [2022-04-07 15:11:51,149 INFO L290 TraceCheckUtils]: 28: Hoare triple {3011#true} assume true; {3011#true} is VALID [2022-04-07 15:11:51,150 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {3011#true} {3073#(not (= main_~a~0 0))} #71#return; {3073#(not (= main_~a~0 0))} is VALID [2022-04-07 15:11:51,150 INFO L290 TraceCheckUtils]: 30: Hoare triple {3073#(not (= main_~a~0 0))} assume !(0 != ~a~0 && 0 != ~b~0); {3107#(and (= main_~b~0 0) (not (= main_~a~0 0)))} is VALID [2022-04-07 15:11:51,151 INFO L272 TraceCheckUtils]: 31: Hoare triple {3107#(and (= main_~b~0 0) (not (= main_~a~0 0)))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {3011#true} is VALID [2022-04-07 15:11:51,151 INFO L290 TraceCheckUtils]: 32: Hoare triple {3011#true} ~cond := #in~cond; {3011#true} is VALID [2022-04-07 15:11:51,151 INFO L290 TraceCheckUtils]: 33: Hoare triple {3011#true} assume !(0 == ~cond); {3011#true} is VALID [2022-04-07 15:11:51,151 INFO L290 TraceCheckUtils]: 34: Hoare triple {3011#true} assume true; {3011#true} is VALID [2022-04-07 15:11:51,151 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {3011#true} {3107#(and (= main_~b~0 0) (not (= main_~a~0 0)))} #73#return; {3107#(and (= main_~b~0 0) (not (= main_~a~0 0)))} is VALID [2022-04-07 15:11:51,152 INFO L272 TraceCheckUtils]: 36: Hoare triple {3107#(and (= main_~b~0 0) (not (= main_~a~0 0)))} call __VERIFIER_assert((if 0 == ~a~0 * ~b~0 then 1 else 0)); {3126#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 15:11:51,152 INFO L290 TraceCheckUtils]: 37: Hoare triple {3126#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3130#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 15:11:51,153 INFO L290 TraceCheckUtils]: 38: Hoare triple {3130#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3012#false} is VALID [2022-04-07 15:11:51,153 INFO L290 TraceCheckUtils]: 39: Hoare triple {3012#false} assume !false; {3012#false} is VALID [2022-04-07 15:11:51,153 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 10 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-07 15:11:51,153 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 15:11:51,153 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 15:11:51,153 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [110931021] [2022-04-07 15:11:51,153 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 15:11:51,153 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [655868870] [2022-04-07 15:11:51,153 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [655868870] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 15:11:51,154 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 15:11:51,154 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-07 15:11:51,154 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2136580044] [2022-04-07 15:11:51,154 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 15:11:51,154 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 4.4) internal successors, (22), 5 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Word has length 40 [2022-04-07 15:11:51,154 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 15:11:51,154 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 4.4) internal successors, (22), 5 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-07 15:11:51,176 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 15:11:51,177 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-07 15:11:51,177 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 15:11:51,177 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-07 15:11:51,177 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-04-07 15:11:51,177 INFO L87 Difference]: Start difference. First operand 99 states and 125 transitions. Second operand has 6 states, 5 states have (on average 4.4) internal successors, (22), 5 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-07 15:11:51,427 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:11:51,428 INFO L93 Difference]: Finished difference Result 141 states and 180 transitions. [2022-04-07 15:11:51,428 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-07 15:11:51,428 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 4.4) internal successors, (22), 5 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Word has length 40 [2022-04-07 15:11:51,428 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 15:11:51,428 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 4.4) internal successors, (22), 5 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-07 15:11:51,429 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 51 transitions. [2022-04-07 15:11:51,429 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 4.4) internal successors, (22), 5 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-07 15:11:51,430 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 51 transitions. [2022-04-07 15:11:51,430 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 51 transitions. [2022-04-07 15:11:51,465 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 15:11:51,467 INFO L225 Difference]: With dead ends: 141 [2022-04-07 15:11:51,467 INFO L226 Difference]: Without dead ends: 129 [2022-04-07 15:11:51,467 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 40 GetRequests, 35 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=14, Invalid=28, Unknown=0, NotChecked=0, Total=42 [2022-04-07 15:11:51,468 INFO L913 BasicCegarLoop]: 35 mSDtfsCounter, 7 mSDsluCounter, 81 mSDsCounter, 0 mSdLazyCounter, 57 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 116 SdHoareTripleChecker+Invalid, 59 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 57 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 15:11:51,468 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [8 Valid, 116 Invalid, 59 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 57 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 15:11:51,468 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 129 states. [2022-04-07 15:11:51,533 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 129 to 113. [2022-04-07 15:11:51,533 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 15:11:51,534 INFO L82 GeneralOperation]: Start isEquivalent. First operand 129 states. Second operand has 113 states, 85 states have (on average 1.2941176470588236) internal successors, (110), 87 states have internal predecessors, (110), 18 states have call successors, (18), 11 states have call predecessors, (18), 9 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-07 15:11:51,534 INFO L74 IsIncluded]: Start isIncluded. First operand 129 states. Second operand has 113 states, 85 states have (on average 1.2941176470588236) internal successors, (110), 87 states have internal predecessors, (110), 18 states have call successors, (18), 11 states have call predecessors, (18), 9 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-07 15:11:51,534 INFO L87 Difference]: Start difference. First operand 129 states. Second operand has 113 states, 85 states have (on average 1.2941176470588236) internal successors, (110), 87 states have internal predecessors, (110), 18 states have call successors, (18), 11 states have call predecessors, (18), 9 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-07 15:11:51,537 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:11:51,537 INFO L93 Difference]: Finished difference Result 129 states and 164 transitions. [2022-04-07 15:11:51,537 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 164 transitions. [2022-04-07 15:11:51,537 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:11:51,538 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:11:51,538 INFO L74 IsIncluded]: Start isIncluded. First operand has 113 states, 85 states have (on average 1.2941176470588236) internal successors, (110), 87 states have internal predecessors, (110), 18 states have call successors, (18), 11 states have call predecessors, (18), 9 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) Second operand 129 states. [2022-04-07 15:11:51,538 INFO L87 Difference]: Start difference. First operand has 113 states, 85 states have (on average 1.2941176470588236) internal successors, (110), 87 states have internal predecessors, (110), 18 states have call successors, (18), 11 states have call predecessors, (18), 9 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) Second operand 129 states. [2022-04-07 15:11:51,541 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:11:51,541 INFO L93 Difference]: Finished difference Result 129 states and 164 transitions. [2022-04-07 15:11:51,541 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 164 transitions. [2022-04-07 15:11:51,541 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:11:51,541 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:11:51,541 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 15:11:51,541 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 15:11:51,542 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 113 states, 85 states have (on average 1.2941176470588236) internal successors, (110), 87 states have internal predecessors, (110), 18 states have call successors, (18), 11 states have call predecessors, (18), 9 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-07 15:11:51,544 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 113 states to 113 states and 143 transitions. [2022-04-07 15:11:51,544 INFO L78 Accepts]: Start accepts. Automaton has 113 states and 143 transitions. Word has length 40 [2022-04-07 15:11:51,544 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 15:11:51,544 INFO L478 AbstractCegarLoop]: Abstraction has 113 states and 143 transitions. [2022-04-07 15:11:51,544 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 4.4) internal successors, (22), 5 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-07 15:11:51,544 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 143 transitions. [2022-04-07 15:11:51,545 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-07 15:11:51,545 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 15:11:51,545 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 15:11:51,578 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-07 15:11:51,762 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 15:11:51,762 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 15:11:51,762 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 15:11:51,762 INFO L85 PathProgramCache]: Analyzing trace with hash -470105561, now seen corresponding path program 1 times [2022-04-07 15:11:51,762 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 15:11:51,763 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [9672163] [2022-04-07 15:11:51,763 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:11:51,763 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 15:11:51,779 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 15:11:51,780 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1360398289] [2022-04-07 15:11:51,780 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:11:51,780 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 15:11:51,780 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 15:11:51,781 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 15:11:51,782 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-07 15:11:51,816 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:11:51,817 INFO L263 TraceCheckSpWp]: Trace formula consists of 130 conjuncts, 12 conjunts are in the unsatisfiable core [2022-04-07 15:11:51,832 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:11:51,833 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 15:11:52,100 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-07 15:11:52,143 INFO L272 TraceCheckUtils]: 0: Hoare triple {3749#true} call ULTIMATE.init(); {3749#true} is VALID [2022-04-07 15:11:52,144 INFO L290 TraceCheckUtils]: 1: Hoare triple {3749#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3749#true} is VALID [2022-04-07 15:11:52,144 INFO L290 TraceCheckUtils]: 2: Hoare triple {3749#true} assume true; {3749#true} is VALID [2022-04-07 15:11:52,144 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3749#true} {3749#true} #77#return; {3749#true} is VALID [2022-04-07 15:11:52,144 INFO L272 TraceCheckUtils]: 4: Hoare triple {3749#true} call #t~ret7 := main(); {3749#true} is VALID [2022-04-07 15:11:52,144 INFO L290 TraceCheckUtils]: 5: Hoare triple {3749#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3749#true} is VALID [2022-04-07 15:11:52,144 INFO L272 TraceCheckUtils]: 6: Hoare triple {3749#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3749#true} is VALID [2022-04-07 15:11:52,144 INFO L290 TraceCheckUtils]: 7: Hoare triple {3749#true} ~cond := #in~cond; {3775#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 15:11:52,145 INFO L290 TraceCheckUtils]: 8: Hoare triple {3775#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3779#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 15:11:52,145 INFO L290 TraceCheckUtils]: 9: Hoare triple {3779#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3779#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 15:11:52,146 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3779#(not (= |assume_abort_if_not_#in~cond| 0))} {3749#true} #69#return; {3786#(<= 1 main_~y~0)} is VALID [2022-04-07 15:11:52,146 INFO L290 TraceCheckUtils]: 11: Hoare triple {3786#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {3790#(<= 1 main_~b~0)} is VALID [2022-04-07 15:11:52,146 INFO L290 TraceCheckUtils]: 12: Hoare triple {3790#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3790#(<= 1 main_~b~0)} is VALID [2022-04-07 15:11:52,147 INFO L290 TraceCheckUtils]: 13: Hoare triple {3790#(<= 1 main_~b~0)} assume !!(#t~post6 < 5);havoc #t~post6; {3790#(<= 1 main_~b~0)} is VALID [2022-04-07 15:11:52,147 INFO L272 TraceCheckUtils]: 14: Hoare triple {3790#(<= 1 main_~b~0)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {3749#true} is VALID [2022-04-07 15:11:52,147 INFO L290 TraceCheckUtils]: 15: Hoare triple {3749#true} ~cond := #in~cond; {3749#true} is VALID [2022-04-07 15:11:52,147 INFO L290 TraceCheckUtils]: 16: Hoare triple {3749#true} assume !(0 == ~cond); {3749#true} is VALID [2022-04-07 15:11:52,147 INFO L290 TraceCheckUtils]: 17: Hoare triple {3749#true} assume true; {3749#true} is VALID [2022-04-07 15:11:52,148 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3749#true} {3790#(<= 1 main_~b~0)} #71#return; {3790#(<= 1 main_~b~0)} is VALID [2022-04-07 15:11:52,148 INFO L290 TraceCheckUtils]: 19: Hoare triple {3790#(<= 1 main_~b~0)} assume !!(0 != ~a~0 && 0 != ~b~0); {3790#(<= 1 main_~b~0)} is VALID [2022-04-07 15:11:52,150 INFO L290 TraceCheckUtils]: 20: Hoare triple {3790#(<= 1 main_~b~0)} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {3790#(<= 1 main_~b~0)} is VALID [2022-04-07 15:11:52,150 INFO L290 TraceCheckUtils]: 21: Hoare triple {3790#(<= 1 main_~b~0)} assume !(1 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {3790#(<= 1 main_~b~0)} is VALID [2022-04-07 15:11:52,151 INFO L290 TraceCheckUtils]: 22: Hoare triple {3790#(<= 1 main_~b~0)} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 1 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2));~a~0 := ~a~0 - 1;~b~0 := ~b~0 - 1;~q~0 := ~q~0 + (1 + (~a~0 + ~b~0)) * ~p~0; {3824#(<= 0 main_~b~0)} is VALID [2022-04-07 15:11:52,151 INFO L290 TraceCheckUtils]: 23: Hoare triple {3824#(<= 0 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3824#(<= 0 main_~b~0)} is VALID [2022-04-07 15:11:52,151 INFO L290 TraceCheckUtils]: 24: Hoare triple {3824#(<= 0 main_~b~0)} assume !!(#t~post6 < 5);havoc #t~post6; {3824#(<= 0 main_~b~0)} is VALID [2022-04-07 15:11:52,151 INFO L272 TraceCheckUtils]: 25: Hoare triple {3824#(<= 0 main_~b~0)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {3749#true} is VALID [2022-04-07 15:11:52,152 INFO L290 TraceCheckUtils]: 26: Hoare triple {3749#true} ~cond := #in~cond; {3749#true} is VALID [2022-04-07 15:11:52,152 INFO L290 TraceCheckUtils]: 27: Hoare triple {3749#true} assume !(0 == ~cond); {3749#true} is VALID [2022-04-07 15:11:52,152 INFO L290 TraceCheckUtils]: 28: Hoare triple {3749#true} assume true; {3749#true} is VALID [2022-04-07 15:11:52,152 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {3749#true} {3824#(<= 0 main_~b~0)} #71#return; {3824#(<= 0 main_~b~0)} is VALID [2022-04-07 15:11:52,153 INFO L290 TraceCheckUtils]: 30: Hoare triple {3824#(<= 0 main_~b~0)} assume !(0 != ~a~0 && 0 != ~b~0); {3849#(and (or (= main_~a~0 0) (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-07 15:11:52,153 INFO L272 TraceCheckUtils]: 31: Hoare triple {3849#(and (or (= main_~a~0 0) (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {3749#true} is VALID [2022-04-07 15:11:52,153 INFO L290 TraceCheckUtils]: 32: Hoare triple {3749#true} ~cond := #in~cond; {3749#true} is VALID [2022-04-07 15:11:52,153 INFO L290 TraceCheckUtils]: 33: Hoare triple {3749#true} assume !(0 == ~cond); {3749#true} is VALID [2022-04-07 15:11:52,153 INFO L290 TraceCheckUtils]: 34: Hoare triple {3749#true} assume true; {3749#true} is VALID [2022-04-07 15:11:52,154 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {3749#true} {3849#(and (or (= main_~a~0 0) (= main_~b~0 0)) (<= 0 main_~b~0))} #73#return; {3849#(and (or (= main_~a~0 0) (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-07 15:11:52,155 INFO L272 TraceCheckUtils]: 36: Hoare triple {3849#(and (or (= main_~a~0 0) (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if 0 == ~a~0 * ~b~0 then 1 else 0)); {3868#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 15:11:52,156 INFO L290 TraceCheckUtils]: 37: Hoare triple {3868#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3872#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 15:11:52,156 INFO L290 TraceCheckUtils]: 38: Hoare triple {3872#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3750#false} is VALID [2022-04-07 15:11:52,156 INFO L290 TraceCheckUtils]: 39: Hoare triple {3750#false} assume !false; {3750#false} is VALID [2022-04-07 15:11:52,156 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 6 proven. 4 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-07 15:11:52,156 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 15:11:52,396 INFO L290 TraceCheckUtils]: 39: Hoare triple {3750#false} assume !false; {3750#false} is VALID [2022-04-07 15:11:52,396 INFO L290 TraceCheckUtils]: 38: Hoare triple {3872#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3750#false} is VALID [2022-04-07 15:11:52,397 INFO L290 TraceCheckUtils]: 37: Hoare triple {3868#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3872#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 15:11:52,397 INFO L272 TraceCheckUtils]: 36: Hoare triple {3888#(= (* main_~b~0 main_~a~0) 0)} call __VERIFIER_assert((if 0 == ~a~0 * ~b~0 then 1 else 0)); {3868#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 15:11:52,398 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {3749#true} {3888#(= (* main_~b~0 main_~a~0) 0)} #73#return; {3888#(= (* main_~b~0 main_~a~0) 0)} is VALID [2022-04-07 15:11:52,398 INFO L290 TraceCheckUtils]: 34: Hoare triple {3749#true} assume true; {3749#true} is VALID [2022-04-07 15:11:52,398 INFO L290 TraceCheckUtils]: 33: Hoare triple {3749#true} assume !(0 == ~cond); {3749#true} is VALID [2022-04-07 15:11:52,398 INFO L290 TraceCheckUtils]: 32: Hoare triple {3749#true} ~cond := #in~cond; {3749#true} is VALID [2022-04-07 15:11:52,398 INFO L272 TraceCheckUtils]: 31: Hoare triple {3888#(= (* main_~b~0 main_~a~0) 0)} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {3749#true} is VALID [2022-04-07 15:11:52,399 INFO L290 TraceCheckUtils]: 30: Hoare triple {3749#true} assume !(0 != ~a~0 && 0 != ~b~0); {3888#(= (* main_~b~0 main_~a~0) 0)} is VALID [2022-04-07 15:11:52,400 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {3749#true} {3749#true} #71#return; {3749#true} is VALID [2022-04-07 15:11:52,400 INFO L290 TraceCheckUtils]: 28: Hoare triple {3749#true} assume true; {3749#true} is VALID [2022-04-07 15:11:52,400 INFO L290 TraceCheckUtils]: 27: Hoare triple {3749#true} assume !(0 == ~cond); {3749#true} is VALID [2022-04-07 15:11:52,400 INFO L290 TraceCheckUtils]: 26: Hoare triple {3749#true} ~cond := #in~cond; {3749#true} is VALID [2022-04-07 15:11:52,400 INFO L272 TraceCheckUtils]: 25: Hoare triple {3749#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {3749#true} is VALID [2022-04-07 15:11:52,400 INFO L290 TraceCheckUtils]: 24: Hoare triple {3749#true} assume !!(#t~post6 < 5);havoc #t~post6; {3749#true} is VALID [2022-04-07 15:11:52,400 INFO L290 TraceCheckUtils]: 23: Hoare triple {3749#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3749#true} is VALID [2022-04-07 15:11:52,400 INFO L290 TraceCheckUtils]: 22: Hoare triple {3749#true} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 1 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2));~a~0 := ~a~0 - 1;~b~0 := ~b~0 - 1;~q~0 := ~q~0 + (1 + (~a~0 + ~b~0)) * ~p~0; {3749#true} is VALID [2022-04-07 15:11:52,400 INFO L290 TraceCheckUtils]: 21: Hoare triple {3749#true} assume !(1 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {3749#true} is VALID [2022-04-07 15:11:52,400 INFO L290 TraceCheckUtils]: 20: Hoare triple {3749#true} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {3749#true} is VALID [2022-04-07 15:11:52,400 INFO L290 TraceCheckUtils]: 19: Hoare triple {3749#true} assume !!(0 != ~a~0 && 0 != ~b~0); {3749#true} is VALID [2022-04-07 15:11:52,400 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3749#true} {3749#true} #71#return; {3749#true} is VALID [2022-04-07 15:11:52,401 INFO L290 TraceCheckUtils]: 17: Hoare triple {3749#true} assume true; {3749#true} is VALID [2022-04-07 15:11:52,401 INFO L290 TraceCheckUtils]: 16: Hoare triple {3749#true} assume !(0 == ~cond); {3749#true} is VALID [2022-04-07 15:11:52,401 INFO L290 TraceCheckUtils]: 15: Hoare triple {3749#true} ~cond := #in~cond; {3749#true} is VALID [2022-04-07 15:11:52,403 INFO L272 TraceCheckUtils]: 14: Hoare triple {3749#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {3749#true} is VALID [2022-04-07 15:11:52,403 INFO L290 TraceCheckUtils]: 13: Hoare triple {3749#true} assume !!(#t~post6 < 5);havoc #t~post6; {3749#true} is VALID [2022-04-07 15:11:52,403 INFO L290 TraceCheckUtils]: 12: Hoare triple {3749#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3749#true} is VALID [2022-04-07 15:11:52,403 INFO L290 TraceCheckUtils]: 11: Hoare triple {3749#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {3749#true} is VALID [2022-04-07 15:11:52,403 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3749#true} {3749#true} #69#return; {3749#true} is VALID [2022-04-07 15:11:52,403 INFO L290 TraceCheckUtils]: 9: Hoare triple {3749#true} assume true; {3749#true} is VALID [2022-04-07 15:11:52,403 INFO L290 TraceCheckUtils]: 8: Hoare triple {3749#true} assume !(0 == ~cond); {3749#true} is VALID [2022-04-07 15:11:52,403 INFO L290 TraceCheckUtils]: 7: Hoare triple {3749#true} ~cond := #in~cond; {3749#true} is VALID [2022-04-07 15:11:52,404 INFO L272 TraceCheckUtils]: 6: Hoare triple {3749#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3749#true} is VALID [2022-04-07 15:11:52,404 INFO L290 TraceCheckUtils]: 5: Hoare triple {3749#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3749#true} is VALID [2022-04-07 15:11:52,404 INFO L272 TraceCheckUtils]: 4: Hoare triple {3749#true} call #t~ret7 := main(); {3749#true} is VALID [2022-04-07 15:11:52,404 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3749#true} {3749#true} #77#return; {3749#true} is VALID [2022-04-07 15:11:52,404 INFO L290 TraceCheckUtils]: 2: Hoare triple {3749#true} assume true; {3749#true} is VALID [2022-04-07 15:11:52,404 INFO L290 TraceCheckUtils]: 1: Hoare triple {3749#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3749#true} is VALID [2022-04-07 15:11:52,404 INFO L272 TraceCheckUtils]: 0: Hoare triple {3749#true} call ULTIMATE.init(); {3749#true} is VALID [2022-04-07 15:11:52,404 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-07 15:11:52,404 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 15:11:52,405 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [9672163] [2022-04-07 15:11:52,405 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 15:11:52,405 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1360398289] [2022-04-07 15:11:52,405 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1360398289] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-07 15:11:52,405 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-07 15:11:52,405 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [10] total 11 [2022-04-07 15:11:52,407 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1218485346] [2022-04-07 15:11:52,407 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 15:11:52,408 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 40 [2022-04-07 15:11:52,408 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 15:11:52,408 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 15:11:52,428 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 15:11:52,428 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-07 15:11:52,429 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 15:11:52,429 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-07 15:11:52,429 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=88, Unknown=0, NotChecked=0, Total=110 [2022-04-07 15:11:52,429 INFO L87 Difference]: Start difference. First operand 113 states and 143 transitions. Second operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 15:11:52,781 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:11:52,782 INFO L93 Difference]: Finished difference Result 120 states and 149 transitions. [2022-04-07 15:11:52,782 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-07 15:11:52,787 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 40 [2022-04-07 15:11:52,787 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 15:11:52,787 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 15:11:52,788 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 41 transitions. [2022-04-07 15:11:52,788 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 15:11:52,789 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 41 transitions. [2022-04-07 15:11:52,789 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 41 transitions. [2022-04-07 15:11:52,814 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 15:11:52,815 INFO L225 Difference]: With dead ends: 120 [2022-04-07 15:11:52,815 INFO L226 Difference]: Without dead ends: 100 [2022-04-07 15:11:52,815 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 80 GetRequests, 69 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=26, Invalid=106, Unknown=0, NotChecked=0, Total=132 [2022-04-07 15:11:52,816 INFO L913 BasicCegarLoop]: 37 mSDtfsCounter, 5 mSDsluCounter, 85 mSDsCounter, 0 mSdLazyCounter, 25 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 5 SdHoareTripleChecker+Valid, 122 SdHoareTripleChecker+Invalid, 25 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 25 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-07 15:11:52,816 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [5 Valid, 122 Invalid, 25 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 25 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-07 15:11:52,816 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 100 states. [2022-04-07 15:11:52,854 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 100 to 66. [2022-04-07 15:11:52,854 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 15:11:52,855 INFO L82 GeneralOperation]: Start isEquivalent. First operand 100 states. Second operand has 66 states, 49 states have (on average 1.2857142857142858) internal successors, (63), 50 states have internal predecessors, (63), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-07 15:11:52,855 INFO L74 IsIncluded]: Start isIncluded. First operand 100 states. Second operand has 66 states, 49 states have (on average 1.2857142857142858) internal successors, (63), 50 states have internal predecessors, (63), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-07 15:11:52,856 INFO L87 Difference]: Start difference. First operand 100 states. Second operand has 66 states, 49 states have (on average 1.2857142857142858) internal successors, (63), 50 states have internal predecessors, (63), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-07 15:11:52,859 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:11:52,859 INFO L93 Difference]: Finished difference Result 100 states and 127 transitions. [2022-04-07 15:11:52,859 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 127 transitions. [2022-04-07 15:11:52,859 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:11:52,859 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:11:52,860 INFO L74 IsIncluded]: Start isIncluded. First operand has 66 states, 49 states have (on average 1.2857142857142858) internal successors, (63), 50 states have internal predecessors, (63), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 100 states. [2022-04-07 15:11:52,860 INFO L87 Difference]: Start difference. First operand has 66 states, 49 states have (on average 1.2857142857142858) internal successors, (63), 50 states have internal predecessors, (63), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 100 states. [2022-04-07 15:11:52,862 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:11:52,862 INFO L93 Difference]: Finished difference Result 100 states and 127 transitions. [2022-04-07 15:11:52,862 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 127 transitions. [2022-04-07 15:11:52,862 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:11:52,862 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:11:52,862 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 15:11:52,862 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 15:11:52,863 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 66 states, 49 states have (on average 1.2857142857142858) internal successors, (63), 50 states have internal predecessors, (63), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-07 15:11:52,864 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 66 states to 66 states and 79 transitions. [2022-04-07 15:11:52,864 INFO L78 Accepts]: Start accepts. Automaton has 66 states and 79 transitions. Word has length 40 [2022-04-07 15:11:52,864 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 15:11:52,864 INFO L478 AbstractCegarLoop]: Abstraction has 66 states and 79 transitions. [2022-04-07 15:11:52,864 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 15:11:52,864 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 79 transitions. [2022-04-07 15:11:52,864 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 55 [2022-04-07 15:11:52,865 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 15:11:52,865 INFO L499 BasicCegarLoop]: trace histogram [5, 5, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 15:11:52,881 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-04-07 15:11:53,075 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable8 [2022-04-07 15:11:53,076 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 15:11:53,076 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 15:11:53,076 INFO L85 PathProgramCache]: Analyzing trace with hash -1818717446, now seen corresponding path program 2 times [2022-04-07 15:11:53,076 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 15:11:53,076 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1538689547] [2022-04-07 15:11:53,076 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:11:53,076 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 15:11:53,097 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 15:11:53,097 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1822258370] [2022-04-07 15:11:53,097 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-07 15:11:53,097 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 15:11:53,097 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 15:11:53,104 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 15:11:53,105 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-04-07 15:11:53,151 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-07 15:11:53,152 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-07 15:11:53,153 INFO L263 TraceCheckSpWp]: Trace formula consists of 190 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-07 15:11:53,163 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:11:53,167 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 15:11:53,412 INFO L272 TraceCheckUtils]: 0: Hoare triple {4453#true} call ULTIMATE.init(); {4453#true} is VALID [2022-04-07 15:11:53,412 INFO L290 TraceCheckUtils]: 1: Hoare triple {4453#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4461#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:53,413 INFO L290 TraceCheckUtils]: 2: Hoare triple {4461#(<= ~counter~0 0)} assume true; {4461#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:53,413 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4461#(<= ~counter~0 0)} {4453#true} #77#return; {4461#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:53,414 INFO L272 TraceCheckUtils]: 4: Hoare triple {4461#(<= ~counter~0 0)} call #t~ret7 := main(); {4461#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:53,414 INFO L290 TraceCheckUtils]: 5: Hoare triple {4461#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4461#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:53,414 INFO L272 TraceCheckUtils]: 6: Hoare triple {4461#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4461#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:53,415 INFO L290 TraceCheckUtils]: 7: Hoare triple {4461#(<= ~counter~0 0)} ~cond := #in~cond; {4461#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:53,416 INFO L290 TraceCheckUtils]: 8: Hoare triple {4461#(<= ~counter~0 0)} assume !(0 == ~cond); {4461#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:53,418 INFO L290 TraceCheckUtils]: 9: Hoare triple {4461#(<= ~counter~0 0)} assume true; {4461#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:53,420 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4461#(<= ~counter~0 0)} {4461#(<= ~counter~0 0)} #69#return; {4461#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:53,420 INFO L290 TraceCheckUtils]: 11: Hoare triple {4461#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {4461#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:53,421 INFO L290 TraceCheckUtils]: 12: Hoare triple {4461#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4495#(<= ~counter~0 1)} is VALID [2022-04-07 15:11:53,422 INFO L290 TraceCheckUtils]: 13: Hoare triple {4495#(<= ~counter~0 1)} assume !!(#t~post6 < 5);havoc #t~post6; {4495#(<= ~counter~0 1)} is VALID [2022-04-07 15:11:53,423 INFO L272 TraceCheckUtils]: 14: Hoare triple {4495#(<= ~counter~0 1)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {4495#(<= ~counter~0 1)} is VALID [2022-04-07 15:11:53,423 INFO L290 TraceCheckUtils]: 15: Hoare triple {4495#(<= ~counter~0 1)} ~cond := #in~cond; {4495#(<= ~counter~0 1)} is VALID [2022-04-07 15:11:53,424 INFO L290 TraceCheckUtils]: 16: Hoare triple {4495#(<= ~counter~0 1)} assume !(0 == ~cond); {4495#(<= ~counter~0 1)} is VALID [2022-04-07 15:11:53,424 INFO L290 TraceCheckUtils]: 17: Hoare triple {4495#(<= ~counter~0 1)} assume true; {4495#(<= ~counter~0 1)} is VALID [2022-04-07 15:11:53,428 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4495#(<= ~counter~0 1)} {4495#(<= ~counter~0 1)} #71#return; {4495#(<= ~counter~0 1)} is VALID [2022-04-07 15:11:53,429 INFO L290 TraceCheckUtils]: 19: Hoare triple {4495#(<= ~counter~0 1)} assume !!(0 != ~a~0 && 0 != ~b~0); {4495#(<= ~counter~0 1)} is VALID [2022-04-07 15:11:53,429 INFO L290 TraceCheckUtils]: 20: Hoare triple {4495#(<= ~counter~0 1)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {4495#(<= ~counter~0 1)} is VALID [2022-04-07 15:11:53,430 INFO L290 TraceCheckUtils]: 21: Hoare triple {4495#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4523#(<= ~counter~0 2)} is VALID [2022-04-07 15:11:53,430 INFO L290 TraceCheckUtils]: 22: Hoare triple {4523#(<= ~counter~0 2)} assume !!(#t~post6 < 5);havoc #t~post6; {4523#(<= ~counter~0 2)} is VALID [2022-04-07 15:11:53,431 INFO L272 TraceCheckUtils]: 23: Hoare triple {4523#(<= ~counter~0 2)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {4523#(<= ~counter~0 2)} is VALID [2022-04-07 15:11:53,431 INFO L290 TraceCheckUtils]: 24: Hoare triple {4523#(<= ~counter~0 2)} ~cond := #in~cond; {4523#(<= ~counter~0 2)} is VALID [2022-04-07 15:11:53,432 INFO L290 TraceCheckUtils]: 25: Hoare triple {4523#(<= ~counter~0 2)} assume !(0 == ~cond); {4523#(<= ~counter~0 2)} is VALID [2022-04-07 15:11:53,432 INFO L290 TraceCheckUtils]: 26: Hoare triple {4523#(<= ~counter~0 2)} assume true; {4523#(<= ~counter~0 2)} is VALID [2022-04-07 15:11:53,433 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {4523#(<= ~counter~0 2)} {4523#(<= ~counter~0 2)} #71#return; {4523#(<= ~counter~0 2)} is VALID [2022-04-07 15:11:53,433 INFO L290 TraceCheckUtils]: 28: Hoare triple {4523#(<= ~counter~0 2)} assume !!(0 != ~a~0 && 0 != ~b~0); {4523#(<= ~counter~0 2)} is VALID [2022-04-07 15:11:53,433 INFO L290 TraceCheckUtils]: 29: Hoare triple {4523#(<= ~counter~0 2)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {4523#(<= ~counter~0 2)} is VALID [2022-04-07 15:11:53,434 INFO L290 TraceCheckUtils]: 30: Hoare triple {4523#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4551#(<= ~counter~0 3)} is VALID [2022-04-07 15:11:53,434 INFO L290 TraceCheckUtils]: 31: Hoare triple {4551#(<= ~counter~0 3)} assume !!(#t~post6 < 5);havoc #t~post6; {4551#(<= ~counter~0 3)} is VALID [2022-04-07 15:11:53,434 INFO L272 TraceCheckUtils]: 32: Hoare triple {4551#(<= ~counter~0 3)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {4551#(<= ~counter~0 3)} is VALID [2022-04-07 15:11:53,435 INFO L290 TraceCheckUtils]: 33: Hoare triple {4551#(<= ~counter~0 3)} ~cond := #in~cond; {4551#(<= ~counter~0 3)} is VALID [2022-04-07 15:11:53,435 INFO L290 TraceCheckUtils]: 34: Hoare triple {4551#(<= ~counter~0 3)} assume !(0 == ~cond); {4551#(<= ~counter~0 3)} is VALID [2022-04-07 15:11:53,435 INFO L290 TraceCheckUtils]: 35: Hoare triple {4551#(<= ~counter~0 3)} assume true; {4551#(<= ~counter~0 3)} is VALID [2022-04-07 15:11:53,436 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {4551#(<= ~counter~0 3)} {4551#(<= ~counter~0 3)} #71#return; {4551#(<= ~counter~0 3)} is VALID [2022-04-07 15:11:53,436 INFO L290 TraceCheckUtils]: 37: Hoare triple {4551#(<= ~counter~0 3)} assume !!(0 != ~a~0 && 0 != ~b~0); {4551#(<= ~counter~0 3)} is VALID [2022-04-07 15:11:53,437 INFO L290 TraceCheckUtils]: 38: Hoare triple {4551#(<= ~counter~0 3)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {4551#(<= ~counter~0 3)} is VALID [2022-04-07 15:11:53,437 INFO L290 TraceCheckUtils]: 39: Hoare triple {4551#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4579#(<= ~counter~0 4)} is VALID [2022-04-07 15:11:53,437 INFO L290 TraceCheckUtils]: 40: Hoare triple {4579#(<= ~counter~0 4)} assume !!(#t~post6 < 5);havoc #t~post6; {4579#(<= ~counter~0 4)} is VALID [2022-04-07 15:11:53,438 INFO L272 TraceCheckUtils]: 41: Hoare triple {4579#(<= ~counter~0 4)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {4579#(<= ~counter~0 4)} is VALID [2022-04-07 15:11:53,438 INFO L290 TraceCheckUtils]: 42: Hoare triple {4579#(<= ~counter~0 4)} ~cond := #in~cond; {4579#(<= ~counter~0 4)} is VALID [2022-04-07 15:11:53,439 INFO L290 TraceCheckUtils]: 43: Hoare triple {4579#(<= ~counter~0 4)} assume !(0 == ~cond); {4579#(<= ~counter~0 4)} is VALID [2022-04-07 15:11:53,439 INFO L290 TraceCheckUtils]: 44: Hoare triple {4579#(<= ~counter~0 4)} assume true; {4579#(<= ~counter~0 4)} is VALID [2022-04-07 15:11:53,439 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {4579#(<= ~counter~0 4)} {4579#(<= ~counter~0 4)} #71#return; {4579#(<= ~counter~0 4)} is VALID [2022-04-07 15:11:53,440 INFO L290 TraceCheckUtils]: 46: Hoare triple {4579#(<= ~counter~0 4)} assume !!(0 != ~a~0 && 0 != ~b~0); {4579#(<= ~counter~0 4)} is VALID [2022-04-07 15:11:53,440 INFO L290 TraceCheckUtils]: 47: Hoare triple {4579#(<= ~counter~0 4)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {4579#(<= ~counter~0 4)} is VALID [2022-04-07 15:11:53,440 INFO L290 TraceCheckUtils]: 48: Hoare triple {4579#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4607#(<= |main_#t~post6| 4)} is VALID [2022-04-07 15:11:53,441 INFO L290 TraceCheckUtils]: 49: Hoare triple {4607#(<= |main_#t~post6| 4)} assume !(#t~post6 < 5);havoc #t~post6; {4454#false} is VALID [2022-04-07 15:11:53,441 INFO L272 TraceCheckUtils]: 50: Hoare triple {4454#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {4454#false} is VALID [2022-04-07 15:11:53,441 INFO L290 TraceCheckUtils]: 51: Hoare triple {4454#false} ~cond := #in~cond; {4454#false} is VALID [2022-04-07 15:11:53,441 INFO L290 TraceCheckUtils]: 52: Hoare triple {4454#false} assume 0 == ~cond; {4454#false} is VALID [2022-04-07 15:11:53,441 INFO L290 TraceCheckUtils]: 53: Hoare triple {4454#false} assume !false; {4454#false} is VALID [2022-04-07 15:11:53,441 INFO L134 CoverageAnalysis]: Checked inductivity of 70 backedges. 8 proven. 62 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-07 15:11:53,441 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 15:11:53,688 INFO L290 TraceCheckUtils]: 53: Hoare triple {4454#false} assume !false; {4454#false} is VALID [2022-04-07 15:11:53,688 INFO L290 TraceCheckUtils]: 52: Hoare triple {4454#false} assume 0 == ~cond; {4454#false} is VALID [2022-04-07 15:11:53,688 INFO L290 TraceCheckUtils]: 51: Hoare triple {4454#false} ~cond := #in~cond; {4454#false} is VALID [2022-04-07 15:11:53,688 INFO L272 TraceCheckUtils]: 50: Hoare triple {4454#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {4454#false} is VALID [2022-04-07 15:11:53,689 INFO L290 TraceCheckUtils]: 49: Hoare triple {4607#(<= |main_#t~post6| 4)} assume !(#t~post6 < 5);havoc #t~post6; {4454#false} is VALID [2022-04-07 15:11:53,689 INFO L290 TraceCheckUtils]: 48: Hoare triple {4579#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4607#(<= |main_#t~post6| 4)} is VALID [2022-04-07 15:11:53,689 INFO L290 TraceCheckUtils]: 47: Hoare triple {4579#(<= ~counter~0 4)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {4579#(<= ~counter~0 4)} is VALID [2022-04-07 15:11:53,690 INFO L290 TraceCheckUtils]: 46: Hoare triple {4579#(<= ~counter~0 4)} assume !!(0 != ~a~0 && 0 != ~b~0); {4579#(<= ~counter~0 4)} is VALID [2022-04-07 15:11:53,690 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {4453#true} {4579#(<= ~counter~0 4)} #71#return; {4579#(<= ~counter~0 4)} is VALID [2022-04-07 15:11:53,690 INFO L290 TraceCheckUtils]: 44: Hoare triple {4453#true} assume true; {4453#true} is VALID [2022-04-07 15:11:53,691 INFO L290 TraceCheckUtils]: 43: Hoare triple {4453#true} assume !(0 == ~cond); {4453#true} is VALID [2022-04-07 15:11:53,691 INFO L290 TraceCheckUtils]: 42: Hoare triple {4453#true} ~cond := #in~cond; {4453#true} is VALID [2022-04-07 15:11:53,691 INFO L272 TraceCheckUtils]: 41: Hoare triple {4579#(<= ~counter~0 4)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {4453#true} is VALID [2022-04-07 15:11:53,691 INFO L290 TraceCheckUtils]: 40: Hoare triple {4579#(<= ~counter~0 4)} assume !!(#t~post6 < 5);havoc #t~post6; {4579#(<= ~counter~0 4)} is VALID [2022-04-07 15:11:53,692 INFO L290 TraceCheckUtils]: 39: Hoare triple {4551#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4579#(<= ~counter~0 4)} is VALID [2022-04-07 15:11:53,692 INFO L290 TraceCheckUtils]: 38: Hoare triple {4551#(<= ~counter~0 3)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {4551#(<= ~counter~0 3)} is VALID [2022-04-07 15:11:53,692 INFO L290 TraceCheckUtils]: 37: Hoare triple {4551#(<= ~counter~0 3)} assume !!(0 != ~a~0 && 0 != ~b~0); {4551#(<= ~counter~0 3)} is VALID [2022-04-07 15:11:53,693 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {4453#true} {4551#(<= ~counter~0 3)} #71#return; {4551#(<= ~counter~0 3)} is VALID [2022-04-07 15:11:53,693 INFO L290 TraceCheckUtils]: 35: Hoare triple {4453#true} assume true; {4453#true} is VALID [2022-04-07 15:11:53,693 INFO L290 TraceCheckUtils]: 34: Hoare triple {4453#true} assume !(0 == ~cond); {4453#true} is VALID [2022-04-07 15:11:53,693 INFO L290 TraceCheckUtils]: 33: Hoare triple {4453#true} ~cond := #in~cond; {4453#true} is VALID [2022-04-07 15:11:53,694 INFO L272 TraceCheckUtils]: 32: Hoare triple {4551#(<= ~counter~0 3)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {4453#true} is VALID [2022-04-07 15:11:53,699 INFO L290 TraceCheckUtils]: 31: Hoare triple {4551#(<= ~counter~0 3)} assume !!(#t~post6 < 5);havoc #t~post6; {4551#(<= ~counter~0 3)} is VALID [2022-04-07 15:11:53,700 INFO L290 TraceCheckUtils]: 30: Hoare triple {4523#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4551#(<= ~counter~0 3)} is VALID [2022-04-07 15:11:53,700 INFO L290 TraceCheckUtils]: 29: Hoare triple {4523#(<= ~counter~0 2)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {4523#(<= ~counter~0 2)} is VALID [2022-04-07 15:11:53,703 INFO L290 TraceCheckUtils]: 28: Hoare triple {4523#(<= ~counter~0 2)} assume !!(0 != ~a~0 && 0 != ~b~0); {4523#(<= ~counter~0 2)} is VALID [2022-04-07 15:11:53,704 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {4453#true} {4523#(<= ~counter~0 2)} #71#return; {4523#(<= ~counter~0 2)} is VALID [2022-04-07 15:11:53,704 INFO L290 TraceCheckUtils]: 26: Hoare triple {4453#true} assume true; {4453#true} is VALID [2022-04-07 15:11:53,704 INFO L290 TraceCheckUtils]: 25: Hoare triple {4453#true} assume !(0 == ~cond); {4453#true} is VALID [2022-04-07 15:11:53,704 INFO L290 TraceCheckUtils]: 24: Hoare triple {4453#true} ~cond := #in~cond; {4453#true} is VALID [2022-04-07 15:11:53,704 INFO L272 TraceCheckUtils]: 23: Hoare triple {4523#(<= ~counter~0 2)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {4453#true} is VALID [2022-04-07 15:11:53,704 INFO L290 TraceCheckUtils]: 22: Hoare triple {4523#(<= ~counter~0 2)} assume !!(#t~post6 < 5);havoc #t~post6; {4523#(<= ~counter~0 2)} is VALID [2022-04-07 15:11:53,705 INFO L290 TraceCheckUtils]: 21: Hoare triple {4495#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4523#(<= ~counter~0 2)} is VALID [2022-04-07 15:11:53,705 INFO L290 TraceCheckUtils]: 20: Hoare triple {4495#(<= ~counter~0 1)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {4495#(<= ~counter~0 1)} is VALID [2022-04-07 15:11:53,705 INFO L290 TraceCheckUtils]: 19: Hoare triple {4495#(<= ~counter~0 1)} assume !!(0 != ~a~0 && 0 != ~b~0); {4495#(<= ~counter~0 1)} is VALID [2022-04-07 15:11:53,709 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4453#true} {4495#(<= ~counter~0 1)} #71#return; {4495#(<= ~counter~0 1)} is VALID [2022-04-07 15:11:53,709 INFO L290 TraceCheckUtils]: 17: Hoare triple {4453#true} assume true; {4453#true} is VALID [2022-04-07 15:11:53,709 INFO L290 TraceCheckUtils]: 16: Hoare triple {4453#true} assume !(0 == ~cond); {4453#true} is VALID [2022-04-07 15:11:53,709 INFO L290 TraceCheckUtils]: 15: Hoare triple {4453#true} ~cond := #in~cond; {4453#true} is VALID [2022-04-07 15:11:53,709 INFO L272 TraceCheckUtils]: 14: Hoare triple {4495#(<= ~counter~0 1)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {4453#true} is VALID [2022-04-07 15:11:53,710 INFO L290 TraceCheckUtils]: 13: Hoare triple {4495#(<= ~counter~0 1)} assume !!(#t~post6 < 5);havoc #t~post6; {4495#(<= ~counter~0 1)} is VALID [2022-04-07 15:11:53,710 INFO L290 TraceCheckUtils]: 12: Hoare triple {4461#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4495#(<= ~counter~0 1)} is VALID [2022-04-07 15:11:53,710 INFO L290 TraceCheckUtils]: 11: Hoare triple {4461#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {4461#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:53,711 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4453#true} {4461#(<= ~counter~0 0)} #69#return; {4461#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:53,711 INFO L290 TraceCheckUtils]: 9: Hoare triple {4453#true} assume true; {4453#true} is VALID [2022-04-07 15:11:53,711 INFO L290 TraceCheckUtils]: 8: Hoare triple {4453#true} assume !(0 == ~cond); {4453#true} is VALID [2022-04-07 15:11:53,711 INFO L290 TraceCheckUtils]: 7: Hoare triple {4453#true} ~cond := #in~cond; {4453#true} is VALID [2022-04-07 15:11:53,711 INFO L272 TraceCheckUtils]: 6: Hoare triple {4461#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4453#true} is VALID [2022-04-07 15:11:53,712 INFO L290 TraceCheckUtils]: 5: Hoare triple {4461#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4461#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:53,713 INFO L272 TraceCheckUtils]: 4: Hoare triple {4461#(<= ~counter~0 0)} call #t~ret7 := main(); {4461#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:53,713 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4461#(<= ~counter~0 0)} {4453#true} #77#return; {4461#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:53,713 INFO L290 TraceCheckUtils]: 2: Hoare triple {4461#(<= ~counter~0 0)} assume true; {4461#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:53,714 INFO L290 TraceCheckUtils]: 1: Hoare triple {4453#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4461#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:53,714 INFO L272 TraceCheckUtils]: 0: Hoare triple {4453#true} call ULTIMATE.init(); {4453#true} is VALID [2022-04-07 15:11:53,714 INFO L134 CoverageAnalysis]: Checked inductivity of 70 backedges. 8 proven. 38 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-07 15:11:53,714 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 15:11:53,714 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1538689547] [2022-04-07 15:11:53,714 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 15:11:53,714 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1822258370] [2022-04-07 15:11:53,715 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1822258370] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 15:11:53,715 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 15:11:53,715 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 8 [2022-04-07 15:11:53,715 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [990721168] [2022-04-07 15:11:53,715 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 15:11:53,715 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 5.75) internal successors, (46), 8 states have internal predecessors, (46), 7 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (11), 5 states have call predecessors, (11), 6 states have call successors, (11) Word has length 54 [2022-04-07 15:11:53,716 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 15:11:53,716 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 5.75) internal successors, (46), 8 states have internal predecessors, (46), 7 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (11), 5 states have call predecessors, (11), 6 states have call successors, (11) [2022-04-07 15:11:53,774 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 15:11:53,775 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-07 15:11:53,775 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 15:11:53,775 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-07 15:11:53,775 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=33, Unknown=0, NotChecked=0, Total=56 [2022-04-07 15:11:53,776 INFO L87 Difference]: Start difference. First operand 66 states and 79 transitions. Second operand has 8 states, 8 states have (on average 5.75) internal successors, (46), 8 states have internal predecessors, (46), 7 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (11), 5 states have call predecessors, (11), 6 states have call successors, (11) [2022-04-07 15:11:54,007 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:11:54,008 INFO L93 Difference]: Finished difference Result 85 states and 102 transitions. [2022-04-07 15:11:54,008 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-07 15:11:54,008 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 5.75) internal successors, (46), 8 states have internal predecessors, (46), 7 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (11), 5 states have call predecessors, (11), 6 states have call successors, (11) Word has length 54 [2022-04-07 15:11:54,008 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 15:11:54,008 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 5.75) internal successors, (46), 8 states have internal predecessors, (46), 7 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (11), 5 states have call predecessors, (11), 6 states have call successors, (11) [2022-04-07 15:11:54,010 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 99 transitions. [2022-04-07 15:11:54,010 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 5.75) internal successors, (46), 8 states have internal predecessors, (46), 7 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (11), 5 states have call predecessors, (11), 6 states have call successors, (11) [2022-04-07 15:11:54,011 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 99 transitions. [2022-04-07 15:11:54,011 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 99 transitions. [2022-04-07 15:11:54,104 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 99 edges. 99 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 15:11:54,106 INFO L225 Difference]: With dead ends: 85 [2022-04-07 15:11:54,106 INFO L226 Difference]: Without dead ends: 77 [2022-04-07 15:11:54,106 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 111 GetRequests, 100 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=51, Invalid=81, Unknown=0, NotChecked=0, Total=132 [2022-04-07 15:11:54,107 INFO L913 BasicCegarLoop]: 34 mSDtfsCounter, 37 mSDsluCounter, 116 mSDsCounter, 0 mSdLazyCounter, 27 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 37 SdHoareTripleChecker+Valid, 150 SdHoareTripleChecker+Invalid, 37 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 27 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 15:11:54,107 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [37 Valid, 150 Invalid, 37 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 27 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 15:11:54,107 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 77 states. [2022-04-07 15:11:54,150 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 77 to 77. [2022-04-07 15:11:54,151 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 15:11:54,151 INFO L82 GeneralOperation]: Start isEquivalent. First operand 77 states. Second operand has 77 states, 58 states have (on average 1.293103448275862) internal successors, (75), 59 states have internal predecessors, (75), 10 states have call successors, (10), 9 states have call predecessors, (10), 8 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 15:11:54,151 INFO L74 IsIncluded]: Start isIncluded. First operand 77 states. Second operand has 77 states, 58 states have (on average 1.293103448275862) internal successors, (75), 59 states have internal predecessors, (75), 10 states have call successors, (10), 9 states have call predecessors, (10), 8 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 15:11:54,151 INFO L87 Difference]: Start difference. First operand 77 states. Second operand has 77 states, 58 states have (on average 1.293103448275862) internal successors, (75), 59 states have internal predecessors, (75), 10 states have call successors, (10), 9 states have call predecessors, (10), 8 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 15:11:54,152 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:11:54,153 INFO L93 Difference]: Finished difference Result 77 states and 93 transitions. [2022-04-07 15:11:54,153 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 93 transitions. [2022-04-07 15:11:54,153 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:11:54,153 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:11:54,153 INFO L74 IsIncluded]: Start isIncluded. First operand has 77 states, 58 states have (on average 1.293103448275862) internal successors, (75), 59 states have internal predecessors, (75), 10 states have call successors, (10), 9 states have call predecessors, (10), 8 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 77 states. [2022-04-07 15:11:54,153 INFO L87 Difference]: Start difference. First operand has 77 states, 58 states have (on average 1.293103448275862) internal successors, (75), 59 states have internal predecessors, (75), 10 states have call successors, (10), 9 states have call predecessors, (10), 8 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 77 states. [2022-04-07 15:11:54,154 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:11:54,154 INFO L93 Difference]: Finished difference Result 77 states and 93 transitions. [2022-04-07 15:11:54,154 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 93 transitions. [2022-04-07 15:11:54,155 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:11:54,155 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:11:54,155 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 15:11:54,155 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 15:11:54,155 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 77 states, 58 states have (on average 1.293103448275862) internal successors, (75), 59 states have internal predecessors, (75), 10 states have call successors, (10), 9 states have call predecessors, (10), 8 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 15:11:54,156 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 77 states to 77 states and 93 transitions. [2022-04-07 15:11:54,156 INFO L78 Accepts]: Start accepts. Automaton has 77 states and 93 transitions. Word has length 54 [2022-04-07 15:11:54,156 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 15:11:54,156 INFO L478 AbstractCegarLoop]: Abstraction has 77 states and 93 transitions. [2022-04-07 15:11:54,156 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 5.75) internal successors, (46), 8 states have internal predecessors, (46), 7 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (11), 5 states have call predecessors, (11), 6 states have call successors, (11) [2022-04-07 15:11:54,157 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 93 transitions. [2022-04-07 15:11:54,157 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-07 15:11:54,157 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 15:11:54,157 INFO L499 BasicCegarLoop]: trace histogram [6, 6, 5, 5, 5, 5, 5, 5, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 15:11:54,174 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Ended with exit code 0 [2022-04-07 15:11:54,362 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-04-07 15:11:54,362 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 15:11:54,363 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 15:11:54,363 INFO L85 PathProgramCache]: Analyzing trace with hash -323774, now seen corresponding path program 3 times [2022-04-07 15:11:54,363 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 15:11:54,363 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2062224256] [2022-04-07 15:11:54,363 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:11:54,363 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 15:11:54,381 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 15:11:54,382 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1562725153] [2022-04-07 15:11:54,382 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-07 15:11:54,382 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 15:11:54,382 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 15:11:54,383 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 15:11:54,384 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-04-07 15:11:54,457 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 6 check-sat command(s) [2022-04-07 15:11:54,457 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-04-07 15:11:54,457 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-04-07 15:11:54,552 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-04-07 15:11:54,590 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-04-07 15:11:54,590 INFO L618 BasicCegarLoop]: Counterexample is feasible [2022-04-07 15:11:54,591 INFO L788 garLoopResultBuilder]: Registering result UNSAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-07 15:11:54,623 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2022-04-07 15:11:54,809 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable10 [2022-04-07 15:11:54,811 INFO L719 BasicCegarLoop]: Path program histogram: [3, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 15:11:54,813 INFO L178 ceAbstractionStarter]: Computing trace abstraction results [2022-04-07 15:11:54,845 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-07 15:11:54,846 WARN L170 areAnnotationChecker]: ULTIMATE.initENTRY has no Hoare annotation [2022-04-07 15:11:54,846 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-04-07 15:11:54,846 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-04-07 15:11:54,846 WARN L170 areAnnotationChecker]: assume_abort_if_notENTRY has no Hoare annotation [2022-04-07 15:11:54,846 WARN L170 areAnnotationChecker]: mainENTRY has no Hoare annotation [2022-04-07 15:11:54,846 WARN L170 areAnnotationChecker]: __VERIFIER_assertENTRY has no Hoare annotation [2022-04-07 15:11:54,846 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-07 15:11:54,846 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-07 15:11:54,846 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-04-07 15:11:54,846 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-04-07 15:11:54,846 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-04-07 15:11:54,846 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-04-07 15:11:54,846 WARN L170 areAnnotationChecker]: L26 has no Hoare annotation [2022-04-07 15:11:54,846 WARN L170 areAnnotationChecker]: L26 has no Hoare annotation [2022-04-07 15:11:54,846 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-07 15:11:54,846 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-07 15:11:54,846 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-07 15:11:54,846 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-07 15:11:54,846 WARN L170 areAnnotationChecker]: L9-2 has no Hoare annotation [2022-04-07 15:11:54,846 WARN L170 areAnnotationChecker]: L26-1 has no Hoare annotation [2022-04-07 15:11:54,846 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-04-07 15:11:54,846 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-04-07 15:11:54,847 WARN L170 areAnnotationChecker]: L12-2 has no Hoare annotation [2022-04-07 15:11:54,847 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-07 15:11:54,847 WARN L170 areAnnotationChecker]: L46-2 has no Hoare annotation [2022-04-07 15:11:54,847 WARN L170 areAnnotationChecker]: L46-2 has no Hoare annotation [2022-04-07 15:11:54,847 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-07 15:11:54,847 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-07 15:11:54,847 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-07 15:11:54,847 WARN L170 areAnnotationChecker]: L33-3 has no Hoare annotation [2022-04-07 15:11:54,847 WARN L170 areAnnotationChecker]: L33-3 has no Hoare annotation [2022-04-07 15:11:54,847 WARN L170 areAnnotationChecker]: L33-1 has no Hoare annotation [2022-04-07 15:11:54,847 WARN L170 areAnnotationChecker]: L33-1 has no Hoare annotation [2022-04-07 15:11:54,847 WARN L170 areAnnotationChecker]: L34-1 has no Hoare annotation [2022-04-07 15:11:54,847 WARN L170 areAnnotationChecker]: L34-1 has no Hoare annotation [2022-04-07 15:11:54,847 WARN L170 areAnnotationChecker]: L56 has no Hoare annotation [2022-04-07 15:11:54,847 WARN L170 areAnnotationChecker]: L56 has no Hoare annotation [2022-04-07 15:11:54,847 WARN L170 areAnnotationChecker]: L57 has no Hoare annotation [2022-04-07 15:11:54,847 WARN L170 areAnnotationChecker]: L34 has no Hoare annotation [2022-04-07 15:11:54,847 WARN L170 areAnnotationChecker]: L34 has no Hoare annotation [2022-04-07 15:11:54,847 WARN L170 areAnnotationChecker]: L39 has no Hoare annotation [2022-04-07 15:11:54,847 WARN L170 areAnnotationChecker]: L39 has no Hoare annotation [2022-04-07 15:11:54,847 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-07 15:11:54,847 WARN L170 areAnnotationChecker]: L43 has no Hoare annotation [2022-04-07 15:11:54,847 WARN L170 areAnnotationChecker]: L43 has no Hoare annotation [2022-04-07 15:11:54,847 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-07 15:11:54,847 WARN L170 areAnnotationChecker]: L46 has no Hoare annotation [2022-04-07 15:11:54,848 WARN L170 areAnnotationChecker]: L46 has no Hoare annotation [2022-04-07 15:11:54,848 INFO L163 areAnnotationChecker]: CFG has 0 edges. 0 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-07 15:11:54,848 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 07.04 03:11:54 BoogieIcfgContainer [2022-04-07 15:11:54,848 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-07 15:11:54,849 INFO L158 Benchmark]: Toolchain (without parser) took 131697.47ms. Allocated memory was 175.1MB in the beginning and 210.8MB in the end (delta: 35.7MB). Free memory was 122.5MB in the beginning and 118.4MB in the end (delta: 4.1MB). Peak memory consumption was 40.8MB. Max. memory is 8.0GB. [2022-04-07 15:11:54,849 INFO L158 Benchmark]: CDTParser took 0.11ms. Allocated memory is still 175.1MB. Free memory was 138.8MB in the beginning and 138.7MB in the end (delta: 151.8kB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-07 15:11:54,849 INFO L158 Benchmark]: CACSL2BoogieTranslator took 243.12ms. Allocated memory is still 175.1MB. Free memory was 122.3MB in the beginning and 148.9MB in the end (delta: -26.6MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-07 15:11:54,849 INFO L158 Benchmark]: Boogie Preprocessor took 43.22ms. Allocated memory is still 175.1MB. Free memory was 148.9MB in the beginning and 147.2MB in the end (delta: 1.7MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-07 15:11:54,849 INFO L158 Benchmark]: RCFGBuilder took 353.66ms. Allocated memory is still 175.1MB. Free memory was 147.2MB in the beginning and 134.7MB in the end (delta: 12.6MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-07 15:11:54,850 INFO L158 Benchmark]: TraceAbstraction took 131052.66ms. Allocated memory was 175.1MB in the beginning and 210.8MB in the end (delta: 35.7MB). Free memory was 134.0MB in the beginning and 118.4MB in the end (delta: 15.6MB). Peak memory consumption was 52.3MB. Max. memory is 8.0GB. [2022-04-07 15:11:54,850 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.11ms. Allocated memory is still 175.1MB. Free memory was 138.8MB in the beginning and 138.7MB in the end (delta: 151.8kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 243.12ms. Allocated memory is still 175.1MB. Free memory was 122.3MB in the beginning and 148.9MB in the end (delta: -26.6MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * Boogie Preprocessor took 43.22ms. Allocated memory is still 175.1MB. Free memory was 148.9MB in the beginning and 147.2MB in the end (delta: 1.7MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 353.66ms. Allocated memory is still 175.1MB. Free memory was 147.2MB in the beginning and 134.7MB in the end (delta: 12.6MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * TraceAbstraction took 131052.66ms. Allocated memory was 175.1MB in the beginning and 210.8MB in the end (delta: 35.7MB). Free memory was 134.0MB in the beginning and 118.4MB in the end (delta: 15.6MB). Peak memory consumption was 52.3MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - CounterExampleResult [Line: 14]: a call to reach_error is reachable a call to reach_error is reachable We found a FailurePath: [L19] int counter = 0; VAL [\old(counter)=10, counter=0] [L21] int x, y; [L22] long long a, b, p, q; [L24] x = __VERIFIER_nondet_int() [L25] y = __VERIFIER_nondet_int() [L26] CALL assume_abort_if_not(y >= 1) VAL [\old(cond)=1, \old(counter)=0, counter=0] [L9] COND FALSE !(!cond) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=0] [L26] RET assume_abort_if_not(y >= 1) VAL [\old(counter)=0, counter=0, x=32, y=64] [L28] a = x [L29] b = y [L30] p = 1 [L31] q = 0 VAL [\old(counter)=0, a=32, b=64, counter=0, p=1, q=0, x=32, y=64] [L33] EXPR counter++ VAL [\old(counter)=0, a=32, b=64, counter=1, counter++=0, p=1, q=0, x=32, y=64] [L33] COND TRUE counter++<5 [L34] CALL __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(cond)=1, \old(counter)=0, counter=1] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=1] [L34] RET __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(counter)=0, a=32, b=64, counter=1, p=1, q=0, x=32, y=64] [L36] COND FALSE !(!(a != 0 && b != 0)) VAL [\old(counter)=0, a=32, b=64, counter=1, p=1, q=0, x=32, y=64] [L39] COND TRUE a % 2 == 0 && b % 2 == 0 [L40] a = a / 2 [L41] b = b / 2 [L42] p = 4 * p VAL [\old(counter)=0, a=16, b=32, counter=1, p=4, q=0, x=32, y=64] [L33] EXPR counter++ VAL [\old(counter)=0, a=16, b=32, counter=2, counter++=1, p=4, q=0, x=32, y=64] [L33] COND TRUE counter++<5 [L34] CALL __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(cond)=1, \old(counter)=0, counter=2] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=2] [L34] RET __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(counter)=0, a=16, b=32, counter=2, p=4, q=0, x=32, y=64] [L36] COND FALSE !(!(a != 0 && b != 0)) VAL [\old(counter)=0, a=16, b=32, counter=2, p=4, q=0, x=32, y=64] [L39] COND TRUE a % 2 == 0 && b % 2 == 0 [L40] a = a / 2 [L41] b = b / 2 [L42] p = 4 * p VAL [\old(counter)=0, a=8, b=16, counter=2, p=16, q=0, x=32, y=64] [L33] EXPR counter++ VAL [\old(counter)=0, a=8, b=16, counter=3, counter++=2, p=16, q=0, x=32, y=64] [L33] COND TRUE counter++<5 [L34] CALL __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(cond)=1, \old(counter)=0, counter=3] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=3] [L34] RET __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(counter)=0, a=8, b=16, counter=3, p=16, q=0, x=32, y=64] [L36] COND FALSE !(!(a != 0 && b != 0)) VAL [\old(counter)=0, a=8, b=16, counter=3, p=16, q=0, x=32, y=64] [L39] COND TRUE a % 2 == 0 && b % 2 == 0 [L40] a = a / 2 [L41] b = b / 2 [L42] p = 4 * p VAL [\old(counter)=0, a=4, b=8, counter=3, p=64, q=0, x=32, y=64] [L33] EXPR counter++ VAL [\old(counter)=0, a=4, b=8, counter=4, counter++=3, p=64, q=0, x=32, y=64] [L33] COND TRUE counter++<5 [L34] CALL __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(cond)=1, \old(counter)=0, counter=4] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=4] [L34] RET __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(counter)=0, a=4, b=8, counter=4, p=64, q=0, x=32, y=64] [L36] COND FALSE !(!(a != 0 && b != 0)) VAL [\old(counter)=0, a=4, b=8, counter=4, p=64, q=0, x=32, y=64] [L39] COND TRUE a % 2 == 0 && b % 2 == 0 [L40] a = a / 2 [L41] b = b / 2 [L42] p = 4 * p VAL [\old(counter)=0, a=2, b=4, counter=4, p=256, q=0, x=32, y=64] [L33] EXPR counter++ VAL [\old(counter)=0, a=2, b=4, counter=5, counter++=4, p=256, q=0, x=32, y=64] [L33] COND TRUE counter++<5 [L34] CALL __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(cond)=1, \old(counter)=0, counter=5] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=5] [L34] RET __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(counter)=0, a=2, b=4, counter=5, p=256, q=0, x=32, y=64] [L36] COND FALSE !(!(a != 0 && b != 0)) VAL [\old(counter)=0, a=2, b=4, counter=5, p=256, q=0, x=32, y=64] [L39] COND TRUE a % 2 == 0 && b % 2 == 0 [L40] a = a / 2 [L41] b = b / 2 [L42] p = 4 * p VAL [\old(counter)=0, a=1, b=2, counter=5, p=1024, q=0, x=32, y=64] [L33] EXPR counter++ VAL [\old(counter)=0, a=1, b=2, counter=6, counter++=5, p=1024, q=0, x=32, y=64] [L33] COND FALSE !(counter++<5) [L56] CALL __VERIFIER_assert(q == (long long) x * y) VAL [\old(cond)=0, \old(counter)=0, counter=6] [L12] COND TRUE !(cond) VAL [\old(cond)=0, \old(counter)=0, cond=0, counter=6] [L14] reach_error() VAL [\old(cond)=0, \old(counter)=0, cond=0, counter=6] - StatisticsResult: Ultimate Automizer benchmark data CFG has 6 procedures, 35 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 131.0s, OverallIterations: 11, TraceHistogramMax: 6, PathProgramHistogramMax: 3, EmptinessCheckTime: 0.0s, AutomataDifference: 10.4s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 319 SdHoareTripleChecker+Valid, 3.2s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 306 mSDsluCounter, 1182 SdHoareTripleChecker+Invalid, 3.2s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 877 mSDsCounter, 157 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 812 IncrementalHoareTripleChecker+Invalid, 969 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 157 mSolverCounterUnsat, 305 mSDtfsCounter, 812 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 472 GetRequests, 378 SyntacticMatches, 4 SemanticMatches, 90 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 155 ImplicationChecksByTransitivity, 1.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=113occurred in iteration=8, InterpolantAutomatonStates: 81, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.5s AutomataMinimizationTime, 10 MinimizatonAttempts, 124 StatesRemovedByMinimization, 8 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.1s SsaConstructionTime, 0.3s SatisfiabilityAnalysisTime, 114.7s InterpolantComputationTime, 357 NumberOfCodeBlocks, 357 NumberOfCodeBlocksAsserted, 17 NumberOfCheckSat, 451 ConstructedInterpolants, 0 QuantifiedInterpolants, 1538 SizeOfPredicates, 30 NumberOfNonLiveVariables, 1048 ConjunctsInSsa, 116 ConjunctsInUnsatCore, 15 InterpolantComputations, 6 PerfectInterpolantSequences, 118/236 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be incorrect! [2022-04-07 15:11:54,880 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Ended with exit code 0 Received shutdown request...