/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/prodbin-ll_unwindbound10.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-07 15:11:50,460 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-07 15:11:50,461 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-07 15:11:50,498 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-07 15:11:50,498 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-07 15:11:50,502 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-07 15:11:50,508 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-07 15:11:50,513 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-07 15:11:50,515 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-07 15:11:50,521 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-07 15:11:50,521 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-07 15:11:50,522 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-07 15:11:50,522 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-07 15:11:50,523 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-07 15:11:50,524 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-07 15:11:50,524 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-07 15:11:50,525 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-07 15:11:50,526 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-07 15:11:50,527 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-07 15:11:50,535 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-07 15:11:50,538 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-07 15:11:50,539 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-07 15:11:50,541 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-07 15:11:50,542 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-07 15:11:50,543 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-07 15:11:50,548 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-07 15:11:50,548 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-07 15:11:50,548 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-07 15:11:50,549 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-07 15:11:50,549 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-07 15:11:50,550 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-07 15:11:50,550 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-07 15:11:50,552 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-07 15:11:50,552 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-07 15:11:50,553 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-07 15:11:50,553 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-07 15:11:50,554 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-07 15:11:50,554 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-07 15:11:50,554 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-07 15:11:50,554 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-07 15:11:50,555 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-07 15:11:50,557 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-07 15:11:50,558 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:11:50,590 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-07 15:11:50,591 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-07 15:11:50,591 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-04-07 15:11:50,591 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-04-07 15:11:50,592 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-07 15:11:50,592 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-07 15:11:50,593 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-07 15:11:50,593 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-07 15:11:50,593 INFO L138 SettingsManager]: * Use SBE=true [2022-04-07 15:11:50,594 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-07 15:11:50,594 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-07 15:11:50,594 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-07 15:11:50,594 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-07 15:11:50,594 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-07 15:11:50,595 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-07 15:11:50,595 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-07 15:11:50,595 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-07 15:11:50,596 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-07 15:11:50,596 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-07 15:11:50,596 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-07 15:11:50,597 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-07 15:11:50,597 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-07 15:11:50,597 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-07 15:11:50,597 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-07 15:11:50,597 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 15:11:50,597 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-07 15:11:50,597 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-07 15:11:50,598 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-07 15:11:50,598 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-07 15:11:50,598 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-07 15:11:50,598 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-04-07 15:11:50,598 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-04-07 15:11:50,598 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-07 15:11:50,598 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:11:50,795 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-07 15:11:50,812 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-07 15:11:50,814 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-07 15:11:50,815 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-07 15:11:50,817 INFO L275 PluginConnector]: CDTParser initialized [2022-04-07 15:11:50,818 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_unwindbound10.c [2022-04-07 15:11:50,877 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/f2c792f86/d4adb6246e9b4948b06b5090813cd891/FLAGafcd0abad [2022-04-07 15:11:51,282 INFO L306 CDTParser]: Found 1 translation units. [2022-04-07 15:11:51,283 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_unwindbound10.c [2022-04-07 15:11:51,288 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/f2c792f86/d4adb6246e9b4948b06b5090813cd891/FLAGafcd0abad [2022-04-07 15:11:51,302 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/f2c792f86/d4adb6246e9b4948b06b5090813cd891 [2022-04-07 15:11:51,304 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-07 15:11:51,305 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-07 15:11:51,306 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-07 15:11:51,307 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-07 15:11:51,309 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-07 15:11:51,310 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 03:11:51" (1/1) ... [2022-04-07 15:11:51,311 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1fe3bd3d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 03:11:51, skipping insertion in model container [2022-04-07 15:11:51,311 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 03:11:51" (1/1) ... [2022-04-07 15:11:51,318 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-07 15:11:51,330 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-07 15:11:51,478 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/prodbin-ll_unwindbound10.c[537,550] [2022-04-07 15:11:51,497 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 15:11:51,505 INFO L203 MainTranslator]: Completed pre-run [2022-04-07 15:11:51,516 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/prodbin-ll_unwindbound10.c[537,550] [2022-04-07 15:11:51,521 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 15:11:51,533 INFO L208 MainTranslator]: Completed translation [2022-04-07 15:11:51,534 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 03:11:51 WrapperNode [2022-04-07 15:11:51,534 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-07 15:11:51,535 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-07 15:11:51,535 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-07 15:11:51,535 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-07 15:11:51,543 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 03:11:51" (1/1) ... [2022-04-07 15:11:51,544 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 03:11:51" (1/1) ... [2022-04-07 15:11:51,549 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 03:11:51" (1/1) ... [2022-04-07 15:11:51,549 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 03:11:51" (1/1) ... [2022-04-07 15:11:51,555 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 03:11:51" (1/1) ... [2022-04-07 15:11:51,559 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 03:11:51" (1/1) ... [2022-04-07 15:11:51,560 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 03:11:51" (1/1) ... [2022-04-07 15:11:51,561 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-07 15:11:51,562 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-07 15:11:51,562 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-07 15:11:51,562 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-07 15:11:51,564 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 03:11:51" (1/1) ... [2022-04-07 15:11:51,572 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 15:11:51,580 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 15:11:51,590 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:11:51,593 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:11:51,618 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-07 15:11:51,618 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-07 15:11:51,619 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-07 15:11:51,619 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-07 15:11:51,619 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-07 15:11:51,619 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-07 15:11:51,619 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-07 15:11:51,620 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-07 15:11:51,620 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-07 15:11:51,620 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-07 15:11:51,620 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-07 15:11:51,620 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-07 15:11:51,620 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-07 15:11:51,620 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-07 15:11:51,620 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-07 15:11:51,621 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-07 15:11:51,621 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-07 15:11:51,621 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-07 15:11:51,621 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-07 15:11:51,621 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-07 15:11:51,675 INFO L234 CfgBuilder]: Building ICFG [2022-04-07 15:11:51,677 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-07 15:11:51,831 INFO L275 CfgBuilder]: Performing block encoding [2022-04-07 15:11:51,852 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-07 15:11:51,852 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-07 15:11:51,853 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 03:11:51 BoogieIcfgContainer [2022-04-07 15:11:51,854 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-07 15:11:51,855 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-07 15:11:51,855 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-07 15:11:51,858 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-07 15:11:51,859 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 07.04 03:11:51" (1/3) ... [2022-04-07 15:11:51,859 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1535c5b4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 03:11:51, skipping insertion in model container [2022-04-07 15:11:51,859 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 03:11:51" (2/3) ... [2022-04-07 15:11:51,860 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1535c5b4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 03:11:51, skipping insertion in model container [2022-04-07 15:11:51,860 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 03:11:51" (3/3) ... [2022-04-07 15:11:51,861 INFO L111 eAbstractionObserver]: Analyzing ICFG prodbin-ll_unwindbound10.c [2022-04-07 15:11:51,866 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-07 15:11:51,866 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-07 15:11:51,909 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-07 15:11:51,915 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:11:51,915 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-07 15:11:51,933 INFO L276 IsEmpty]: Start isEmpty. Operand has 30 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 5 states have call successors, (5), 4 states have call predecessors, (5), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-07 15:11:51,937 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-07 15:11:51,937 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 15:11:51,938 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:11:51,938 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 15:11:51,942 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 15:11:51,943 INFO L85 PathProgramCache]: Analyzing trace with hash -1523633710, now seen corresponding path program 1 times [2022-04-07 15:11:51,950 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 15:11:51,951 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1211878893] [2022-04-07 15:11:51,951 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:11:51,952 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 15:11:52,037 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:11:52,117 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-07 15:11:52,125 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:11:52,143 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#(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; {33#true} is VALID [2022-04-07 15:11:52,144 INFO L290 TraceCheckUtils]: 1: Hoare triple {33#true} assume true; {33#true} is VALID [2022-04-07 15:11:52,144 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {33#true} {33#true} #65#return; {33#true} is VALID [2022-04-07 15:11:52,145 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-07 15:11:52,147 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:11:52,159 INFO L290 TraceCheckUtils]: 0: Hoare triple {33#true} ~cond := #in~cond; {33#true} is VALID [2022-04-07 15:11:52,160 INFO L290 TraceCheckUtils]: 1: Hoare triple {33#true} assume 0 == ~cond;assume false; {34#false} is VALID [2022-04-07 15:11:52,161 INFO L290 TraceCheckUtils]: 2: Hoare triple {34#false} assume true; {34#false} is VALID [2022-04-07 15:11:52,161 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {34#false} {33#true} #59#return; {34#false} is VALID [2022-04-07 15:11:52,163 INFO L272 TraceCheckUtils]: 0: Hoare triple {33#true} call ULTIMATE.init(); {42#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-07 15:11:52,163 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#(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; {33#true} is VALID [2022-04-07 15:11:52,164 INFO L290 TraceCheckUtils]: 2: Hoare triple {33#true} assume true; {33#true} is VALID [2022-04-07 15:11:52,165 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {33#true} {33#true} #65#return; {33#true} is VALID [2022-04-07 15:11:52,165 INFO L272 TraceCheckUtils]: 4: Hoare triple {33#true} call #t~ret7 := main(); {33#true} is VALID [2022-04-07 15:11:52,166 INFO L290 TraceCheckUtils]: 5: Hoare triple {33#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {33#true} is VALID [2022-04-07 15:11:52,166 INFO L272 TraceCheckUtils]: 6: Hoare triple {33#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {33#true} is VALID [2022-04-07 15:11:52,166 INFO L290 TraceCheckUtils]: 7: Hoare triple {33#true} ~cond := #in~cond; {33#true} is VALID [2022-04-07 15:11:52,167 INFO L290 TraceCheckUtils]: 8: Hoare triple {33#true} assume 0 == ~cond;assume false; {34#false} is VALID [2022-04-07 15:11:52,167 INFO L290 TraceCheckUtils]: 9: Hoare triple {34#false} assume true; {34#false} is VALID [2022-04-07 15:11:52,167 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {34#false} {33#true} #59#return; {34#false} is VALID [2022-04-07 15:11:52,168 INFO L290 TraceCheckUtils]: 11: Hoare triple {34#false} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {34#false} is VALID [2022-04-07 15:11:52,169 INFO L290 TraceCheckUtils]: 12: Hoare triple {34#false} assume !true; {34#false} is VALID [2022-04-07 15:11:52,169 INFO L272 TraceCheckUtils]: 13: Hoare triple {34#false} call __VERIFIER_assert((if ~z~0 == ~a~0 * ~b~0 then 1 else 0)); {34#false} is VALID [2022-04-07 15:11:52,170 INFO L290 TraceCheckUtils]: 14: Hoare triple {34#false} ~cond := #in~cond; {34#false} is VALID [2022-04-07 15:11:52,171 INFO L290 TraceCheckUtils]: 15: Hoare triple {34#false} assume 0 == ~cond; {34#false} is VALID [2022-04-07 15:11:52,171 INFO L290 TraceCheckUtils]: 16: Hoare triple {34#false} assume !false; {34#false} is VALID [2022-04-07 15:11:52,171 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:11:52,172 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 15:11:52,172 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1211878893] [2022-04-07 15:11:52,173 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1211878893] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 15:11:52,173 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 15:11:52,174 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-07 15:11:52,176 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1284719718] [2022-04-07 15:11:52,177 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 15:11:52,183 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:11:52,185 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 15:11:52,188 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:11:52,232 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:11:52,233 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-07 15:11:52,233 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 15:11:52,259 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-07 15:11:52,260 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-07 15:11:52,263 INFO L87 Difference]: Start difference. First operand has 30 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 5 states have call successors, (5), 4 states have call predecessors, (5), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) 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:11:52,439 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:11:52,440 INFO L93 Difference]: Finished difference Result 52 states and 66 transitions. [2022-04-07 15:11:52,440 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-07 15:11:52,440 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:11:52,441 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 15:11:52,442 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:11:52,455 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 66 transitions. [2022-04-07 15:11:52,455 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:11:52,464 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 66 transitions. [2022-04-07 15:11:52,464 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 66 transitions. [2022-04-07 15:11:52,541 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 15:11:52,549 INFO L225 Difference]: With dead ends: 52 [2022-04-07 15:11:52,549 INFO L226 Difference]: Without dead ends: 26 [2022-04-07 15:11:52,552 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:11:52,555 INFO L913 BasicCegarLoop]: 31 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 15 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 35 SdHoareTripleChecker+Invalid, 19 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 15 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 15:11:52,556 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [11 Valid, 35 Invalid, 19 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 15 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 15:11:52,570 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 26 states. [2022-04-07 15:11:52,584 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 26 to 25. [2022-04-07 15:11:52,585 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 15:11:52,585 INFO L82 GeneralOperation]: Start isEquivalent. First operand 26 states. Second operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-07 15:11:52,586 INFO L74 IsIncluded]: Start isIncluded. First operand 26 states. Second operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-07 15:11:52,586 INFO L87 Difference]: Start difference. First operand 26 states. Second operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-07 15:11:52,591 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:11:52,592 INFO L93 Difference]: Finished difference Result 26 states and 29 transitions. [2022-04-07 15:11:52,592 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 29 transitions. [2022-04-07 15:11:52,592 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:11:52,592 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:11:52,593 INFO L74 IsIncluded]: Start isIncluded. First operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 26 states. [2022-04-07 15:11:52,594 INFO L87 Difference]: Start difference. First operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 26 states. [2022-04-07 15:11:52,596 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:11:52,597 INFO L93 Difference]: Finished difference Result 26 states and 29 transitions. [2022-04-07 15:11:52,598 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 29 transitions. [2022-04-07 15:11:52,600 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:11:52,600 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:11:52,600 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 15:11:52,600 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 15:11:52,601 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 16 states have (on average 1.25) internal successors, (20), 17 states have internal predecessors, (20), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-07 15:11:52,604 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 28 transitions. [2022-04-07 15:11:52,606 INFO L78 Accepts]: Start accepts. Automaton has 25 states and 28 transitions. Word has length 17 [2022-04-07 15:11:52,606 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 15:11:52,606 INFO L478 AbstractCegarLoop]: Abstraction has 25 states and 28 transitions. [2022-04-07 15:11:52,607 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:11:52,607 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 28 transitions. [2022-04-07 15:11:52,608 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-07 15:11:52,608 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 15:11:52,608 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:11:52,609 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-07 15:11:52,611 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 15:11:52,613 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 15:11:52,613 INFO L85 PathProgramCache]: Analyzing trace with hash -991958694, now seen corresponding path program 1 times [2022-04-07 15:11:52,614 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 15:11:52,614 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1955489886] [2022-04-07 15:11:52,614 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:11:52,615 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 15:11:52,655 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 15:11:52,655 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [835355685] [2022-04-07 15:11:52,659 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:11:52,659 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 15:11:52,659 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 15:11:52,664 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:11:52,665 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:11:52,721 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:11:52,724 INFO L263 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-07 15:11:52,743 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:11:52,755 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 15:11:52,889 INFO L272 TraceCheckUtils]: 0: Hoare triple {199#true} call ULTIMATE.init(); {199#true} is VALID [2022-04-07 15:11:52,890 INFO L290 TraceCheckUtils]: 1: Hoare triple {199#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; {207#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:52,890 INFO L290 TraceCheckUtils]: 2: Hoare triple {207#(<= ~counter~0 0)} assume true; {207#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:52,891 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {207#(<= ~counter~0 0)} {199#true} #65#return; {207#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:52,891 INFO L272 TraceCheckUtils]: 4: Hoare triple {207#(<= ~counter~0 0)} call #t~ret7 := main(); {207#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:52,892 INFO L290 TraceCheckUtils]: 5: Hoare triple {207#(<= ~counter~0 0)} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {207#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:52,892 INFO L272 TraceCheckUtils]: 6: Hoare triple {207#(<= ~counter~0 0)} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {207#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:52,893 INFO L290 TraceCheckUtils]: 7: Hoare triple {207#(<= ~counter~0 0)} ~cond := #in~cond; {207#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:52,893 INFO L290 TraceCheckUtils]: 8: Hoare triple {207#(<= ~counter~0 0)} assume !(0 == ~cond); {207#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:52,894 INFO L290 TraceCheckUtils]: 9: Hoare triple {207#(<= ~counter~0 0)} assume true; {207#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:52,894 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {207#(<= ~counter~0 0)} {207#(<= ~counter~0 0)} #59#return; {207#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:52,895 INFO L290 TraceCheckUtils]: 11: Hoare triple {207#(<= ~counter~0 0)} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {207#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:52,895 INFO L290 TraceCheckUtils]: 12: Hoare triple {207#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {241#(<= |main_#t~post6| 0)} is VALID [2022-04-07 15:11:52,896 INFO L290 TraceCheckUtils]: 13: Hoare triple {241#(<= |main_#t~post6| 0)} assume !(#t~post6 < 10);havoc #t~post6; {200#false} is VALID [2022-04-07 15:11:52,896 INFO L272 TraceCheckUtils]: 14: Hoare triple {200#false} call __VERIFIER_assert((if ~z~0 == ~a~0 * ~b~0 then 1 else 0)); {200#false} is VALID [2022-04-07 15:11:52,896 INFO L290 TraceCheckUtils]: 15: Hoare triple {200#false} ~cond := #in~cond; {200#false} is VALID [2022-04-07 15:11:52,897 INFO L290 TraceCheckUtils]: 16: Hoare triple {200#false} assume 0 == ~cond; {200#false} is VALID [2022-04-07 15:11:52,897 INFO L290 TraceCheckUtils]: 17: Hoare triple {200#false} assume !false; {200#false} is VALID [2022-04-07 15:11:52,897 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:11:52,897 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 15:11:52,897 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 15:11:52,898 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1955489886] [2022-04-07 15:11:52,898 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 15:11:52,898 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [835355685] [2022-04-07 15:11:52,898 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [835355685] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 15:11:52,898 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 15:11:52,898 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-07 15:11:52,899 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [43120584] [2022-04-07 15:11:52,899 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 15:11:52,900 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:11:52,900 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 15:11:52,900 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:11:52,916 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:11:52,916 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-07 15:11:52,917 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 15:11:52,917 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-07 15:11:52,917 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-07 15:11:52,918 INFO L87 Difference]: Start difference. First operand 25 states and 28 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:11:52,968 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:11:52,968 INFO L93 Difference]: Finished difference Result 34 states and 37 transitions. [2022-04-07 15:11:52,968 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-07 15:11:52,969 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:11:52,969 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 15:11:52,969 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:11:52,971 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 37 transitions. [2022-04-07 15:11:52,971 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:11:52,973 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 37 transitions. [2022-04-07 15:11:52,973 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 37 transitions. [2022-04-07 15:11:53,003 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 15:11:53,004 INFO L225 Difference]: With dead ends: 34 [2022-04-07 15:11:53,004 INFO L226 Difference]: Without dead ends: 27 [2022-04-07 15:11:53,005 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:11:53,006 INFO L913 BasicCegarLoop]: 26 mSDtfsCounter, 0 mSDsluCounter, 40 mSDsCounter, 0 mSdLazyCounter, 7 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 66 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:11:53,006 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 66 Invalid, 7 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 7 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 15:11:53,007 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2022-04-07 15:11:53,013 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 27. [2022-04-07 15:11:53,013 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 15:11:53,014 INFO L82 GeneralOperation]: Start isEquivalent. First operand 27 states. Second operand has 27 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-07 15:11:53,014 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand has 27 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-07 15:11:53,014 INFO L87 Difference]: Start difference. First operand 27 states. Second operand has 27 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-07 15:11:53,016 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:11:53,016 INFO L93 Difference]: Finished difference Result 27 states and 30 transitions. [2022-04-07 15:11:53,016 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-07 15:11:53,017 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:11:53,017 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:11:53,017 INFO L74 IsIncluded]: Start isIncluded. First operand has 27 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 27 states. [2022-04-07 15:11:53,017 INFO L87 Difference]: Start difference. First operand has 27 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 27 states. [2022-04-07 15:11:53,019 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:11:53,019 INFO L93 Difference]: Finished difference Result 27 states and 30 transitions. [2022-04-07 15:11:53,019 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-07 15:11:53,020 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:11:53,020 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:11:53,020 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 15:11:53,020 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 15:11:53,020 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-07 15:11:53,021 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 30 transitions. [2022-04-07 15:11:53,022 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 30 transitions. Word has length 18 [2022-04-07 15:11:53,022 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 15:11:53,022 INFO L478 AbstractCegarLoop]: Abstraction has 27 states and 30 transitions. [2022-04-07 15:11:53,022 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:11:53,022 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-04-07 15:11:53,023 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-07 15:11:53,023 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 15:11:53,023 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:11:53,050 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:11:53,249 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:11:53,250 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 15:11:53,250 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 15:11:53,251 INFO L85 PathProgramCache]: Analyzing trace with hash -990171234, now seen corresponding path program 1 times [2022-04-07 15:11:53,251 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 15:11:53,251 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1403338325] [2022-04-07 15:11:53,251 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:11:53,251 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 15:11:53,270 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 15:11:53,270 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [56628824] [2022-04-07 15:11:53,270 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:11:53,271 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 15:11:53,271 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 15:11:53,275 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:11:53,277 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:11:53,317 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:11:53,318 INFO L263 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-07 15:11:53,326 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:11:53,327 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 15:11:53,433 INFO L272 TraceCheckUtils]: 0: Hoare triple {395#true} call ULTIMATE.init(); {395#true} is VALID [2022-04-07 15:11:53,434 INFO L290 TraceCheckUtils]: 1: Hoare triple {395#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; {395#true} is VALID [2022-04-07 15:11:53,434 INFO L290 TraceCheckUtils]: 2: Hoare triple {395#true} assume true; {395#true} is VALID [2022-04-07 15:11:53,434 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {395#true} {395#true} #65#return; {395#true} is VALID [2022-04-07 15:11:53,434 INFO L272 TraceCheckUtils]: 4: Hoare triple {395#true} call #t~ret7 := main(); {395#true} is VALID [2022-04-07 15:11:53,434 INFO L290 TraceCheckUtils]: 5: Hoare triple {395#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {395#true} is VALID [2022-04-07 15:11:53,434 INFO L272 TraceCheckUtils]: 6: Hoare triple {395#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {395#true} is VALID [2022-04-07 15:11:53,435 INFO L290 TraceCheckUtils]: 7: Hoare triple {395#true} ~cond := #in~cond; {395#true} is VALID [2022-04-07 15:11:53,435 INFO L290 TraceCheckUtils]: 8: Hoare triple {395#true} assume !(0 == ~cond); {395#true} is VALID [2022-04-07 15:11:53,435 INFO L290 TraceCheckUtils]: 9: Hoare triple {395#true} assume true; {395#true} is VALID [2022-04-07 15:11:53,435 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {395#true} {395#true} #59#return; {395#true} is VALID [2022-04-07 15:11:53,436 INFO L290 TraceCheckUtils]: 11: Hoare triple {395#true} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {433#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 15:11:53,436 INFO L290 TraceCheckUtils]: 12: Hoare triple {433#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {433#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 15:11:53,437 INFO L290 TraceCheckUtils]: 13: Hoare triple {433#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 10);havoc #t~post6; {433#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 15:11:53,438 INFO L272 TraceCheckUtils]: 14: Hoare triple {433#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {443#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 15:11:53,439 INFO L290 TraceCheckUtils]: 15: Hoare triple {443#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {447#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 15:11:53,439 INFO L290 TraceCheckUtils]: 16: Hoare triple {447#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {396#false} is VALID [2022-04-07 15:11:53,439 INFO L290 TraceCheckUtils]: 17: Hoare triple {396#false} assume !false; {396#false} is VALID [2022-04-07 15:11:53,439 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:11:53,440 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 15:11:53,440 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 15:11:53,440 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1403338325] [2022-04-07 15:11:53,440 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 15:11:53,440 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [56628824] [2022-04-07 15:11:53,440 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [56628824] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 15:11:53,440 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 15:11:53,441 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-07 15:11:53,441 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2002160135] [2022-04-07 15:11:53,441 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 15:11:53,441 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:11:53,442 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 15:11:53,442 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:11:53,457 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:11:53,457 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-07 15:11:53,457 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 15:11:53,458 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-07 15:11:53,458 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-07 15:11:53,458 INFO L87 Difference]: Start difference. First operand 27 states and 30 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:11:53,579 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:11:53,579 INFO L93 Difference]: Finished difference Result 38 states and 43 transitions. [2022-04-07 15:11:53,579 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-07 15:11:53,580 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:11:53,580 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 15:11:53,580 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:11:53,582 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 43 transitions. [2022-04-07 15:11:53,582 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:11:53,583 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 43 transitions. [2022-04-07 15:11:53,583 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 43 transitions. [2022-04-07 15:11:53,618 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 15:11:53,620 INFO L225 Difference]: With dead ends: 38 [2022-04-07 15:11:53,620 INFO L226 Difference]: Without dead ends: 36 [2022-04-07 15:11:53,620 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:11:53,621 INFO L913 BasicCegarLoop]: 21 mSDtfsCounter, 8 mSDsluCounter, 54 mSDsCounter, 0 mSdLazyCounter, 39 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 75 SdHoareTripleChecker+Invalid, 39 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 39 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 15:11:53,621 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [9 Valid, 75 Invalid, 39 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 39 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 15:11:53,622 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2022-04-07 15:11:53,629 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 32. [2022-04-07 15:11:53,629 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 15:11:53,629 INFO L82 GeneralOperation]: Start isEquivalent. First operand 36 states. Second operand has 32 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 23 states have internal predecessors, (25), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-07 15:11:53,629 INFO L74 IsIncluded]: Start isIncluded. First operand 36 states. Second operand has 32 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 23 states have internal predecessors, (25), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-07 15:11:53,630 INFO L87 Difference]: Start difference. First operand 36 states. Second operand has 32 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 23 states have internal predecessors, (25), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-07 15:11:53,632 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:11:53,632 INFO L93 Difference]: Finished difference Result 36 states and 41 transitions. [2022-04-07 15:11:53,632 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 41 transitions. [2022-04-07 15:11:53,632 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:11:53,632 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:11:53,633 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 23 states have internal predecessors, (25), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) Second operand 36 states. [2022-04-07 15:11:53,633 INFO L87 Difference]: Start difference. First operand has 32 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 23 states have internal predecessors, (25), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) Second operand 36 states. [2022-04-07 15:11:53,634 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:11:53,635 INFO L93 Difference]: Finished difference Result 36 states and 41 transitions. [2022-04-07 15:11:53,635 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 41 transitions. [2022-04-07 15:11:53,635 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:11:53,635 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:11:53,635 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 15:11:53,635 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 15:11:53,636 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 23 states have internal predecessors, (25), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 3 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-07 15:11:53,637 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 35 transitions. [2022-04-07 15:11:53,637 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 35 transitions. Word has length 18 [2022-04-07 15:11:53,637 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 15:11:53,637 INFO L478 AbstractCegarLoop]: Abstraction has 32 states and 35 transitions. [2022-04-07 15:11:53,638 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:11:53,638 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 35 transitions. [2022-04-07 15:11:53,638 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-04-07 15:11:53,638 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 15:11:53,638 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:11:53,663 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:11:53,864 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:11:53,864 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 15:11:53,865 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 15:11:53,865 INFO L85 PathProgramCache]: Analyzing trace with hash 1094479982, now seen corresponding path program 1 times [2022-04-07 15:11:53,865 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 15:11:53,865 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1083161638] [2022-04-07 15:11:53,865 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:11:53,865 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 15:11:53,882 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 15:11:53,883 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [291954968] [2022-04-07 15:11:53,883 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:11:53,883 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 15:11:53,883 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 15:11:53,898 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:11:53,918 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:11:53,954 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:11:53,955 INFO L263 TraceCheckSpWp]: Trace formula consists of 95 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-07 15:11:53,964 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:11:53,967 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 15:11:54,080 INFO L272 TraceCheckUtils]: 0: Hoare triple {624#true} call ULTIMATE.init(); {624#true} is VALID [2022-04-07 15:11:54,081 INFO L290 TraceCheckUtils]: 1: Hoare triple {624#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; {624#true} is VALID [2022-04-07 15:11:54,081 INFO L290 TraceCheckUtils]: 2: Hoare triple {624#true} assume true; {624#true} is VALID [2022-04-07 15:11:54,081 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {624#true} {624#true} #65#return; {624#true} is VALID [2022-04-07 15:11:54,081 INFO L272 TraceCheckUtils]: 4: Hoare triple {624#true} call #t~ret7 := main(); {624#true} is VALID [2022-04-07 15:11:54,081 INFO L290 TraceCheckUtils]: 5: Hoare triple {624#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {624#true} is VALID [2022-04-07 15:11:54,082 INFO L272 TraceCheckUtils]: 6: Hoare triple {624#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {624#true} is VALID [2022-04-07 15:11:54,082 INFO L290 TraceCheckUtils]: 7: Hoare triple {624#true} ~cond := #in~cond; {650#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 15:11:54,082 INFO L290 TraceCheckUtils]: 8: Hoare triple {650#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {654#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 15:11:54,083 INFO L290 TraceCheckUtils]: 9: Hoare triple {654#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {654#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 15:11:54,084 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {654#(not (= |assume_abort_if_not_#in~cond| 0))} {624#true} #59#return; {661#(<= 1 main_~b~0)} is VALID [2022-04-07 15:11:54,084 INFO L290 TraceCheckUtils]: 11: Hoare triple {661#(<= 1 main_~b~0)} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {665#(<= 1 main_~y~0)} is VALID [2022-04-07 15:11:54,084 INFO L290 TraceCheckUtils]: 12: Hoare triple {665#(<= 1 main_~y~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {665#(<= 1 main_~y~0)} is VALID [2022-04-07 15:11:54,086 INFO L290 TraceCheckUtils]: 13: Hoare triple {665#(<= 1 main_~y~0)} assume !!(#t~post6 < 10);havoc #t~post6; {665#(<= 1 main_~y~0)} is VALID [2022-04-07 15:11:54,089 INFO L272 TraceCheckUtils]: 14: Hoare triple {665#(<= 1 main_~y~0)} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {624#true} is VALID [2022-04-07 15:11:54,089 INFO L290 TraceCheckUtils]: 15: Hoare triple {624#true} ~cond := #in~cond; {624#true} is VALID [2022-04-07 15:11:54,089 INFO L290 TraceCheckUtils]: 16: Hoare triple {624#true} assume !(0 == ~cond); {624#true} is VALID [2022-04-07 15:11:54,092 INFO L290 TraceCheckUtils]: 17: Hoare triple {624#true} assume true; {624#true} is VALID [2022-04-07 15:11:54,095 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {624#true} {665#(<= 1 main_~y~0)} #61#return; {665#(<= 1 main_~y~0)} is VALID [2022-04-07 15:11:54,096 INFO L290 TraceCheckUtils]: 19: Hoare triple {665#(<= 1 main_~y~0)} assume !(0 != ~y~0); {625#false} is VALID [2022-04-07 15:11:54,096 INFO L272 TraceCheckUtils]: 20: Hoare triple {625#false} call __VERIFIER_assert((if ~z~0 == ~a~0 * ~b~0 then 1 else 0)); {625#false} is VALID [2022-04-07 15:11:54,096 INFO L290 TraceCheckUtils]: 21: Hoare triple {625#false} ~cond := #in~cond; {625#false} is VALID [2022-04-07 15:11:54,096 INFO L290 TraceCheckUtils]: 22: Hoare triple {625#false} assume 0 == ~cond; {625#false} is VALID [2022-04-07 15:11:54,097 INFO L290 TraceCheckUtils]: 23: Hoare triple {625#false} assume !false; {625#false} is VALID [2022-04-07 15:11:54,097 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-07 15:11:54,097 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 15:11:54,098 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 15:11:54,098 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1083161638] [2022-04-07 15:11:54,098 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 15:11:54,098 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [291954968] [2022-04-07 15:11:54,098 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [291954968] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 15:11:54,098 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 15:11:54,098 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-07 15:11:54,099 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [621318693] [2022-04-07 15:11:54,099 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 15:11:54,099 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 24 [2022-04-07 15:11:54,100 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 15:11:54,101 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-07 15:11:54,120 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 15:11:54,121 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-07 15:11:54,121 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 15:11:54,122 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-07 15:11:54,122 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-07 15:11:54,122 INFO L87 Difference]: Start difference. First operand 32 states and 35 transitions. Second operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-07 15:11:54,258 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:11:54,258 INFO L93 Difference]: Finished difference Result 42 states and 46 transitions. [2022-04-07 15:11:54,258 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-07 15:11:54,258 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 24 [2022-04-07 15:11:54,258 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 15:11:54,259 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-07 15:11:54,260 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 43 transitions. [2022-04-07 15:11:54,260 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-07 15:11:54,262 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 43 transitions. [2022-04-07 15:11:54,262 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 43 transitions. [2022-04-07 15:11:54,303 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 15:11:54,305 INFO L225 Difference]: With dead ends: 42 [2022-04-07 15:11:54,305 INFO L226 Difference]: Without dead ends: 35 [2022-04-07 15:11:54,306 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 25 GetRequests, 19 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-07 15:11:54,308 INFO L913 BasicCegarLoop]: 22 mSDtfsCounter, 17 mSDsluCounter, 63 mSDsCounter, 0 mSdLazyCounter, 41 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 85 SdHoareTripleChecker+Invalid, 44 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 41 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 15:11:54,309 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [18 Valid, 85 Invalid, 44 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 41 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 15:11:54,310 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-07 15:11:54,323 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 33. [2022-04-07 15:11:54,323 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 15:11:54,323 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand has 33 states, 22 states have (on average 1.1818181818181819) internal successors, (26), 23 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-07 15:11:54,324 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand has 33 states, 22 states have (on average 1.1818181818181819) internal successors, (26), 23 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-07 15:11:54,324 INFO L87 Difference]: Start difference. First operand 35 states. Second operand has 33 states, 22 states have (on average 1.1818181818181819) internal successors, (26), 23 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-07 15:11:54,325 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:11:54,325 INFO L93 Difference]: Finished difference Result 35 states and 39 transitions. [2022-04-07 15:11:54,325 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 39 transitions. [2022-04-07 15:11:54,326 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:11:54,326 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:11:54,326 INFO L74 IsIncluded]: Start isIncluded. First operand has 33 states, 22 states have (on average 1.1818181818181819) internal successors, (26), 23 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 35 states. [2022-04-07 15:11:54,326 INFO L87 Difference]: Start difference. First operand has 33 states, 22 states have (on average 1.1818181818181819) internal successors, (26), 23 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 35 states. [2022-04-07 15:11:54,329 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:11:54,329 INFO L93 Difference]: Finished difference Result 35 states and 39 transitions. [2022-04-07 15:11:54,329 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 39 transitions. [2022-04-07 15:11:54,330 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:11:54,330 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:11:54,330 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 15:11:54,330 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 15:11:54,330 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 22 states have (on average 1.1818181818181819) internal successors, (26), 23 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-07 15:11:54,332 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 36 transitions. [2022-04-07 15:11:54,332 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 36 transitions. Word has length 24 [2022-04-07 15:11:54,332 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 15:11:54,332 INFO L478 AbstractCegarLoop]: Abstraction has 33 states and 36 transitions. [2022-04-07 15:11:54,332 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-07 15:11:54,332 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 36 transitions. [2022-04-07 15:11:54,333 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-07 15:11:54,333 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 15:11:54,333 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, 1] [2022-04-07 15:11:54,363 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-07 15:11:54,561 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:11:54,562 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 15:11:54,562 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 15:11:54,562 INFO L85 PathProgramCache]: Analyzing trace with hash 584619061, now seen corresponding path program 1 times [2022-04-07 15:11:54,562 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 15:11:54,562 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [422586247] [2022-04-07 15:11:54,562 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:11:54,563 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 15:11:54,591 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 15:11:54,592 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1545919701] [2022-04-07 15:11:54,592 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:11:54,592 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 15:11:54,592 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 15:11:54,593 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:11:54,599 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:11:54,641 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:11:54,642 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-07 15:11:54,652 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:11:54,653 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 15:11:54,808 INFO L272 TraceCheckUtils]: 0: Hoare triple {878#true} call ULTIMATE.init(); {878#true} is VALID [2022-04-07 15:11:54,810 INFO L290 TraceCheckUtils]: 1: Hoare triple {878#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; {886#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:54,811 INFO L290 TraceCheckUtils]: 2: Hoare triple {886#(<= ~counter~0 0)} assume true; {886#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:54,811 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {886#(<= ~counter~0 0)} {878#true} #65#return; {886#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:54,812 INFO L272 TraceCheckUtils]: 4: Hoare triple {886#(<= ~counter~0 0)} call #t~ret7 := main(); {886#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:54,812 INFO L290 TraceCheckUtils]: 5: Hoare triple {886#(<= ~counter~0 0)} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {886#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:54,813 INFO L272 TraceCheckUtils]: 6: Hoare triple {886#(<= ~counter~0 0)} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {886#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:54,813 INFO L290 TraceCheckUtils]: 7: Hoare triple {886#(<= ~counter~0 0)} ~cond := #in~cond; {886#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:54,813 INFO L290 TraceCheckUtils]: 8: Hoare triple {886#(<= ~counter~0 0)} assume !(0 == ~cond); {886#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:54,814 INFO L290 TraceCheckUtils]: 9: Hoare triple {886#(<= ~counter~0 0)} assume true; {886#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:54,814 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {886#(<= ~counter~0 0)} {886#(<= ~counter~0 0)} #59#return; {886#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:54,815 INFO L290 TraceCheckUtils]: 11: Hoare triple {886#(<= ~counter~0 0)} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {886#(<= ~counter~0 0)} is VALID [2022-04-07 15:11:54,815 INFO L290 TraceCheckUtils]: 12: Hoare triple {886#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {920#(<= ~counter~0 1)} is VALID [2022-04-07 15:11:54,816 INFO L290 TraceCheckUtils]: 13: Hoare triple {920#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {920#(<= ~counter~0 1)} is VALID [2022-04-07 15:11:54,816 INFO L272 TraceCheckUtils]: 14: Hoare triple {920#(<= ~counter~0 1)} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {920#(<= ~counter~0 1)} is VALID [2022-04-07 15:11:54,817 INFO L290 TraceCheckUtils]: 15: Hoare triple {920#(<= ~counter~0 1)} ~cond := #in~cond; {920#(<= ~counter~0 1)} is VALID [2022-04-07 15:11:54,817 INFO L290 TraceCheckUtils]: 16: Hoare triple {920#(<= ~counter~0 1)} assume !(0 == ~cond); {920#(<= ~counter~0 1)} is VALID [2022-04-07 15:11:54,817 INFO L290 TraceCheckUtils]: 17: Hoare triple {920#(<= ~counter~0 1)} assume true; {920#(<= ~counter~0 1)} is VALID [2022-04-07 15:11:54,820 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {920#(<= ~counter~0 1)} {920#(<= ~counter~0 1)} #61#return; {920#(<= ~counter~0 1)} is VALID [2022-04-07 15:11:54,821 INFO L290 TraceCheckUtils]: 19: Hoare triple {920#(<= ~counter~0 1)} assume !!(0 != ~y~0); {920#(<= ~counter~0 1)} is VALID [2022-04-07 15:11:54,821 INFO L290 TraceCheckUtils]: 20: Hoare triple {920#(<= ~counter~0 1)} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {920#(<= ~counter~0 1)} is VALID [2022-04-07 15:11:54,821 INFO L290 TraceCheckUtils]: 21: Hoare triple {920#(<= ~counter~0 1)} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {920#(<= ~counter~0 1)} is VALID [2022-04-07 15:11:54,822 INFO L290 TraceCheckUtils]: 22: Hoare triple {920#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {951#(<= |main_#t~post6| 1)} is VALID [2022-04-07 15:11:54,822 INFO L290 TraceCheckUtils]: 23: Hoare triple {951#(<= |main_#t~post6| 1)} assume !(#t~post6 < 10);havoc #t~post6; {879#false} is VALID [2022-04-07 15:11:54,822 INFO L272 TraceCheckUtils]: 24: Hoare triple {879#false} call __VERIFIER_assert((if ~z~0 == ~a~0 * ~b~0 then 1 else 0)); {879#false} is VALID [2022-04-07 15:11:54,823 INFO L290 TraceCheckUtils]: 25: Hoare triple {879#false} ~cond := #in~cond; {879#false} is VALID [2022-04-07 15:11:54,823 INFO L290 TraceCheckUtils]: 26: Hoare triple {879#false} assume 0 == ~cond; {879#false} is VALID [2022-04-07 15:11:54,823 INFO L290 TraceCheckUtils]: 27: Hoare triple {879#false} assume !false; {879#false} is VALID [2022-04-07 15:11:54,823 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:11:54,823 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 15:11:54,997 INFO L290 TraceCheckUtils]: 27: Hoare triple {879#false} assume !false; {879#false} is VALID [2022-04-07 15:11:54,998 INFO L290 TraceCheckUtils]: 26: Hoare triple {879#false} assume 0 == ~cond; {879#false} is VALID [2022-04-07 15:11:54,998 INFO L290 TraceCheckUtils]: 25: Hoare triple {879#false} ~cond := #in~cond; {879#false} is VALID [2022-04-07 15:11:54,998 INFO L272 TraceCheckUtils]: 24: Hoare triple {879#false} call __VERIFIER_assert((if ~z~0 == ~a~0 * ~b~0 then 1 else 0)); {879#false} is VALID [2022-04-07 15:11:55,000 INFO L290 TraceCheckUtils]: 23: Hoare triple {979#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {879#false} is VALID [2022-04-07 15:11:55,007 INFO L290 TraceCheckUtils]: 22: Hoare triple {983#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {979#(< |main_#t~post6| 10)} is VALID [2022-04-07 15:11:55,008 INFO L290 TraceCheckUtils]: 21: Hoare triple {983#(< ~counter~0 10)} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {983#(< ~counter~0 10)} is VALID [2022-04-07 15:11:55,008 INFO L290 TraceCheckUtils]: 20: Hoare triple {983#(< ~counter~0 10)} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {983#(< ~counter~0 10)} is VALID [2022-04-07 15:11:55,009 INFO L290 TraceCheckUtils]: 19: Hoare triple {983#(< ~counter~0 10)} assume !!(0 != ~y~0); {983#(< ~counter~0 10)} is VALID [2022-04-07 15:11:55,009 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {878#true} {983#(< ~counter~0 10)} #61#return; {983#(< ~counter~0 10)} is VALID [2022-04-07 15:11:55,010 INFO L290 TraceCheckUtils]: 17: Hoare triple {878#true} assume true; {878#true} is VALID [2022-04-07 15:11:55,010 INFO L290 TraceCheckUtils]: 16: Hoare triple {878#true} assume !(0 == ~cond); {878#true} is VALID [2022-04-07 15:11:55,010 INFO L290 TraceCheckUtils]: 15: Hoare triple {878#true} ~cond := #in~cond; {878#true} is VALID [2022-04-07 15:11:55,010 INFO L272 TraceCheckUtils]: 14: Hoare triple {983#(< ~counter~0 10)} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {878#true} is VALID [2022-04-07 15:11:55,010 INFO L290 TraceCheckUtils]: 13: Hoare triple {983#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {983#(< ~counter~0 10)} is VALID [2022-04-07 15:11:55,011 INFO L290 TraceCheckUtils]: 12: Hoare triple {1014#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {983#(< ~counter~0 10)} is VALID [2022-04-07 15:11:55,011 INFO L290 TraceCheckUtils]: 11: Hoare triple {1014#(< ~counter~0 9)} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {1014#(< ~counter~0 9)} is VALID [2022-04-07 15:11:55,012 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {878#true} {1014#(< ~counter~0 9)} #59#return; {1014#(< ~counter~0 9)} is VALID [2022-04-07 15:11:55,012 INFO L290 TraceCheckUtils]: 9: Hoare triple {878#true} assume true; {878#true} is VALID [2022-04-07 15:11:55,012 INFO L290 TraceCheckUtils]: 8: Hoare triple {878#true} assume !(0 == ~cond); {878#true} is VALID [2022-04-07 15:11:55,012 INFO L290 TraceCheckUtils]: 7: Hoare triple {878#true} ~cond := #in~cond; {878#true} is VALID [2022-04-07 15:11:55,013 INFO L272 TraceCheckUtils]: 6: Hoare triple {1014#(< ~counter~0 9)} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {878#true} is VALID [2022-04-07 15:11:55,013 INFO L290 TraceCheckUtils]: 5: Hoare triple {1014#(< ~counter~0 9)} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {1014#(< ~counter~0 9)} is VALID [2022-04-07 15:11:55,013 INFO L272 TraceCheckUtils]: 4: Hoare triple {1014#(< ~counter~0 9)} call #t~ret7 := main(); {1014#(< ~counter~0 9)} is VALID [2022-04-07 15:11:55,014 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1014#(< ~counter~0 9)} {878#true} #65#return; {1014#(< ~counter~0 9)} is VALID [2022-04-07 15:11:55,014 INFO L290 TraceCheckUtils]: 2: Hoare triple {1014#(< ~counter~0 9)} assume true; {1014#(< ~counter~0 9)} is VALID [2022-04-07 15:11:55,015 INFO L290 TraceCheckUtils]: 1: Hoare triple {878#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; {1014#(< ~counter~0 9)} is VALID [2022-04-07 15:11:55,015 INFO L272 TraceCheckUtils]: 0: Hoare triple {878#true} call ULTIMATE.init(); {878#true} is VALID [2022-04-07 15:11:55,015 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:11:55,016 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 15:11:55,016 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [422586247] [2022-04-07 15:11:55,016 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 15:11:55,016 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1545919701] [2022-04-07 15:11:55,016 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1545919701] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 15:11:55,016 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 15:11:55,016 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-07 15:11:55,016 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1743847401] [2022-04-07 15:11:55,017 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 15:11:55,017 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 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 28 [2022-04-07 15:11:55,017 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 15:11:55,018 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 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:11:55,065 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:55,065 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-07 15:11:55,065 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 15:11:55,065 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-07 15:11:55,066 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-07 15:11:55,066 INFO L87 Difference]: Start difference. First operand 33 states and 36 transitions. Second operand has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 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:11:55,244 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:11:55,244 INFO L93 Difference]: Finished difference Result 70 states and 80 transitions. [2022-04-07 15:11:55,244 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-07 15:11:55,245 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 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 28 [2022-04-07 15:11:55,245 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 15:11:55,245 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 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:11:55,248 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 80 transitions. [2022-04-07 15:11:55,248 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 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:11:55,251 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 80 transitions. [2022-04-07 15:11:55,251 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 80 transitions. [2022-04-07 15:11:55,314 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 15:11:55,315 INFO L225 Difference]: With dead ends: 70 [2022-04-07 15:11:55,315 INFO L226 Difference]: Without dead ends: 63 [2022-04-07 15:11:55,316 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 58 GetRequests, 49 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:11:55,316 INFO L913 BasicCegarLoop]: 29 mSDtfsCounter, 42 mSDsluCounter, 73 mSDsCounter, 0 mSdLazyCounter, 22 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 42 SdHoareTripleChecker+Valid, 102 SdHoareTripleChecker+Invalid, 38 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 22 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 15:11:55,317 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [42 Valid, 102 Invalid, 38 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 22 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 15:11:55,317 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 63 states. [2022-04-07 15:11:55,338 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 63 to 59. [2022-04-07 15:11:55,338 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 15:11:55,338 INFO L82 GeneralOperation]: Start isEquivalent. First operand 63 states. Second operand has 59 states, 42 states have (on average 1.2619047619047619) internal successors, (53), 45 states have internal predecessors, (53), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 15:11:55,339 INFO L74 IsIncluded]: Start isIncluded. First operand 63 states. Second operand has 59 states, 42 states have (on average 1.2619047619047619) internal successors, (53), 45 states have internal predecessors, (53), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 15:11:55,339 INFO L87 Difference]: Start difference. First operand 63 states. Second operand has 59 states, 42 states have (on average 1.2619047619047619) internal successors, (53), 45 states have internal predecessors, (53), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 15:11:55,341 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:11:55,341 INFO L93 Difference]: Finished difference Result 63 states and 71 transitions. [2022-04-07 15:11:55,341 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 71 transitions. [2022-04-07 15:11:55,342 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:11:55,342 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:11:55,342 INFO L74 IsIncluded]: Start isIncluded. First operand has 59 states, 42 states have (on average 1.2619047619047619) internal successors, (53), 45 states have internal predecessors, (53), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 63 states. [2022-04-07 15:11:55,343 INFO L87 Difference]: Start difference. First operand has 59 states, 42 states have (on average 1.2619047619047619) internal successors, (53), 45 states have internal predecessors, (53), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 63 states. [2022-04-07 15:11:55,345 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:11:55,345 INFO L93 Difference]: Finished difference Result 63 states and 71 transitions. [2022-04-07 15:11:55,345 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 71 transitions. [2022-04-07 15:11:55,345 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:11:55,345 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:11:55,345 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 15:11:55,345 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 15:11:55,346 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 59 states, 42 states have (on average 1.2619047619047619) internal successors, (53), 45 states have internal predecessors, (53), 10 states have call successors, (10), 7 states have call predecessors, (10), 6 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 15:11:55,348 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 69 transitions. [2022-04-07 15:11:55,348 INFO L78 Accepts]: Start accepts. Automaton has 59 states and 69 transitions. Word has length 28 [2022-04-07 15:11:55,348 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 15:11:55,348 INFO L478 AbstractCegarLoop]: Abstraction has 59 states and 69 transitions. [2022-04-07 15:11:55,348 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 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:11:55,348 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 69 transitions. [2022-04-07 15:11:55,349 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-07 15:11:55,349 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 15:11:55,349 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, 1] [2022-04-07 15:11:55,377 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:11:55,563 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:11:55,564 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 15:11:55,564 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 15:11:55,564 INFO L85 PathProgramCache]: Analyzing trace with hash 586406521, now seen corresponding path program 1 times [2022-04-07 15:11:55,564 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 15:11:55,564 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1917915348] [2022-04-07 15:11:55,564 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:11:55,564 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 15:11:55,577 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 15:11:55,577 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2024324880] [2022-04-07 15:11:55,578 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:11:55,578 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 15:11:55,578 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 15:11:55,579 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:11:55,583 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:11:55,620 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:11:55,621 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 26 conjunts are in the unsatisfiable core [2022-04-07 15:11:55,733 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:11:55,734 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 15:11:58,307 INFO L272 TraceCheckUtils]: 0: Hoare triple {1360#true} call ULTIMATE.init(); {1360#true} is VALID [2022-04-07 15:11:58,307 INFO L290 TraceCheckUtils]: 1: Hoare triple {1360#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; {1360#true} is VALID [2022-04-07 15:11:58,307 INFO L290 TraceCheckUtils]: 2: Hoare triple {1360#true} assume true; {1360#true} is VALID [2022-04-07 15:11:58,308 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1360#true} {1360#true} #65#return; {1360#true} is VALID [2022-04-07 15:11:58,308 INFO L272 TraceCheckUtils]: 4: Hoare triple {1360#true} call #t~ret7 := main(); {1360#true} is VALID [2022-04-07 15:11:58,308 INFO L290 TraceCheckUtils]: 5: Hoare triple {1360#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {1360#true} is VALID [2022-04-07 15:11:58,308 INFO L272 TraceCheckUtils]: 6: Hoare triple {1360#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {1360#true} is VALID [2022-04-07 15:11:58,308 INFO L290 TraceCheckUtils]: 7: Hoare triple {1360#true} ~cond := #in~cond; {1386#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 15:11:58,309 INFO L290 TraceCheckUtils]: 8: Hoare triple {1386#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1390#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 15:11:58,309 INFO L290 TraceCheckUtils]: 9: Hoare triple {1390#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1390#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 15:11:58,310 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1390#(not (= |assume_abort_if_not_#in~cond| 0))} {1360#true} #59#return; {1397#(<= 1 main_~b~0)} is VALID [2022-04-07 15:11:58,310 INFO L290 TraceCheckUtils]: 11: Hoare triple {1397#(<= 1 main_~b~0)} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {1401#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 15:11:58,311 INFO L290 TraceCheckUtils]: 12: Hoare triple {1401#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1401#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 15:11:58,311 INFO L290 TraceCheckUtils]: 13: Hoare triple {1401#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 10);havoc #t~post6; {1401#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 15:11:58,312 INFO L272 TraceCheckUtils]: 14: Hoare triple {1401#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {1360#true} is VALID [2022-04-07 15:11:58,312 INFO L290 TraceCheckUtils]: 15: Hoare triple {1360#true} ~cond := #in~cond; {1414#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-07 15:11:58,312 INFO L290 TraceCheckUtils]: 16: Hoare triple {1414#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {1418#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 15:11:58,313 INFO L290 TraceCheckUtils]: 17: Hoare triple {1418#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1418#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 15:11:58,314 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1418#(not (= |__VERIFIER_assert_#in~cond| 0))} {1401#(and (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} #61#return; {1425#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 15:11:58,314 INFO L290 TraceCheckUtils]: 19: Hoare triple {1425#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} assume !!(0 != ~y~0); {1425#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 15:11:58,315 INFO L290 TraceCheckUtils]: 20: Hoare triple {1425#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {1432#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 1)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 15:11:58,316 INFO L290 TraceCheckUtils]: 21: Hoare triple {1432#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 1)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {1436#(and (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (* main_~b~0 main_~a~0)))} is VALID [2022-04-07 15:11:58,317 INFO L290 TraceCheckUtils]: 22: Hoare triple {1436#(and (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (* main_~b~0 main_~a~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1436#(and (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (* main_~b~0 main_~a~0)))} is VALID [2022-04-07 15:11:58,318 INFO L290 TraceCheckUtils]: 23: Hoare triple {1436#(and (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (* main_~b~0 main_~a~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {1436#(and (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (* main_~b~0 main_~a~0)))} is VALID [2022-04-07 15:11:58,320 INFO L272 TraceCheckUtils]: 24: Hoare triple {1436#(and (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0) (= (+ main_~z~0 (* main_~b~0 main_~a~0)) (* main_~b~0 main_~a~0)))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {1446#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 15:11:58,320 INFO L290 TraceCheckUtils]: 25: Hoare triple {1446#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1450#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 15:11:58,321 INFO L290 TraceCheckUtils]: 26: Hoare triple {1450#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1361#false} is VALID [2022-04-07 15:11:58,321 INFO L290 TraceCheckUtils]: 27: Hoare triple {1361#false} assume !false; {1361#false} is VALID [2022-04-07 15:11:58,321 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:58,321 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 15:12:20,392 INFO L290 TraceCheckUtils]: 27: Hoare triple {1361#false} assume !false; {1361#false} is VALID [2022-04-07 15:12:20,393 INFO L290 TraceCheckUtils]: 26: Hoare triple {1450#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1361#false} is VALID [2022-04-07 15:12:20,394 INFO L290 TraceCheckUtils]: 25: Hoare triple {1446#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1450#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 15:12:20,394 INFO L272 TraceCheckUtils]: 24: Hoare triple {1466#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {1446#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 15:12:20,395 INFO L290 TraceCheckUtils]: 23: Hoare triple {1466#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} assume !!(#t~post6 < 10);havoc #t~post6; {1466#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-07 15:12:20,395 INFO L290 TraceCheckUtils]: 22: Hoare triple {1466#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1466#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-07 15:12:20,401 INFO L290 TraceCheckUtils]: 21: Hoare triple {1476#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {1466#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-07 15:12:20,403 INFO L290 TraceCheckUtils]: 20: Hoare triple {1480#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {1476#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} is VALID [2022-04-07 15:12:20,403 INFO L290 TraceCheckUtils]: 19: Hoare triple {1480#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} assume !!(0 != ~y~0); {1480#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} is VALID [2022-04-07 15:12:20,407 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1418#(not (= |__VERIFIER_assert_#in~cond| 0))} {1487#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} #61#return; {1480#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} is VALID [2022-04-07 15:12:20,407 INFO L290 TraceCheckUtils]: 17: Hoare triple {1418#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1418#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 15:12:20,408 INFO L290 TraceCheckUtils]: 16: Hoare triple {1497#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {1418#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 15:12:20,408 INFO L290 TraceCheckUtils]: 15: Hoare triple {1360#true} ~cond := #in~cond; {1497#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-07 15:12:20,408 INFO L272 TraceCheckUtils]: 14: Hoare triple {1487#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {1360#true} is VALID [2022-04-07 15:12:20,409 INFO L290 TraceCheckUtils]: 13: Hoare triple {1487#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} assume !!(#t~post6 < 10);havoc #t~post6; {1487#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} is VALID [2022-04-07 15:12:20,409 INFO L290 TraceCheckUtils]: 12: Hoare triple {1487#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1487#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} is VALID [2022-04-07 15:12:20,410 INFO L290 TraceCheckUtils]: 11: Hoare triple {1510#(or (= (+ (* (- 1) main_~b~0 main_~a~0) (* main_~b~0 main_~a~0) (* (* main_~a~0 2) (+ (div main_~b~0 2) 1))) (* main_~b~0 main_~a~0)) (= (mod main_~b~0 2) 0) (<= 0 main_~b~0))} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {1487#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} is VALID [2022-04-07 15:12:20,411 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1390#(not (= |assume_abort_if_not_#in~cond| 0))} {1360#true} #59#return; {1510#(or (= (+ (* (- 1) main_~b~0 main_~a~0) (* main_~b~0 main_~a~0) (* (* main_~a~0 2) (+ (div main_~b~0 2) 1))) (* main_~b~0 main_~a~0)) (= (mod main_~b~0 2) 0) (<= 0 main_~b~0))} is VALID [2022-04-07 15:12:20,411 INFO L290 TraceCheckUtils]: 9: Hoare triple {1390#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1390#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 15:12:20,412 INFO L290 TraceCheckUtils]: 8: Hoare triple {1523#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {1390#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 15:12:20,412 INFO L290 TraceCheckUtils]: 7: Hoare triple {1360#true} ~cond := #in~cond; {1523#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-07 15:12:20,412 INFO L272 TraceCheckUtils]: 6: Hoare triple {1360#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {1360#true} is VALID [2022-04-07 15:12:20,412 INFO L290 TraceCheckUtils]: 5: Hoare triple {1360#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {1360#true} is VALID [2022-04-07 15:12:20,413 INFO L272 TraceCheckUtils]: 4: Hoare triple {1360#true} call #t~ret7 := main(); {1360#true} is VALID [2022-04-07 15:12:20,413 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1360#true} {1360#true} #65#return; {1360#true} is VALID [2022-04-07 15:12:20,413 INFO L290 TraceCheckUtils]: 2: Hoare triple {1360#true} assume true; {1360#true} is VALID [2022-04-07 15:12:20,413 INFO L290 TraceCheckUtils]: 1: Hoare triple {1360#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; {1360#true} is VALID [2022-04-07 15:12:20,413 INFO L272 TraceCheckUtils]: 0: Hoare triple {1360#true} call ULTIMATE.init(); {1360#true} is VALID [2022-04-07 15:12:20,413 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:12:20,413 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 15:12:20,413 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1917915348] [2022-04-07 15:12:20,414 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 15:12:20,414 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2024324880] [2022-04-07 15:12:20,414 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2024324880] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 15:12:20,414 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 15:12:20,414 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 20 [2022-04-07 15:12:20,414 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [28675728] [2022-04-07 15:12:20,414 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 15:12:20,415 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 20 states have (on average 1.6) internal successors, (32), 17 states have internal predecessors, (32), 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 28 [2022-04-07 15:12:20,415 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 15:12:20,415 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 20 states, 20 states have (on average 1.6) internal successors, (32), 17 states have internal predecessors, (32), 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:12:20,465 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:12:20,466 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 20 states [2022-04-07 15:12:20,466 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 15:12:20,466 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2022-04-07 15:12:20,466 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=67, Invalid=313, Unknown=0, NotChecked=0, Total=380 [2022-04-07 15:12:20,467 INFO L87 Difference]: Start difference. First operand 59 states and 69 transitions. Second operand has 20 states, 20 states have (on average 1.6) internal successors, (32), 17 states have internal predecessors, (32), 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:12:22,884 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:12:22,885 INFO L93 Difference]: Finished difference Result 103 states and 121 transitions. [2022-04-07 15:12:22,885 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-07 15:12:22,885 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 20 states have (on average 1.6) internal successors, (32), 17 states have internal predecessors, (32), 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 28 [2022-04-07 15:12:22,885 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 15:12:22,885 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 20 states have (on average 1.6) internal successors, (32), 17 states have internal predecessors, (32), 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:12:22,887 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 71 transitions. [2022-04-07 15:12:22,888 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 20 states have (on average 1.6) internal successors, (32), 17 states have internal predecessors, (32), 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:12:22,890 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 71 transitions. [2022-04-07 15:12:22,890 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 71 transitions. [2022-04-07 15:12:22,974 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 71 edges. 71 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 15:12:22,976 INFO L225 Difference]: With dead ends: 103 [2022-04-07 15:12:22,976 INFO L226 Difference]: Without dead ends: 94 [2022-04-07 15:12:22,977 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 62 GetRequests, 36 SyntacticMatches, 1 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 122 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=127, Invalid=575, Unknown=0, NotChecked=0, Total=702 [2022-04-07 15:12:22,978 INFO L913 BasicCegarLoop]: 20 mSDtfsCounter, 63 mSDsluCounter, 164 mSDsCounter, 0 mSdLazyCounter, 260 mSolverCounterSat, 47 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 65 SdHoareTripleChecker+Valid, 184 SdHoareTripleChecker+Invalid, 307 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 47 IncrementalHoareTripleChecker+Valid, 260 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.1s IncrementalHoareTripleChecker+Time [2022-04-07 15:12:22,978 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [65 Valid, 184 Invalid, 307 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [47 Valid, 260 Invalid, 0 Unknown, 0 Unchecked, 1.1s Time] [2022-04-07 15:12:22,979 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 94 states. [2022-04-07 15:12:23,018 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 94 to 92. [2022-04-07 15:12:23,018 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 15:12:23,018 INFO L82 GeneralOperation]: Start isEquivalent. First operand 94 states. Second operand has 92 states, 69 states have (on average 1.2028985507246377) internal successors, (83), 73 states have internal predecessors, (83), 14 states have call successors, (14), 10 states have call predecessors, (14), 8 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 15:12:23,019 INFO L74 IsIncluded]: Start isIncluded. First operand 94 states. Second operand has 92 states, 69 states have (on average 1.2028985507246377) internal successors, (83), 73 states have internal predecessors, (83), 14 states have call successors, (14), 10 states have call predecessors, (14), 8 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 15:12:23,019 INFO L87 Difference]: Start difference. First operand 94 states. Second operand has 92 states, 69 states have (on average 1.2028985507246377) internal successors, (83), 73 states have internal predecessors, (83), 14 states have call successors, (14), 10 states have call predecessors, (14), 8 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 15:12:23,022 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:12:23,022 INFO L93 Difference]: Finished difference Result 94 states and 109 transitions. [2022-04-07 15:12:23,023 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 109 transitions. [2022-04-07 15:12:23,023 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:12:23,023 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:12:23,023 INFO L74 IsIncluded]: Start isIncluded. First operand has 92 states, 69 states have (on average 1.2028985507246377) internal successors, (83), 73 states have internal predecessors, (83), 14 states have call successors, (14), 10 states have call predecessors, (14), 8 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) Second operand 94 states. [2022-04-07 15:12:23,024 INFO L87 Difference]: Start difference. First operand has 92 states, 69 states have (on average 1.2028985507246377) internal successors, (83), 73 states have internal predecessors, (83), 14 states have call successors, (14), 10 states have call predecessors, (14), 8 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) Second operand 94 states. [2022-04-07 15:12:23,027 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:12:23,027 INFO L93 Difference]: Finished difference Result 94 states and 109 transitions. [2022-04-07 15:12:23,027 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 109 transitions. [2022-04-07 15:12:23,027 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:12:23,027 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:12:23,028 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 15:12:23,028 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 15:12:23,028 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 92 states, 69 states have (on average 1.2028985507246377) internal successors, (83), 73 states have internal predecessors, (83), 14 states have call successors, (14), 10 states have call predecessors, (14), 8 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 15:12:23,031 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 92 states to 92 states and 107 transitions. [2022-04-07 15:12:23,031 INFO L78 Accepts]: Start accepts. Automaton has 92 states and 107 transitions. Word has length 28 [2022-04-07 15:12:23,031 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 15:12:23,031 INFO L478 AbstractCegarLoop]: Abstraction has 92 states and 107 transitions. [2022-04-07 15:12:23,032 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 20 states, 20 states have (on average 1.6) internal successors, (32), 17 states have internal predecessors, (32), 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:12:23,032 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 107 transitions. [2022-04-07 15:12:23,032 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-07 15:12:23,032 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 15:12:23,032 INFO L499 BasicCegarLoop]: trace histogram [3, 2, 2, 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:12:23,049 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Ended with exit code 0 [2022-04-07 15:12:23,235 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:12:23,236 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 15:12:23,236 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 15:12:23,236 INFO L85 PathProgramCache]: Analyzing trace with hash -1513703477, now seen corresponding path program 1 times [2022-04-07 15:12:23,236 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 15:12:23,236 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [450690711] [2022-04-07 15:12:23,236 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:12:23,237 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 15:12:23,251 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 15:12:23,251 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1748898029] [2022-04-07 15:12:23,251 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:12:23,251 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 15:12:23,251 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 15:12:23,258 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:12:23,259 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:12:23,303 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:12:23,304 INFO L263 TraceCheckSpWp]: Trace formula consists of 120 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-07 15:12:23,314 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:12:23,315 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 15:12:27,702 INFO L272 TraceCheckUtils]: 0: Hoare triple {2016#true} call ULTIMATE.init(); {2016#true} is VALID [2022-04-07 15:12:27,702 INFO L290 TraceCheckUtils]: 1: Hoare triple {2016#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; {2016#true} is VALID [2022-04-07 15:12:27,702 INFO L290 TraceCheckUtils]: 2: Hoare triple {2016#true} assume true; {2016#true} is VALID [2022-04-07 15:12:27,703 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2016#true} {2016#true} #65#return; {2016#true} is VALID [2022-04-07 15:12:27,703 INFO L272 TraceCheckUtils]: 4: Hoare triple {2016#true} call #t~ret7 := main(); {2016#true} is VALID [2022-04-07 15:12:27,703 INFO L290 TraceCheckUtils]: 5: Hoare triple {2016#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {2016#true} is VALID [2022-04-07 15:12:27,703 INFO L272 TraceCheckUtils]: 6: Hoare triple {2016#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {2016#true} is VALID [2022-04-07 15:12:27,703 INFO L290 TraceCheckUtils]: 7: Hoare triple {2016#true} ~cond := #in~cond; {2016#true} is VALID [2022-04-07 15:12:27,703 INFO L290 TraceCheckUtils]: 8: Hoare triple {2016#true} assume !(0 == ~cond); {2016#true} is VALID [2022-04-07 15:12:27,703 INFO L290 TraceCheckUtils]: 9: Hoare triple {2016#true} assume true; {2016#true} is VALID [2022-04-07 15:12:27,703 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2016#true} {2016#true} #59#return; {2016#true} is VALID [2022-04-07 15:12:27,704 INFO L290 TraceCheckUtils]: 11: Hoare triple {2016#true} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {2016#true} is VALID [2022-04-07 15:12:27,704 INFO L290 TraceCheckUtils]: 12: Hoare triple {2016#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2016#true} is VALID [2022-04-07 15:12:27,704 INFO L290 TraceCheckUtils]: 13: Hoare triple {2016#true} assume !!(#t~post6 < 10);havoc #t~post6; {2016#true} is VALID [2022-04-07 15:12:27,704 INFO L272 TraceCheckUtils]: 14: Hoare triple {2016#true} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {2016#true} is VALID [2022-04-07 15:12:27,704 INFO L290 TraceCheckUtils]: 15: Hoare triple {2016#true} ~cond := #in~cond; {2016#true} is VALID [2022-04-07 15:12:27,704 INFO L290 TraceCheckUtils]: 16: Hoare triple {2016#true} assume !(0 == ~cond); {2016#true} is VALID [2022-04-07 15:12:27,704 INFO L290 TraceCheckUtils]: 17: Hoare triple {2016#true} assume true; {2016#true} is VALID [2022-04-07 15:12:27,704 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2016#true} {2016#true} #61#return; {2016#true} is VALID [2022-04-07 15:12:27,704 INFO L290 TraceCheckUtils]: 19: Hoare triple {2016#true} assume !!(0 != ~y~0); {2016#true} is VALID [2022-04-07 15:12:27,705 INFO L290 TraceCheckUtils]: 20: Hoare triple {2016#true} assume 1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2);~z~0 := ~z~0 + ~x~0;~y~0 := ~y~0 - 1; {2016#true} is VALID [2022-04-07 15:12:27,705 INFO L290 TraceCheckUtils]: 21: Hoare triple {2016#true} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {2016#true} is VALID [2022-04-07 15:12:27,705 INFO L290 TraceCheckUtils]: 22: Hoare triple {2016#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2016#true} is VALID [2022-04-07 15:12:27,705 INFO L290 TraceCheckUtils]: 23: Hoare triple {2016#true} assume !!(#t~post6 < 10);havoc #t~post6; {2016#true} is VALID [2022-04-07 15:12:27,705 INFO L272 TraceCheckUtils]: 24: Hoare triple {2016#true} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {2016#true} is VALID [2022-04-07 15:12:27,705 INFO L290 TraceCheckUtils]: 25: Hoare triple {2016#true} ~cond := #in~cond; {2096#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-07 15:12:27,706 INFO L290 TraceCheckUtils]: 26: Hoare triple {2096#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {2100#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 15:12:27,706 INFO L290 TraceCheckUtils]: 27: Hoare triple {2100#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2100#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 15:12:29,709 WARN L284 TraceCheckUtils]: 28: Hoare quadruple {2100#(not (= |__VERIFIER_assert_#in~cond| 0))} {2016#true} #61#return; {2107#(or (and (not (= main_~y~0 0)) (= (mod (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) main_~y~0) 0)) (= (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 0))} is UNKNOWN [2022-04-07 15:12:29,709 INFO L290 TraceCheckUtils]: 29: Hoare triple {2107#(or (and (not (= main_~y~0 0)) (= (mod (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) main_~y~0) 0)) (= (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 0))} assume !(0 != ~y~0); {2111#(= main_~z~0 (* main_~b~0 main_~a~0))} is VALID [2022-04-07 15:12:29,710 INFO L272 TraceCheckUtils]: 30: Hoare triple {2111#(= main_~z~0 (* main_~b~0 main_~a~0))} call __VERIFIER_assert((if ~z~0 == ~a~0 * ~b~0 then 1 else 0)); {2115#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 15:12:29,710 INFO L290 TraceCheckUtils]: 31: Hoare triple {2115#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2119#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 15:12:29,711 INFO L290 TraceCheckUtils]: 32: Hoare triple {2119#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2017#false} is VALID [2022-04-07 15:12:29,711 INFO L290 TraceCheckUtils]: 33: Hoare triple {2017#false} assume !false; {2017#false} is VALID [2022-04-07 15:12:29,711 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 7 proven. 1 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-07 15:12:29,711 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 15:12:40,734 INFO L290 TraceCheckUtils]: 33: Hoare triple {2017#false} assume !false; {2017#false} is VALID [2022-04-07 15:12:40,735 INFO L290 TraceCheckUtils]: 32: Hoare triple {2119#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2017#false} is VALID [2022-04-07 15:12:40,735 INFO L290 TraceCheckUtils]: 31: Hoare triple {2115#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2119#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 15:12:40,736 INFO L272 TraceCheckUtils]: 30: Hoare triple {2111#(= main_~z~0 (* main_~b~0 main_~a~0))} call __VERIFIER_assert((if ~z~0 == ~a~0 * ~b~0 then 1 else 0)); {2115#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 15:12:40,737 INFO L290 TraceCheckUtils]: 29: Hoare triple {2138#(or (not (= main_~y~0 0)) (= main_~z~0 (* main_~b~0 main_~a~0)))} assume !(0 != ~y~0); {2111#(= main_~z~0 (* main_~b~0 main_~a~0))} is VALID [2022-04-07 15:12:40,738 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2100#(not (= |__VERIFIER_assert_#in~cond| 0))} {2016#true} #61#return; {2138#(or (not (= main_~y~0 0)) (= main_~z~0 (* main_~b~0 main_~a~0)))} is VALID [2022-04-07 15:12:40,738 INFO L290 TraceCheckUtils]: 27: Hoare triple {2100#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2100#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 15:12:40,738 INFO L290 TraceCheckUtils]: 26: Hoare triple {2151#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {2100#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 15:12:40,739 INFO L290 TraceCheckUtils]: 25: Hoare triple {2016#true} ~cond := #in~cond; {2151#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-07 15:12:40,739 INFO L272 TraceCheckUtils]: 24: Hoare triple {2016#true} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {2016#true} is VALID [2022-04-07 15:12:40,739 INFO L290 TraceCheckUtils]: 23: Hoare triple {2016#true} assume !!(#t~post6 < 10);havoc #t~post6; {2016#true} is VALID [2022-04-07 15:12:40,739 INFO L290 TraceCheckUtils]: 22: Hoare triple {2016#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2016#true} is VALID [2022-04-07 15:12:40,739 INFO L290 TraceCheckUtils]: 21: Hoare triple {2016#true} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {2016#true} is VALID [2022-04-07 15:12:40,739 INFO L290 TraceCheckUtils]: 20: Hoare triple {2016#true} assume 1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2);~z~0 := ~z~0 + ~x~0;~y~0 := ~y~0 - 1; {2016#true} is VALID [2022-04-07 15:12:40,740 INFO L290 TraceCheckUtils]: 19: Hoare triple {2016#true} assume !!(0 != ~y~0); {2016#true} is VALID [2022-04-07 15:12:40,740 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2016#true} {2016#true} #61#return; {2016#true} is VALID [2022-04-07 15:12:40,740 INFO L290 TraceCheckUtils]: 17: Hoare triple {2016#true} assume true; {2016#true} is VALID [2022-04-07 15:12:40,740 INFO L290 TraceCheckUtils]: 16: Hoare triple {2016#true} assume !(0 == ~cond); {2016#true} is VALID [2022-04-07 15:12:40,740 INFO L290 TraceCheckUtils]: 15: Hoare triple {2016#true} ~cond := #in~cond; {2016#true} is VALID [2022-04-07 15:12:40,740 INFO L272 TraceCheckUtils]: 14: Hoare triple {2016#true} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {2016#true} is VALID [2022-04-07 15:12:40,740 INFO L290 TraceCheckUtils]: 13: Hoare triple {2016#true} assume !!(#t~post6 < 10);havoc #t~post6; {2016#true} is VALID [2022-04-07 15:12:40,740 INFO L290 TraceCheckUtils]: 12: Hoare triple {2016#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2016#true} is VALID [2022-04-07 15:12:40,740 INFO L290 TraceCheckUtils]: 11: Hoare triple {2016#true} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {2016#true} is VALID [2022-04-07 15:12:40,741 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2016#true} {2016#true} #59#return; {2016#true} is VALID [2022-04-07 15:12:40,741 INFO L290 TraceCheckUtils]: 9: Hoare triple {2016#true} assume true; {2016#true} is VALID [2022-04-07 15:12:40,741 INFO L290 TraceCheckUtils]: 8: Hoare triple {2016#true} assume !(0 == ~cond); {2016#true} is VALID [2022-04-07 15:12:40,741 INFO L290 TraceCheckUtils]: 7: Hoare triple {2016#true} ~cond := #in~cond; {2016#true} is VALID [2022-04-07 15:12:40,741 INFO L272 TraceCheckUtils]: 6: Hoare triple {2016#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {2016#true} is VALID [2022-04-07 15:12:40,741 INFO L290 TraceCheckUtils]: 5: Hoare triple {2016#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {2016#true} is VALID [2022-04-07 15:12:40,741 INFO L272 TraceCheckUtils]: 4: Hoare triple {2016#true} call #t~ret7 := main(); {2016#true} is VALID [2022-04-07 15:12:40,741 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2016#true} {2016#true} #65#return; {2016#true} is VALID [2022-04-07 15:12:40,741 INFO L290 TraceCheckUtils]: 2: Hoare triple {2016#true} assume true; {2016#true} is VALID [2022-04-07 15:12:40,742 INFO L290 TraceCheckUtils]: 1: Hoare triple {2016#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; {2016#true} is VALID [2022-04-07 15:12:40,742 INFO L272 TraceCheckUtils]: 0: Hoare triple {2016#true} call ULTIMATE.init(); {2016#true} is VALID [2022-04-07 15:12:40,742 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 7 proven. 1 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-07 15:12:40,742 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 15:12:40,742 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [450690711] [2022-04-07 15:12:40,742 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 15:12:40,742 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1748898029] [2022-04-07 15:12:40,742 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1748898029] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 15:12:40,742 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 15:12:40,742 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-07 15:12:40,743 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [375563716] [2022-04-07 15:12:40,743 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 15:12:40,743 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) Word has length 34 [2022-04-07 15:12:40,743 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 15:12:40,744 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-07 15:12:42,767 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 34 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-07 15:12:42,768 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-07 15:12:42,768 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 15:12:42,768 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-07 15:12:42,768 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2022-04-07 15:12:42,768 INFO L87 Difference]: Start difference. First operand 92 states and 107 transitions. Second operand has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-07 15:12:44,801 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 15:12:45,360 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:12:45,360 INFO L93 Difference]: Finished difference Result 104 states and 118 transitions. [2022-04-07 15:12:45,360 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-07 15:12:45,360 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) Word has length 34 [2022-04-07 15:12:45,361 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 15:12:45,361 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-07 15:12:45,361 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 35 transitions. [2022-04-07 15:12:45,362 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-07 15:12:45,362 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 35 transitions. [2022-04-07 15:12:45,362 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 35 transitions. [2022-04-07 15:12:47,403 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 34 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-07 15:12:47,407 INFO L225 Difference]: With dead ends: 104 [2022-04-07 15:12:47,407 INFO L226 Difference]: Without dead ends: 89 [2022-04-07 15:12:47,408 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 69 GetRequests, 58 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=37, Invalid=95, Unknown=0, NotChecked=0, Total=132 [2022-04-07 15:12:47,408 INFO L913 BasicCegarLoop]: 21 mSDtfsCounter, 17 mSDsluCounter, 67 mSDsCounter, 0 mSdLazyCounter, 55 mSolverCounterSat, 2 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 88 SdHoareTripleChecker+Invalid, 58 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 55 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.2s IncrementalHoareTripleChecker+Time [2022-04-07 15:12:47,409 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [17 Valid, 88 Invalid, 58 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 55 Invalid, 1 Unknown, 0 Unchecked, 2.2s Time] [2022-04-07 15:12:47,409 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 89 states. [2022-04-07 15:12:47,445 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 89 to 88. [2022-04-07 15:12:47,446 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 15:12:47,446 INFO L82 GeneralOperation]: Start isEquivalent. First operand 89 states. Second operand has 88 states, 67 states have (on average 1.1492537313432836) internal successors, (77), 70 states have internal predecessors, (77), 12 states have call successors, (12), 9 states have call predecessors, (12), 8 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 15:12:47,446 INFO L74 IsIncluded]: Start isIncluded. First operand 89 states. Second operand has 88 states, 67 states have (on average 1.1492537313432836) internal successors, (77), 70 states have internal predecessors, (77), 12 states have call successors, (12), 9 states have call predecessors, (12), 8 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 15:12:47,447 INFO L87 Difference]: Start difference. First operand 89 states. Second operand has 88 states, 67 states have (on average 1.1492537313432836) internal successors, (77), 70 states have internal predecessors, (77), 12 states have call successors, (12), 9 states have call predecessors, (12), 8 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 15:12:47,449 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:12:47,449 INFO L93 Difference]: Finished difference Result 89 states and 100 transitions. [2022-04-07 15:12:47,449 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 100 transitions. [2022-04-07 15:12:47,450 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:12:47,450 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:12:47,450 INFO L74 IsIncluded]: Start isIncluded. First operand has 88 states, 67 states have (on average 1.1492537313432836) internal successors, (77), 70 states have internal predecessors, (77), 12 states have call successors, (12), 9 states have call predecessors, (12), 8 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) Second operand 89 states. [2022-04-07 15:12:47,450 INFO L87 Difference]: Start difference. First operand has 88 states, 67 states have (on average 1.1492537313432836) internal successors, (77), 70 states have internal predecessors, (77), 12 states have call successors, (12), 9 states have call predecessors, (12), 8 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) Second operand 89 states. [2022-04-07 15:12:47,453 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:12:47,453 INFO L93 Difference]: Finished difference Result 89 states and 100 transitions. [2022-04-07 15:12:47,453 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 100 transitions. [2022-04-07 15:12:47,453 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:12:47,453 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:12:47,453 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 15:12:47,453 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 15:12:47,454 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 88 states, 67 states have (on average 1.1492537313432836) internal successors, (77), 70 states have internal predecessors, (77), 12 states have call successors, (12), 9 states have call predecessors, (12), 8 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 15:12:47,456 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 99 transitions. [2022-04-07 15:12:47,456 INFO L78 Accepts]: Start accepts. Automaton has 88 states and 99 transitions. Word has length 34 [2022-04-07 15:12:47,456 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 15:12:47,456 INFO L478 AbstractCegarLoop]: Abstraction has 88 states and 99 transitions. [2022-04-07 15:12:47,457 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-07 15:12:47,457 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 99 transitions. [2022-04-07 15:12:47,457 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-04-07 15:12:47,457 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 15:12:47,457 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 15:12:47,483 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:12:47,663 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:12:47,664 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 15:12:47,664 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 15:12:47,664 INFO L85 PathProgramCache]: Analyzing trace with hash 539044694, now seen corresponding path program 1 times [2022-04-07 15:12:47,664 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 15:12:47,664 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1860846202] [2022-04-07 15:12:47,664 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:12:47,664 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 15:12:47,676 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 15:12:47,676 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1666595423] [2022-04-07 15:12:47,676 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:12:47,676 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 15:12:47,676 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 15:12:47,677 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:12:47,680 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:12:47,725 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:12:47,727 INFO L263 TraceCheckSpWp]: Trace formula consists of 129 conjuncts, 29 conjunts are in the unsatisfiable core [2022-04-07 15:12:47,742 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:12:47,743 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 15:12:53,256 INFO L272 TraceCheckUtils]: 0: Hoare triple {2671#true} call ULTIMATE.init(); {2671#true} is VALID [2022-04-07 15:12:53,256 INFO L290 TraceCheckUtils]: 1: Hoare triple {2671#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; {2671#true} is VALID [2022-04-07 15:12:53,256 INFO L290 TraceCheckUtils]: 2: Hoare triple {2671#true} assume true; {2671#true} is VALID [2022-04-07 15:12:53,256 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2671#true} {2671#true} #65#return; {2671#true} is VALID [2022-04-07 15:12:53,256 INFO L272 TraceCheckUtils]: 4: Hoare triple {2671#true} call #t~ret7 := main(); {2671#true} is VALID [2022-04-07 15:12:53,256 INFO L290 TraceCheckUtils]: 5: Hoare triple {2671#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {2671#true} is VALID [2022-04-07 15:12:53,257 INFO L272 TraceCheckUtils]: 6: Hoare triple {2671#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {2671#true} is VALID [2022-04-07 15:12:53,257 INFO L290 TraceCheckUtils]: 7: Hoare triple {2671#true} ~cond := #in~cond; {2671#true} is VALID [2022-04-07 15:12:53,257 INFO L290 TraceCheckUtils]: 8: Hoare triple {2671#true} assume !(0 == ~cond); {2671#true} is VALID [2022-04-07 15:12:53,257 INFO L290 TraceCheckUtils]: 9: Hoare triple {2671#true} assume true; {2671#true} is VALID [2022-04-07 15:12:53,257 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2671#true} {2671#true} #59#return; {2671#true} is VALID [2022-04-07 15:12:53,257 INFO L290 TraceCheckUtils]: 11: Hoare triple {2671#true} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {2709#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 15:12:53,258 INFO L290 TraceCheckUtils]: 12: Hoare triple {2709#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2709#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 15:12:53,258 INFO L290 TraceCheckUtils]: 13: Hoare triple {2709#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 10);havoc #t~post6; {2709#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 15:12:53,258 INFO L272 TraceCheckUtils]: 14: Hoare triple {2709#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {2671#true} is VALID [2022-04-07 15:12:53,259 INFO L290 TraceCheckUtils]: 15: Hoare triple {2671#true} ~cond := #in~cond; {2671#true} is VALID [2022-04-07 15:12:53,259 INFO L290 TraceCheckUtils]: 16: Hoare triple {2671#true} assume !(0 == ~cond); {2671#true} is VALID [2022-04-07 15:12:53,259 INFO L290 TraceCheckUtils]: 17: Hoare triple {2671#true} assume true; {2671#true} is VALID [2022-04-07 15:12:53,260 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2671#true} {2709#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} #61#return; {2709#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 15:12:53,260 INFO L290 TraceCheckUtils]: 19: Hoare triple {2709#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} assume !!(0 != ~y~0); {2734#(and (not (= main_~y~0 0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 15:12:53,261 INFO L290 TraceCheckUtils]: 20: Hoare triple {2734#(and (not (= main_~y~0 0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} assume 1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2);~z~0 := ~z~0 + ~x~0;~y~0 := ~y~0 - 1; {2738#(and (<= 1 (mod (+ main_~y~0 1) 2)) (= main_~b~0 (+ main_~y~0 1)) (= main_~a~0 main_~x~0) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-07 15:12:53,263 INFO L290 TraceCheckUtils]: 21: Hoare triple {2738#(and (<= 1 (mod (+ main_~y~0 1) 2)) (= main_~b~0 (+ main_~y~0 1)) (= main_~a~0 main_~x~0) (<= 0 (+ main_~y~0 1)))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {2742#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-07 15:12:53,263 INFO L290 TraceCheckUtils]: 22: Hoare triple {2742#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2742#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-07 15:12:53,264 INFO L290 TraceCheckUtils]: 23: Hoare triple {2742#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} assume !!(#t~post6 < 10);havoc #t~post6; {2742#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-07 15:12:53,264 INFO L272 TraceCheckUtils]: 24: Hoare triple {2742#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {2671#true} is VALID [2022-04-07 15:12:53,264 INFO L290 TraceCheckUtils]: 25: Hoare triple {2671#true} ~cond := #in~cond; {2755#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-07 15:12:53,264 INFO L290 TraceCheckUtils]: 26: Hoare triple {2755#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {2759#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 15:12:53,265 INFO L290 TraceCheckUtils]: 27: Hoare triple {2759#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2759#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 15:12:53,266 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2759#(not (= |__VERIFIER_assert_#in~cond| 0))} {2742#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} #61#return; {2766#(and (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-07 15:12:53,266 INFO L290 TraceCheckUtils]: 29: Hoare triple {2766#(and (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} assume !!(0 != ~y~0); {2766#(and (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-07 15:12:53,267 INFO L290 TraceCheckUtils]: 30: Hoare triple {2766#(and (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {2773#(and (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 1)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-07 15:12:53,272 INFO L290 TraceCheckUtils]: 31: Hoare triple {2773#(and (<= 1 (mod main_~b~0 2)) (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 1)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {2777#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 4) main_~x~0) (= (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (* main_~a~0 2))) (* main_~b~0 main_~a~0)) (= (div (div (+ (- 1) main_~b~0) 2) 2) main_~y~0) (<= 0 main_~b~0) (not (= (mod (div (+ (- 1) main_~b~0) 2) 2) 1)))} is VALID [2022-04-07 15:12:53,273 INFO L290 TraceCheckUtils]: 32: Hoare triple {2777#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 4) main_~x~0) (= (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (* main_~a~0 2))) (* main_~b~0 main_~a~0)) (= (div (div (+ (- 1) main_~b~0) 2) 2) main_~y~0) (<= 0 main_~b~0) (not (= (mod (div (+ (- 1) main_~b~0) 2) 2) 1)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2777#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 4) main_~x~0) (= (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (* main_~a~0 2))) (* main_~b~0 main_~a~0)) (= (div (div (+ (- 1) main_~b~0) 2) 2) main_~y~0) (<= 0 main_~b~0) (not (= (mod (div (+ (- 1) main_~b~0) 2) 2) 1)))} is VALID [2022-04-07 15:12:53,273 INFO L290 TraceCheckUtils]: 33: Hoare triple {2777#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 4) main_~x~0) (= (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (* main_~a~0 2))) (* main_~b~0 main_~a~0)) (= (div (div (+ (- 1) main_~b~0) 2) 2) main_~y~0) (<= 0 main_~b~0) (not (= (mod (div (+ (- 1) main_~b~0) 2) 2) 1)))} assume !!(#t~post6 < 10);havoc #t~post6; {2777#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 4) main_~x~0) (= (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (* main_~a~0 2))) (* main_~b~0 main_~a~0)) (= (div (div (+ (- 1) main_~b~0) 2) 2) main_~y~0) (<= 0 main_~b~0) (not (= (mod (div (+ (- 1) main_~b~0) 2) 2) 1)))} is VALID [2022-04-07 15:12:53,292 INFO L272 TraceCheckUtils]: 34: Hoare triple {2777#(and (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 4) main_~x~0) (= (+ main_~z~0 (* (div (+ (- 1) main_~b~0) 2) (* main_~a~0 2))) (* main_~b~0 main_~a~0)) (= (div (div (+ (- 1) main_~b~0) 2) 2) main_~y~0) (<= 0 main_~b~0) (not (= (mod (div (+ (- 1) main_~b~0) 2) 2) 1)))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {2787#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 15:12:53,292 INFO L290 TraceCheckUtils]: 35: Hoare triple {2787#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2791#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 15:12:53,293 INFO L290 TraceCheckUtils]: 36: Hoare triple {2791#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2672#false} is VALID [2022-04-07 15:12:53,293 INFO L290 TraceCheckUtils]: 37: Hoare triple {2672#false} assume !false; {2672#false} is VALID [2022-04-07 15:12:53,293 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 6 proven. 13 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-07 15:12:53,293 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 15:14:37,757 INFO L290 TraceCheckUtils]: 37: Hoare triple {2672#false} assume !false; {2672#false} is VALID [2022-04-07 15:14:37,757 INFO L290 TraceCheckUtils]: 36: Hoare triple {2791#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2672#false} is VALID [2022-04-07 15:14:37,758 INFO L290 TraceCheckUtils]: 35: Hoare triple {2787#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2791#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 15:14:37,758 INFO L272 TraceCheckUtils]: 34: Hoare triple {2807#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {2787#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 15:14:37,759 INFO L290 TraceCheckUtils]: 33: Hoare triple {2807#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} assume !!(#t~post6 < 10);havoc #t~post6; {2807#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-07 15:14:37,759 INFO L290 TraceCheckUtils]: 32: Hoare triple {2807#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2807#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-07 15:14:37,769 INFO L290 TraceCheckUtils]: 31: Hoare triple {2817#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {2807#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-07 15:14:37,771 INFO L290 TraceCheckUtils]: 30: Hoare triple {2821#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {2817#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} is VALID [2022-04-07 15:14:37,771 INFO L290 TraceCheckUtils]: 29: Hoare triple {2821#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} assume !!(0 != ~y~0); {2821#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} is VALID [2022-04-07 15:14:37,774 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2759#(not (= |__VERIFIER_assert_#in~cond| 0))} {2828#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} #61#return; {2821#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} is VALID [2022-04-07 15:14:37,774 INFO L290 TraceCheckUtils]: 27: Hoare triple {2759#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2759#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 15:14:37,774 INFO L290 TraceCheckUtils]: 26: Hoare triple {2838#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {2759#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 15:14:37,775 INFO L290 TraceCheckUtils]: 25: Hoare triple {2671#true} ~cond := #in~cond; {2838#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-07 15:14:37,775 INFO L272 TraceCheckUtils]: 24: Hoare triple {2828#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {2671#true} is VALID [2022-04-07 15:14:37,775 INFO L290 TraceCheckUtils]: 23: Hoare triple {2828#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} assume !!(#t~post6 < 10);havoc #t~post6; {2828#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} is VALID [2022-04-07 15:14:37,776 INFO L290 TraceCheckUtils]: 22: Hoare triple {2828#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2828#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} is VALID [2022-04-07 15:14:37,797 INFO L290 TraceCheckUtils]: 21: Hoare triple {2851#(and (or (forall ((aux_div_aux_mod_v_main_~y~0_28_22_69 Int) (aux_div_v_main_~y~0_28_22 Int)) (or (= (+ (div main_~y~0 2) (* (- 2) aux_div_v_main_~y~0_28_22) 1) 0) (<= (+ (* aux_div_aux_mod_v_main_~y~0_28_22_69 2) 1) (div main_~y~0 2)) (<= (+ (* aux_div_v_main_~y~0_28_22 2) 1) (div main_~y~0 2)) (= (+ (* (* aux_div_v_main_~y~0_28_22 main_~x~0) 4) (* 2 (* main_~x~0 (+ (div main_~y~0 2) (* (- 2) aux_div_v_main_~y~0_28_22) 1)))) (+ (* main_~x~0 4) (* (* aux_div_aux_mod_v_main_~y~0_28_22_69 main_~x~0) 4))) (< (+ (div main_~y~0 2) 1) (* aux_div_v_main_~y~0_28_22 2)) (< (+ (div main_~y~0 2) 1) (* aux_div_aux_mod_v_main_~y~0_28_22_69 2)))) (<= 0 (+ (div main_~y~0 2) 1)) (= (mod main_~y~0 2) 0)) (or (not (= (mod main_~y~0 2) 0)) (forall ((aux_div_aux_mod_v_main_~y~0_28_22_69 Int) (aux_div_v_main_~y~0_28_22 Int)) (or (< (div main_~y~0 2) (* aux_div_aux_mod_v_main_~y~0_28_22_69 2)) (<= (+ 2 (* aux_div_v_main_~y~0_28_22 2)) (div main_~y~0 2)) (= (+ (* 2 (* (+ (div main_~y~0 2) (* (- 2) aux_div_v_main_~y~0_28_22)) main_~x~0)) (* (* aux_div_v_main_~y~0_28_22 main_~x~0) 4)) (+ (* main_~x~0 4) (* (* aux_div_aux_mod_v_main_~y~0_28_22_69 main_~x~0) 4))) (< (div main_~y~0 2) (* aux_div_v_main_~y~0_28_22 2)) (<= (+ 2 (* aux_div_aux_mod_v_main_~y~0_28_22_69 2)) (div main_~y~0 2)) (= (+ (div main_~y~0 2) (* (- 2) aux_div_v_main_~y~0_28_22)) 0))) (<= 0 (div main_~y~0 2))))} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {2828#(or (<= 0 main_~y~0) (= (+ (* (* main_~x~0 2) (+ (div main_~y~0 2) 1)) (* main_~b~0 main_~a~0) (* (- 1) main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (mod main_~y~0 2) 0))} is VALID [2022-04-07 15:14:37,799 INFO L290 TraceCheckUtils]: 20: Hoare triple {2671#true} assume 1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2);~z~0 := ~z~0 + ~x~0;~y~0 := ~y~0 - 1; {2851#(and (or (forall ((aux_div_aux_mod_v_main_~y~0_28_22_69 Int) (aux_div_v_main_~y~0_28_22 Int)) (or (= (+ (div main_~y~0 2) (* (- 2) aux_div_v_main_~y~0_28_22) 1) 0) (<= (+ (* aux_div_aux_mod_v_main_~y~0_28_22_69 2) 1) (div main_~y~0 2)) (<= (+ (* aux_div_v_main_~y~0_28_22 2) 1) (div main_~y~0 2)) (= (+ (* (* aux_div_v_main_~y~0_28_22 main_~x~0) 4) (* 2 (* main_~x~0 (+ (div main_~y~0 2) (* (- 2) aux_div_v_main_~y~0_28_22) 1)))) (+ (* main_~x~0 4) (* (* aux_div_aux_mod_v_main_~y~0_28_22_69 main_~x~0) 4))) (< (+ (div main_~y~0 2) 1) (* aux_div_v_main_~y~0_28_22 2)) (< (+ (div main_~y~0 2) 1) (* aux_div_aux_mod_v_main_~y~0_28_22_69 2)))) (<= 0 (+ (div main_~y~0 2) 1)) (= (mod main_~y~0 2) 0)) (or (not (= (mod main_~y~0 2) 0)) (forall ((aux_div_aux_mod_v_main_~y~0_28_22_69 Int) (aux_div_v_main_~y~0_28_22 Int)) (or (< (div main_~y~0 2) (* aux_div_aux_mod_v_main_~y~0_28_22_69 2)) (<= (+ 2 (* aux_div_v_main_~y~0_28_22 2)) (div main_~y~0 2)) (= (+ (* 2 (* (+ (div main_~y~0 2) (* (- 2) aux_div_v_main_~y~0_28_22)) main_~x~0)) (* (* aux_div_v_main_~y~0_28_22 main_~x~0) 4)) (+ (* main_~x~0 4) (* (* aux_div_aux_mod_v_main_~y~0_28_22_69 main_~x~0) 4))) (< (div main_~y~0 2) (* aux_div_v_main_~y~0_28_22 2)) (<= (+ 2 (* aux_div_aux_mod_v_main_~y~0_28_22_69 2)) (div main_~y~0 2)) (= (+ (div main_~y~0 2) (* (- 2) aux_div_v_main_~y~0_28_22)) 0))) (<= 0 (div main_~y~0 2))))} is VALID [2022-04-07 15:14:37,799 INFO L290 TraceCheckUtils]: 19: Hoare triple {2671#true} assume !!(0 != ~y~0); {2671#true} is VALID [2022-04-07 15:14:37,799 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2671#true} {2671#true} #61#return; {2671#true} is VALID [2022-04-07 15:14:37,800 INFO L290 TraceCheckUtils]: 17: Hoare triple {2671#true} assume true; {2671#true} is VALID [2022-04-07 15:14:37,800 INFO L290 TraceCheckUtils]: 16: Hoare triple {2671#true} assume !(0 == ~cond); {2671#true} is VALID [2022-04-07 15:14:37,800 INFO L290 TraceCheckUtils]: 15: Hoare triple {2671#true} ~cond := #in~cond; {2671#true} is VALID [2022-04-07 15:14:37,800 INFO L272 TraceCheckUtils]: 14: Hoare triple {2671#true} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {2671#true} is VALID [2022-04-07 15:14:37,800 INFO L290 TraceCheckUtils]: 13: Hoare triple {2671#true} assume !!(#t~post6 < 10);havoc #t~post6; {2671#true} is VALID [2022-04-07 15:14:37,800 INFO L290 TraceCheckUtils]: 12: Hoare triple {2671#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2671#true} is VALID [2022-04-07 15:14:37,800 INFO L290 TraceCheckUtils]: 11: Hoare triple {2671#true} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {2671#true} is VALID [2022-04-07 15:14:37,800 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2671#true} {2671#true} #59#return; {2671#true} is VALID [2022-04-07 15:14:37,800 INFO L290 TraceCheckUtils]: 9: Hoare triple {2671#true} assume true; {2671#true} is VALID [2022-04-07 15:14:37,800 INFO L290 TraceCheckUtils]: 8: Hoare triple {2671#true} assume !(0 == ~cond); {2671#true} is VALID [2022-04-07 15:14:37,800 INFO L290 TraceCheckUtils]: 7: Hoare triple {2671#true} ~cond := #in~cond; {2671#true} is VALID [2022-04-07 15:14:37,800 INFO L272 TraceCheckUtils]: 6: Hoare triple {2671#true} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {2671#true} is VALID [2022-04-07 15:14:37,800 INFO L290 TraceCheckUtils]: 5: Hoare triple {2671#true} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {2671#true} is VALID [2022-04-07 15:14:37,800 INFO L272 TraceCheckUtils]: 4: Hoare triple {2671#true} call #t~ret7 := main(); {2671#true} is VALID [2022-04-07 15:14:37,800 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2671#true} {2671#true} #65#return; {2671#true} is VALID [2022-04-07 15:14:37,801 INFO L290 TraceCheckUtils]: 2: Hoare triple {2671#true} assume true; {2671#true} is VALID [2022-04-07 15:14:37,801 INFO L290 TraceCheckUtils]: 1: Hoare triple {2671#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; {2671#true} is VALID [2022-04-07 15:14:37,801 INFO L272 TraceCheckUtils]: 0: Hoare triple {2671#true} call ULTIMATE.init(); {2671#true} is VALID [2022-04-07 15:14:37,801 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 14 proven. 5 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-07 15:14:37,801 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 15:14:37,801 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1860846202] [2022-04-07 15:14:37,802 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 15:14:37,802 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1666595423] [2022-04-07 15:14:37,802 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1666595423] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 15:14:37,802 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 15:14:37,802 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 11] total 19 [2022-04-07 15:14:37,802 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [495646551] [2022-04-07 15:14:37,802 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 15:14:37,803 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 2.263157894736842) internal successors, (43), 18 states have internal predecessors, (43), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) Word has length 38 [2022-04-07 15:14:37,803 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 15:14:37,803 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 19 states, 19 states have (on average 2.263157894736842) internal successors, (43), 18 states have internal predecessors, (43), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-07 15:14:37,918 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 15:14:37,918 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2022-04-07 15:14:37,918 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 15:14:37,919 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-04-07 15:14:37,922 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=61, Invalid=281, Unknown=0, NotChecked=0, Total=342 [2022-04-07 15:14:37,922 INFO L87 Difference]: Start difference. First operand 88 states and 99 transitions. Second operand has 19 states, 19 states have (on average 2.263157894736842) internal successors, (43), 18 states have internal predecessors, (43), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-07 15:14:40,584 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:14:40,585 INFO L93 Difference]: Finished difference Result 124 states and 137 transitions. [2022-04-07 15:14:40,585 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-04-07 15:14:40,585 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 2.263157894736842) internal successors, (43), 18 states have internal predecessors, (43), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) Word has length 38 [2022-04-07 15:14:40,585 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 15:14:40,585 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 2.263157894736842) internal successors, (43), 18 states have internal predecessors, (43), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-07 15:14:40,587 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 74 transitions. [2022-04-07 15:14:40,587 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 2.263157894736842) internal successors, (43), 18 states have internal predecessors, (43), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-07 15:14:40,589 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 74 transitions. [2022-04-07 15:14:40,589 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 17 states and 74 transitions. [2022-04-07 15:14:40,944 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 15:14:40,946 INFO L225 Difference]: With dead ends: 124 [2022-04-07 15:14:40,947 INFO L226 Difference]: Without dead ends: 122 [2022-04-07 15:14:40,947 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 87 GetRequests, 58 SyntacticMatches, 3 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 150 ImplicationChecksByTransitivity, 1.5s TimeCoverageRelationStatistics Valid=132, Invalid=624, Unknown=0, NotChecked=0, Total=756 [2022-04-07 15:14:40,948 INFO L913 BasicCegarLoop]: 27 mSDtfsCounter, 43 mSDsluCounter, 189 mSDsCounter, 0 mSdLazyCounter, 253 mSolverCounterSat, 23 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 45 SdHoareTripleChecker+Valid, 216 SdHoareTripleChecker+Invalid, 303 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 23 IncrementalHoareTripleChecker+Valid, 253 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 27 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-07 15:14:40,948 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [45 Valid, 216 Invalid, 303 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [23 Valid, 253 Invalid, 0 Unknown, 27 Unchecked, 0.8s Time] [2022-04-07 15:14:40,948 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 122 states. [2022-04-07 15:14:40,997 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 122 to 120. [2022-04-07 15:14:40,997 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 15:14:40,998 INFO L82 GeneralOperation]: Start isEquivalent. First operand 122 states. Second operand has 120 states, 92 states have (on average 1.1304347826086956) internal successors, (104), 96 states have internal predecessors, (104), 15 states have call successors, (15), 13 states have call predecessors, (15), 12 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-07 15:14:40,998 INFO L74 IsIncluded]: Start isIncluded. First operand 122 states. Second operand has 120 states, 92 states have (on average 1.1304347826086956) internal successors, (104), 96 states have internal predecessors, (104), 15 states have call successors, (15), 13 states have call predecessors, (15), 12 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-07 15:14:40,998 INFO L87 Difference]: Start difference. First operand 122 states. Second operand has 120 states, 92 states have (on average 1.1304347826086956) internal successors, (104), 96 states have internal predecessors, (104), 15 states have call successors, (15), 13 states have call predecessors, (15), 12 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-07 15:14:41,002 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:14:41,002 INFO L93 Difference]: Finished difference Result 122 states and 134 transitions. [2022-04-07 15:14:41,002 INFO L276 IsEmpty]: Start isEmpty. Operand 122 states and 134 transitions. [2022-04-07 15:14:41,002 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:14:41,002 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:14:41,003 INFO L74 IsIncluded]: Start isIncluded. First operand has 120 states, 92 states have (on average 1.1304347826086956) internal successors, (104), 96 states have internal predecessors, (104), 15 states have call successors, (15), 13 states have call predecessors, (15), 12 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) Second operand 122 states. [2022-04-07 15:14:41,003 INFO L87 Difference]: Start difference. First operand has 120 states, 92 states have (on average 1.1304347826086956) internal successors, (104), 96 states have internal predecessors, (104), 15 states have call successors, (15), 13 states have call predecessors, (15), 12 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) Second operand 122 states. [2022-04-07 15:14:41,006 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:14:41,006 INFO L93 Difference]: Finished difference Result 122 states and 134 transitions. [2022-04-07 15:14:41,006 INFO L276 IsEmpty]: Start isEmpty. Operand 122 states and 134 transitions. [2022-04-07 15:14:41,007 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:14:41,007 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:14:41,007 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 15:14:41,007 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 15:14:41,007 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 120 states, 92 states have (on average 1.1304347826086956) internal successors, (104), 96 states have internal predecessors, (104), 15 states have call successors, (15), 13 states have call predecessors, (15), 12 states have return successors, (13), 10 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-07 15:14:41,010 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 120 states to 120 states and 132 transitions. [2022-04-07 15:14:41,011 INFO L78 Accepts]: Start accepts. Automaton has 120 states and 132 transitions. Word has length 38 [2022-04-07 15:14:41,011 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 15:14:41,011 INFO L478 AbstractCegarLoop]: Abstraction has 120 states and 132 transitions. [2022-04-07 15:14:41,011 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 19 states have (on average 2.263157894736842) internal successors, (43), 18 states have internal predecessors, (43), 6 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-07 15:14:41,011 INFO L276 IsEmpty]: Start isEmpty. Operand 120 states and 132 transitions. [2022-04-07 15:14:41,012 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-07 15:14:41,012 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 15:14:41,012 INFO L499 BasicCegarLoop]: trace histogram [5, 5, 4, 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:14:41,038 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:14:41,231 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:14:41,232 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 15:14:41,232 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 15:14:41,232 INFO L85 PathProgramCache]: Analyzing trace with hash -921054650, now seen corresponding path program 2 times [2022-04-07 15:14:41,232 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 15:14:41,232 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [844369460] [2022-04-07 15:14:41,232 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:14:41,232 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 15:14:41,247 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 15:14:41,247 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1391674216] [2022-04-07 15:14:41,247 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-07 15:14:41,247 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 15:14:41,248 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 15:14:41,248 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:14:41,267 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:14:41,303 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-07 15:14:41,303 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-07 15:14:41,304 INFO L263 TraceCheckSpWp]: Trace formula consists of 164 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-07 15:14:41,315 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:14:41,317 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 15:14:41,589 INFO L272 TraceCheckUtils]: 0: Hoare triple {3510#true} call ULTIMATE.init(); {3510#true} is VALID [2022-04-07 15:14:41,590 INFO L290 TraceCheckUtils]: 1: Hoare triple {3510#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; {3518#(<= ~counter~0 0)} is VALID [2022-04-07 15:14:41,590 INFO L290 TraceCheckUtils]: 2: Hoare triple {3518#(<= ~counter~0 0)} assume true; {3518#(<= ~counter~0 0)} is VALID [2022-04-07 15:14:41,590 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3518#(<= ~counter~0 0)} {3510#true} #65#return; {3518#(<= ~counter~0 0)} is VALID [2022-04-07 15:14:41,591 INFO L272 TraceCheckUtils]: 4: Hoare triple {3518#(<= ~counter~0 0)} call #t~ret7 := main(); {3518#(<= ~counter~0 0)} is VALID [2022-04-07 15:14:41,591 INFO L290 TraceCheckUtils]: 5: Hoare triple {3518#(<= ~counter~0 0)} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {3518#(<= ~counter~0 0)} is VALID [2022-04-07 15:14:41,592 INFO L272 TraceCheckUtils]: 6: Hoare triple {3518#(<= ~counter~0 0)} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {3518#(<= ~counter~0 0)} is VALID [2022-04-07 15:14:41,592 INFO L290 TraceCheckUtils]: 7: Hoare triple {3518#(<= ~counter~0 0)} ~cond := #in~cond; {3518#(<= ~counter~0 0)} is VALID [2022-04-07 15:14:41,593 INFO L290 TraceCheckUtils]: 8: Hoare triple {3518#(<= ~counter~0 0)} assume !(0 == ~cond); {3518#(<= ~counter~0 0)} is VALID [2022-04-07 15:14:41,593 INFO L290 TraceCheckUtils]: 9: Hoare triple {3518#(<= ~counter~0 0)} assume true; {3518#(<= ~counter~0 0)} is VALID [2022-04-07 15:14:41,594 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3518#(<= ~counter~0 0)} {3518#(<= ~counter~0 0)} #59#return; {3518#(<= ~counter~0 0)} is VALID [2022-04-07 15:14:41,594 INFO L290 TraceCheckUtils]: 11: Hoare triple {3518#(<= ~counter~0 0)} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {3518#(<= ~counter~0 0)} is VALID [2022-04-07 15:14:41,595 INFO L290 TraceCheckUtils]: 12: Hoare triple {3518#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3552#(<= ~counter~0 1)} is VALID [2022-04-07 15:14:41,595 INFO L290 TraceCheckUtils]: 13: Hoare triple {3552#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {3552#(<= ~counter~0 1)} is VALID [2022-04-07 15:14:41,596 INFO L272 TraceCheckUtils]: 14: Hoare triple {3552#(<= ~counter~0 1)} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {3552#(<= ~counter~0 1)} is VALID [2022-04-07 15:14:41,596 INFO L290 TraceCheckUtils]: 15: Hoare triple {3552#(<= ~counter~0 1)} ~cond := #in~cond; {3552#(<= ~counter~0 1)} is VALID [2022-04-07 15:14:41,597 INFO L290 TraceCheckUtils]: 16: Hoare triple {3552#(<= ~counter~0 1)} assume !(0 == ~cond); {3552#(<= ~counter~0 1)} is VALID [2022-04-07 15:14:41,597 INFO L290 TraceCheckUtils]: 17: Hoare triple {3552#(<= ~counter~0 1)} assume true; {3552#(<= ~counter~0 1)} is VALID [2022-04-07 15:14:41,598 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3552#(<= ~counter~0 1)} {3552#(<= ~counter~0 1)} #61#return; {3552#(<= ~counter~0 1)} is VALID [2022-04-07 15:14:41,599 INFO L290 TraceCheckUtils]: 19: Hoare triple {3552#(<= ~counter~0 1)} assume !!(0 != ~y~0); {3552#(<= ~counter~0 1)} is VALID [2022-04-07 15:14:41,599 INFO L290 TraceCheckUtils]: 20: Hoare triple {3552#(<= ~counter~0 1)} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {3552#(<= ~counter~0 1)} is VALID [2022-04-07 15:14:41,599 INFO L290 TraceCheckUtils]: 21: Hoare triple {3552#(<= ~counter~0 1)} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {3552#(<= ~counter~0 1)} is VALID [2022-04-07 15:14:41,600 INFO L290 TraceCheckUtils]: 22: Hoare triple {3552#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3583#(<= ~counter~0 2)} is VALID [2022-04-07 15:14:41,600 INFO L290 TraceCheckUtils]: 23: Hoare triple {3583#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {3583#(<= ~counter~0 2)} is VALID [2022-04-07 15:14:41,601 INFO L272 TraceCheckUtils]: 24: Hoare triple {3583#(<= ~counter~0 2)} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {3583#(<= ~counter~0 2)} is VALID [2022-04-07 15:14:41,602 INFO L290 TraceCheckUtils]: 25: Hoare triple {3583#(<= ~counter~0 2)} ~cond := #in~cond; {3583#(<= ~counter~0 2)} is VALID [2022-04-07 15:14:41,602 INFO L290 TraceCheckUtils]: 26: Hoare triple {3583#(<= ~counter~0 2)} assume !(0 == ~cond); {3583#(<= ~counter~0 2)} is VALID [2022-04-07 15:14:41,602 INFO L290 TraceCheckUtils]: 27: Hoare triple {3583#(<= ~counter~0 2)} assume true; {3583#(<= ~counter~0 2)} is VALID [2022-04-07 15:14:41,603 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {3583#(<= ~counter~0 2)} {3583#(<= ~counter~0 2)} #61#return; {3583#(<= ~counter~0 2)} is VALID [2022-04-07 15:14:41,604 INFO L290 TraceCheckUtils]: 29: Hoare triple {3583#(<= ~counter~0 2)} assume !!(0 != ~y~0); {3583#(<= ~counter~0 2)} is VALID [2022-04-07 15:14:41,604 INFO L290 TraceCheckUtils]: 30: Hoare triple {3583#(<= ~counter~0 2)} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {3583#(<= ~counter~0 2)} is VALID [2022-04-07 15:14:41,604 INFO L290 TraceCheckUtils]: 31: Hoare triple {3583#(<= ~counter~0 2)} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {3583#(<= ~counter~0 2)} is VALID [2022-04-07 15:14:41,605 INFO L290 TraceCheckUtils]: 32: Hoare triple {3583#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3614#(<= ~counter~0 3)} is VALID [2022-04-07 15:14:41,606 INFO L290 TraceCheckUtils]: 33: Hoare triple {3614#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {3614#(<= ~counter~0 3)} is VALID [2022-04-07 15:14:41,606 INFO L272 TraceCheckUtils]: 34: Hoare triple {3614#(<= ~counter~0 3)} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {3614#(<= ~counter~0 3)} is VALID [2022-04-07 15:14:41,607 INFO L290 TraceCheckUtils]: 35: Hoare triple {3614#(<= ~counter~0 3)} ~cond := #in~cond; {3614#(<= ~counter~0 3)} is VALID [2022-04-07 15:14:41,607 INFO L290 TraceCheckUtils]: 36: Hoare triple {3614#(<= ~counter~0 3)} assume !(0 == ~cond); {3614#(<= ~counter~0 3)} is VALID [2022-04-07 15:14:41,607 INFO L290 TraceCheckUtils]: 37: Hoare triple {3614#(<= ~counter~0 3)} assume true; {3614#(<= ~counter~0 3)} is VALID [2022-04-07 15:14:41,608 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {3614#(<= ~counter~0 3)} {3614#(<= ~counter~0 3)} #61#return; {3614#(<= ~counter~0 3)} is VALID [2022-04-07 15:14:41,609 INFO L290 TraceCheckUtils]: 39: Hoare triple {3614#(<= ~counter~0 3)} assume !!(0 != ~y~0); {3614#(<= ~counter~0 3)} is VALID [2022-04-07 15:14:41,609 INFO L290 TraceCheckUtils]: 40: Hoare triple {3614#(<= ~counter~0 3)} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {3614#(<= ~counter~0 3)} is VALID [2022-04-07 15:14:41,609 INFO L290 TraceCheckUtils]: 41: Hoare triple {3614#(<= ~counter~0 3)} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {3614#(<= ~counter~0 3)} is VALID [2022-04-07 15:14:41,610 INFO L290 TraceCheckUtils]: 42: Hoare triple {3614#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3645#(<= ~counter~0 4)} is VALID [2022-04-07 15:14:41,610 INFO L290 TraceCheckUtils]: 43: Hoare triple {3645#(<= ~counter~0 4)} assume !!(#t~post6 < 10);havoc #t~post6; {3645#(<= ~counter~0 4)} is VALID [2022-04-07 15:14:41,611 INFO L272 TraceCheckUtils]: 44: Hoare triple {3645#(<= ~counter~0 4)} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {3645#(<= ~counter~0 4)} is VALID [2022-04-07 15:14:41,611 INFO L290 TraceCheckUtils]: 45: Hoare triple {3645#(<= ~counter~0 4)} ~cond := #in~cond; {3645#(<= ~counter~0 4)} is VALID [2022-04-07 15:14:41,612 INFO L290 TraceCheckUtils]: 46: Hoare triple {3645#(<= ~counter~0 4)} assume !(0 == ~cond); {3645#(<= ~counter~0 4)} is VALID [2022-04-07 15:14:41,612 INFO L290 TraceCheckUtils]: 47: Hoare triple {3645#(<= ~counter~0 4)} assume true; {3645#(<= ~counter~0 4)} is VALID [2022-04-07 15:14:41,613 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {3645#(<= ~counter~0 4)} {3645#(<= ~counter~0 4)} #61#return; {3645#(<= ~counter~0 4)} is VALID [2022-04-07 15:14:41,613 INFO L290 TraceCheckUtils]: 49: Hoare triple {3645#(<= ~counter~0 4)} assume !!(0 != ~y~0); {3645#(<= ~counter~0 4)} is VALID [2022-04-07 15:14:41,614 INFO L290 TraceCheckUtils]: 50: Hoare triple {3645#(<= ~counter~0 4)} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {3645#(<= ~counter~0 4)} is VALID [2022-04-07 15:14:41,614 INFO L290 TraceCheckUtils]: 51: Hoare triple {3645#(<= ~counter~0 4)} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {3645#(<= ~counter~0 4)} is VALID [2022-04-07 15:14:41,614 INFO L290 TraceCheckUtils]: 52: Hoare triple {3645#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3676#(<= |main_#t~post6| 4)} is VALID [2022-04-07 15:14:41,615 INFO L290 TraceCheckUtils]: 53: Hoare triple {3676#(<= |main_#t~post6| 4)} assume !(#t~post6 < 10);havoc #t~post6; {3511#false} is VALID [2022-04-07 15:14:41,615 INFO L272 TraceCheckUtils]: 54: Hoare triple {3511#false} call __VERIFIER_assert((if ~z~0 == ~a~0 * ~b~0 then 1 else 0)); {3511#false} is VALID [2022-04-07 15:14:41,615 INFO L290 TraceCheckUtils]: 55: Hoare triple {3511#false} ~cond := #in~cond; {3511#false} is VALID [2022-04-07 15:14:41,615 INFO L290 TraceCheckUtils]: 56: Hoare triple {3511#false} assume 0 == ~cond; {3511#false} is VALID [2022-04-07 15:14:41,615 INFO L290 TraceCheckUtils]: 57: Hoare triple {3511#false} assume !false; {3511#false} is VALID [2022-04-07 15:14:41,615 INFO L134 CoverageAnalysis]: Checked inductivity of 76 backedges. 8 proven. 68 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-07 15:14:41,616 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 15:14:41,960 INFO L290 TraceCheckUtils]: 57: Hoare triple {3511#false} assume !false; {3511#false} is VALID [2022-04-07 15:14:41,960 INFO L290 TraceCheckUtils]: 56: Hoare triple {3511#false} assume 0 == ~cond; {3511#false} is VALID [2022-04-07 15:14:41,960 INFO L290 TraceCheckUtils]: 55: Hoare triple {3511#false} ~cond := #in~cond; {3511#false} is VALID [2022-04-07 15:14:41,960 INFO L272 TraceCheckUtils]: 54: Hoare triple {3511#false} call __VERIFIER_assert((if ~z~0 == ~a~0 * ~b~0 then 1 else 0)); {3511#false} is VALID [2022-04-07 15:14:41,961 INFO L290 TraceCheckUtils]: 53: Hoare triple {3704#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {3511#false} is VALID [2022-04-07 15:14:41,961 INFO L290 TraceCheckUtils]: 52: Hoare triple {3708#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3704#(< |main_#t~post6| 10)} is VALID [2022-04-07 15:14:41,961 INFO L290 TraceCheckUtils]: 51: Hoare triple {3708#(< ~counter~0 10)} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {3708#(< ~counter~0 10)} is VALID [2022-04-07 15:14:41,962 INFO L290 TraceCheckUtils]: 50: Hoare triple {3708#(< ~counter~0 10)} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {3708#(< ~counter~0 10)} is VALID [2022-04-07 15:14:41,962 INFO L290 TraceCheckUtils]: 49: Hoare triple {3708#(< ~counter~0 10)} assume !!(0 != ~y~0); {3708#(< ~counter~0 10)} is VALID [2022-04-07 15:14:41,963 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {3510#true} {3708#(< ~counter~0 10)} #61#return; {3708#(< ~counter~0 10)} is VALID [2022-04-07 15:14:41,963 INFO L290 TraceCheckUtils]: 47: Hoare triple {3510#true} assume true; {3510#true} is VALID [2022-04-07 15:14:41,963 INFO L290 TraceCheckUtils]: 46: Hoare triple {3510#true} assume !(0 == ~cond); {3510#true} is VALID [2022-04-07 15:14:41,963 INFO L290 TraceCheckUtils]: 45: Hoare triple {3510#true} ~cond := #in~cond; {3510#true} is VALID [2022-04-07 15:14:41,963 INFO L272 TraceCheckUtils]: 44: Hoare triple {3708#(< ~counter~0 10)} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {3510#true} is VALID [2022-04-07 15:14:41,963 INFO L290 TraceCheckUtils]: 43: Hoare triple {3708#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {3708#(< ~counter~0 10)} is VALID [2022-04-07 15:14:41,964 INFO L290 TraceCheckUtils]: 42: Hoare triple {3739#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3708#(< ~counter~0 10)} is VALID [2022-04-07 15:14:41,964 INFO L290 TraceCheckUtils]: 41: Hoare triple {3739#(< ~counter~0 9)} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {3739#(< ~counter~0 9)} is VALID [2022-04-07 15:14:41,965 INFO L290 TraceCheckUtils]: 40: Hoare triple {3739#(< ~counter~0 9)} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {3739#(< ~counter~0 9)} is VALID [2022-04-07 15:14:41,965 INFO L290 TraceCheckUtils]: 39: Hoare triple {3739#(< ~counter~0 9)} assume !!(0 != ~y~0); {3739#(< ~counter~0 9)} is VALID [2022-04-07 15:14:41,966 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {3510#true} {3739#(< ~counter~0 9)} #61#return; {3739#(< ~counter~0 9)} is VALID [2022-04-07 15:14:41,966 INFO L290 TraceCheckUtils]: 37: Hoare triple {3510#true} assume true; {3510#true} is VALID [2022-04-07 15:14:41,966 INFO L290 TraceCheckUtils]: 36: Hoare triple {3510#true} assume !(0 == ~cond); {3510#true} is VALID [2022-04-07 15:14:41,966 INFO L290 TraceCheckUtils]: 35: Hoare triple {3510#true} ~cond := #in~cond; {3510#true} is VALID [2022-04-07 15:14:41,966 INFO L272 TraceCheckUtils]: 34: Hoare triple {3739#(< ~counter~0 9)} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {3510#true} is VALID [2022-04-07 15:14:41,967 INFO L290 TraceCheckUtils]: 33: Hoare triple {3739#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {3739#(< ~counter~0 9)} is VALID [2022-04-07 15:14:41,967 INFO L290 TraceCheckUtils]: 32: Hoare triple {3770#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3739#(< ~counter~0 9)} is VALID [2022-04-07 15:14:41,968 INFO L290 TraceCheckUtils]: 31: Hoare triple {3770#(< ~counter~0 8)} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {3770#(< ~counter~0 8)} is VALID [2022-04-07 15:14:41,968 INFO L290 TraceCheckUtils]: 30: Hoare triple {3770#(< ~counter~0 8)} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {3770#(< ~counter~0 8)} is VALID [2022-04-07 15:14:41,968 INFO L290 TraceCheckUtils]: 29: Hoare triple {3770#(< ~counter~0 8)} assume !!(0 != ~y~0); {3770#(< ~counter~0 8)} is VALID [2022-04-07 15:14:41,969 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {3510#true} {3770#(< ~counter~0 8)} #61#return; {3770#(< ~counter~0 8)} is VALID [2022-04-07 15:14:41,969 INFO L290 TraceCheckUtils]: 27: Hoare triple {3510#true} assume true; {3510#true} is VALID [2022-04-07 15:14:41,970 INFO L290 TraceCheckUtils]: 26: Hoare triple {3510#true} assume !(0 == ~cond); {3510#true} is VALID [2022-04-07 15:14:41,970 INFO L290 TraceCheckUtils]: 25: Hoare triple {3510#true} ~cond := #in~cond; {3510#true} is VALID [2022-04-07 15:14:41,970 INFO L272 TraceCheckUtils]: 24: Hoare triple {3770#(< ~counter~0 8)} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {3510#true} is VALID [2022-04-07 15:14:41,970 INFO L290 TraceCheckUtils]: 23: Hoare triple {3770#(< ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {3770#(< ~counter~0 8)} is VALID [2022-04-07 15:14:41,971 INFO L290 TraceCheckUtils]: 22: Hoare triple {3801#(< ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3770#(< ~counter~0 8)} is VALID [2022-04-07 15:14:41,971 INFO L290 TraceCheckUtils]: 21: Hoare triple {3801#(< ~counter~0 7)} ~x~0 := 2 * ~x~0;~y~0 := (if ~y~0 < 0 && 0 != ~y~0 % 2 then 1 + ~y~0 / 2 else ~y~0 / 2); {3801#(< ~counter~0 7)} is VALID [2022-04-07 15:14:41,972 INFO L290 TraceCheckUtils]: 20: Hoare triple {3801#(< ~counter~0 7)} assume !(1 == (if ~y~0 < 0 && 0 != ~y~0 % 2 then ~y~0 % 2 - 2 else ~y~0 % 2)); {3801#(< ~counter~0 7)} is VALID [2022-04-07 15:14:41,972 INFO L290 TraceCheckUtils]: 19: Hoare triple {3801#(< ~counter~0 7)} assume !!(0 != ~y~0); {3801#(< ~counter~0 7)} is VALID [2022-04-07 15:14:41,973 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3510#true} {3801#(< ~counter~0 7)} #61#return; {3801#(< ~counter~0 7)} is VALID [2022-04-07 15:14:41,973 INFO L290 TraceCheckUtils]: 17: Hoare triple {3510#true} assume true; {3510#true} is VALID [2022-04-07 15:14:41,973 INFO L290 TraceCheckUtils]: 16: Hoare triple {3510#true} assume !(0 == ~cond); {3510#true} is VALID [2022-04-07 15:14:41,973 INFO L290 TraceCheckUtils]: 15: Hoare triple {3510#true} ~cond := #in~cond; {3510#true} is VALID [2022-04-07 15:14:41,973 INFO L272 TraceCheckUtils]: 14: Hoare triple {3801#(< ~counter~0 7)} call __VERIFIER_assert((if ~z~0 + ~x~0 * ~y~0 == ~a~0 * ~b~0 then 1 else 0)); {3510#true} is VALID [2022-04-07 15:14:41,974 INFO L290 TraceCheckUtils]: 13: Hoare triple {3801#(< ~counter~0 7)} assume !!(#t~post6 < 10);havoc #t~post6; {3801#(< ~counter~0 7)} is VALID [2022-04-07 15:14:41,974 INFO L290 TraceCheckUtils]: 12: Hoare triple {3832#(< ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3801#(< ~counter~0 7)} is VALID [2022-04-07 15:14:41,975 INFO L290 TraceCheckUtils]: 11: Hoare triple {3832#(< ~counter~0 6)} ~x~0 := ~a~0;~y~0 := ~b~0;~z~0 := 0; {3832#(< ~counter~0 6)} is VALID [2022-04-07 15:14:41,975 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3510#true} {3832#(< ~counter~0 6)} #59#return; {3832#(< ~counter~0 6)} is VALID [2022-04-07 15:14:41,975 INFO L290 TraceCheckUtils]: 9: Hoare triple {3510#true} assume true; {3510#true} is VALID [2022-04-07 15:14:41,975 INFO L290 TraceCheckUtils]: 8: Hoare triple {3510#true} assume !(0 == ~cond); {3510#true} is VALID [2022-04-07 15:14:41,975 INFO L290 TraceCheckUtils]: 7: Hoare triple {3510#true} ~cond := #in~cond; {3510#true} is VALID [2022-04-07 15:14:41,976 INFO L272 TraceCheckUtils]: 6: Hoare triple {3832#(< ~counter~0 6)} call assume_abort_if_not((if ~b~0 >= 1 then 1 else 0)); {3510#true} is VALID [2022-04-07 15:14:41,976 INFO L290 TraceCheckUtils]: 5: Hoare triple {3832#(< ~counter~0 6)} havoc ~a~0;havoc ~b~0;havoc ~x~0;havoc ~y~0;havoc ~z~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~a~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~b~0 := #t~nondet5;havoc #t~nondet5; {3832#(< ~counter~0 6)} is VALID [2022-04-07 15:14:41,976 INFO L272 TraceCheckUtils]: 4: Hoare triple {3832#(< ~counter~0 6)} call #t~ret7 := main(); {3832#(< ~counter~0 6)} is VALID [2022-04-07 15:14:41,977 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3832#(< ~counter~0 6)} {3510#true} #65#return; {3832#(< ~counter~0 6)} is VALID [2022-04-07 15:14:41,977 INFO L290 TraceCheckUtils]: 2: Hoare triple {3832#(< ~counter~0 6)} assume true; {3832#(< ~counter~0 6)} is VALID [2022-04-07 15:14:41,978 INFO L290 TraceCheckUtils]: 1: Hoare triple {3510#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; {3832#(< ~counter~0 6)} is VALID [2022-04-07 15:14:41,978 INFO L272 TraceCheckUtils]: 0: Hoare triple {3510#true} call ULTIMATE.init(); {3510#true} is VALID [2022-04-07 15:14:41,978 INFO L134 CoverageAnalysis]: Checked inductivity of 76 backedges. 8 proven. 44 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-07 15:14:41,978 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 15:14:41,978 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [844369460] [2022-04-07 15:14:41,978 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 15:14:41,978 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1391674216] [2022-04-07 15:14:41,978 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1391674216] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 15:14:41,978 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 15:14:41,978 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-07 15:14:41,979 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [780196369] [2022-04-07 15:14:41,979 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 15:14:41,980 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 5.428571428571429) internal successors, (76), 14 states have internal predecessors, (76), 12 states have call successors, (14), 8 states have call predecessors, (14), 7 states have return successors, (12), 10 states have call predecessors, (12), 11 states have call successors, (12) Word has length 58 [2022-04-07 15:14:41,980 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 15:14:41,981 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 5.428571428571429) internal successors, (76), 14 states have internal predecessors, (76), 12 states have call successors, (14), 8 states have call predecessors, (14), 7 states have return successors, (12), 10 states have call predecessors, (12), 11 states have call successors, (12) [2022-04-07 15:14:42,050 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 102 edges. 102 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 15:14:42,050 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-07 15:14:42,050 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 15:14:42,051 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-07 15:14:42,051 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-07 15:14:42,051 INFO L87 Difference]: Start difference. First operand 120 states and 132 transitions. Second operand has 14 states, 14 states have (on average 5.428571428571429) internal successors, (76), 14 states have internal predecessors, (76), 12 states have call successors, (14), 8 states have call predecessors, (14), 7 states have return successors, (12), 10 states have call predecessors, (12), 11 states have call successors, (12) [2022-04-07 15:14:42,538 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:14:42,538 INFO L93 Difference]: Finished difference Result 300 states and 341 transitions. [2022-04-07 15:14:42,538 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-07 15:14:42,539 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 5.428571428571429) internal successors, (76), 14 states have internal predecessors, (76), 12 states have call successors, (14), 8 states have call predecessors, (14), 7 states have return successors, (12), 10 states have call predecessors, (12), 11 states have call successors, (12) Word has length 58 [2022-04-07 15:14:42,539 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 15:14:42,539 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 5.428571428571429) internal successors, (76), 14 states have internal predecessors, (76), 12 states have call successors, (14), 8 states have call predecessors, (14), 7 states have return successors, (12), 10 states have call predecessors, (12), 11 states have call successors, (12) [2022-04-07 15:14:42,542 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 150 transitions. [2022-04-07 15:14:42,543 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 5.428571428571429) internal successors, (76), 14 states have internal predecessors, (76), 12 states have call successors, (14), 8 states have call predecessors, (14), 7 states have return successors, (12), 10 states have call predecessors, (12), 11 states have call successors, (12) [2022-04-07 15:14:42,546 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 150 transitions. [2022-04-07 15:14:42,546 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 150 transitions. [2022-04-07 15:14:42,648 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 150 edges. 150 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 15:14:42,656 INFO L225 Difference]: With dead ends: 300 [2022-04-07 15:14:42,656 INFO L226 Difference]: Without dead ends: 293 [2022-04-07 15:14:42,656 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 124 GetRequests, 103 SyntacticMatches, 0 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 55 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=184, Invalid=322, Unknown=0, NotChecked=0, Total=506 [2022-04-07 15:14:42,657 INFO L913 BasicCegarLoop]: 34 mSDtfsCounter, 148 mSDsluCounter, 155 mSDsCounter, 0 mSdLazyCounter, 58 mSolverCounterSat, 42 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 148 SdHoareTripleChecker+Valid, 189 SdHoareTripleChecker+Invalid, 100 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 42 IncrementalHoareTripleChecker+Valid, 58 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-07 15:14:42,657 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [148 Valid, 189 Invalid, 100 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [42 Valid, 58 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-07 15:14:42,658 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 293 states. [2022-04-07 15:14:42,767 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 293 to 283. [2022-04-07 15:14:42,767 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 15:14:42,768 INFO L82 GeneralOperation]: Start isEquivalent. First operand 293 states. Second operand has 283 states, 221 states have (on average 1.1312217194570136) internal successors, (250), 230 states have internal predecessors, (250), 32 states have call successors, (32), 30 states have call predecessors, (32), 29 states have return successors, (30), 22 states have call predecessors, (30), 30 states have call successors, (30) [2022-04-07 15:14:42,769 INFO L74 IsIncluded]: Start isIncluded. First operand 293 states. Second operand has 283 states, 221 states have (on average 1.1312217194570136) internal successors, (250), 230 states have internal predecessors, (250), 32 states have call successors, (32), 30 states have call predecessors, (32), 29 states have return successors, (30), 22 states have call predecessors, (30), 30 states have call successors, (30) [2022-04-07 15:14:42,770 INFO L87 Difference]: Start difference. First operand 293 states. Second operand has 283 states, 221 states have (on average 1.1312217194570136) internal successors, (250), 230 states have internal predecessors, (250), 32 states have call successors, (32), 30 states have call predecessors, (32), 29 states have return successors, (30), 22 states have call predecessors, (30), 30 states have call successors, (30) [2022-04-07 15:14:42,778 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:14:42,778 INFO L93 Difference]: Finished difference Result 293 states and 317 transitions. [2022-04-07 15:14:42,778 INFO L276 IsEmpty]: Start isEmpty. Operand 293 states and 317 transitions. [2022-04-07 15:14:42,779 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:14:42,779 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:14:42,780 INFO L74 IsIncluded]: Start isIncluded. First operand has 283 states, 221 states have (on average 1.1312217194570136) internal successors, (250), 230 states have internal predecessors, (250), 32 states have call successors, (32), 30 states have call predecessors, (32), 29 states have return successors, (30), 22 states have call predecessors, (30), 30 states have call successors, (30) Second operand 293 states. [2022-04-07 15:14:42,780 INFO L87 Difference]: Start difference. First operand has 283 states, 221 states have (on average 1.1312217194570136) internal successors, (250), 230 states have internal predecessors, (250), 32 states have call successors, (32), 30 states have call predecessors, (32), 29 states have return successors, (30), 22 states have call predecessors, (30), 30 states have call successors, (30) Second operand 293 states. [2022-04-07 15:14:42,789 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 15:14:42,789 INFO L93 Difference]: Finished difference Result 293 states and 317 transitions. [2022-04-07 15:14:42,789 INFO L276 IsEmpty]: Start isEmpty. Operand 293 states and 317 transitions. [2022-04-07 15:14:42,790 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 15:14:42,790 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 15:14:42,790 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 15:14:42,790 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 15:14:42,791 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 283 states, 221 states have (on average 1.1312217194570136) internal successors, (250), 230 states have internal predecessors, (250), 32 states have call successors, (32), 30 states have call predecessors, (32), 29 states have return successors, (30), 22 states have call predecessors, (30), 30 states have call successors, (30) [2022-04-07 15:14:42,800 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 283 states to 283 states and 312 transitions. [2022-04-07 15:14:42,800 INFO L78 Accepts]: Start accepts. Automaton has 283 states and 312 transitions. Word has length 58 [2022-04-07 15:14:42,800 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 15:14:42,800 INFO L478 AbstractCegarLoop]: Abstraction has 283 states and 312 transitions. [2022-04-07 15:14:42,800 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 5.428571428571429) internal successors, (76), 14 states have internal predecessors, (76), 12 states have call successors, (14), 8 states have call predecessors, (14), 7 states have return successors, (12), 10 states have call predecessors, (12), 11 states have call successors, (12) [2022-04-07 15:14:42,801 INFO L276 IsEmpty]: Start isEmpty. Operand 283 states and 312 transitions. [2022-04-07 15:14:42,801 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-07 15:14:42,801 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 15:14:42,801 INFO L499 BasicCegarLoop]: trace histogram [5, 5, 5, 5, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 15:14:42,825 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:14:43,015 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:14:43,016 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 15:14:43,016 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 15:14:43,016 INFO L85 PathProgramCache]: Analyzing trace with hash -919267190, now seen corresponding path program 2 times [2022-04-07 15:14:43,016 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 15:14:43,016 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1202057655] [2022-04-07 15:14:43,016 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 15:14:43,016 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 15:14:43,033 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 15:14:43,033 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1067263285] [2022-04-07 15:14:43,033 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-07 15:14:43,033 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 15:14:43,033 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 15:14:43,035 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:14:43,035 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:14:43,077 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-07 15:14:43,077 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-07 15:14:43,078 INFO L263 TraceCheckSpWp]: Trace formula consists of 164 conjuncts, 43 conjunts are in the unsatisfiable core [2022-04-07 15:14:43,102 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 15:14:43,103 INFO L286 TraceCheckSpWp]: Computing forward predicates...