/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/egcd-ll_valuebound50.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-27 12:52:22,637 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-27 12:52:22,639 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-27 12:52:22,683 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-27 12:52:22,683 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-27 12:52:22,684 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-27 12:52:22,685 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-27 12:52:22,686 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-27 12:52:22,688 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-27 12:52:22,688 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-27 12:52:22,689 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-27 12:52:22,696 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-27 12:52:22,697 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-27 12:52:22,697 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-27 12:52:22,698 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-27 12:52:22,699 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-27 12:52:22,700 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-27 12:52:22,701 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-27 12:52:22,703 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-27 12:52:22,706 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-27 12:52:22,707 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-27 12:52:22,709 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-27 12:52:22,710 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-27 12:52:22,712 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-27 12:52:22,714 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-27 12:52:22,718 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-27 12:52:22,718 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-27 12:52:22,719 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-27 12:52:22,719 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-27 12:52:22,720 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-27 12:52:22,720 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-27 12:52:22,721 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-27 12:52:22,721 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-27 12:52:22,722 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-27 12:52:22,722 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-27 12:52:22,723 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-27 12:52:22,724 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-27 12:52:22,724 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-27 12:52:22,724 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-27 12:52:22,725 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-27 12:52:22,725 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-27 12:52:22,730 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-27 12:52:22,731 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-27 12:52:22,756 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-27 12:52:22,757 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-27 12:52:22,757 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-04-27 12:52:22,757 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-04-27 12:52:22,758 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-27 12:52:22,758 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-27 12:52:22,758 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-27 12:52:22,759 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-27 12:52:22,759 INFO L138 SettingsManager]: * Use SBE=true [2022-04-27 12:52:22,759 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-27 12:52:22,760 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-27 12:52:22,760 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-27 12:52:22,760 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-27 12:52:22,760 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-27 12:52:22,760 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-27 12:52:22,760 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-27 12:52:22,760 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-27 12:52:22,760 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-27 12:52:22,760 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-27 12:52:22,760 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-27 12:52:22,761 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-27 12:52:22,761 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-27 12:52:22,761 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-27 12:52:22,761 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-27 12:52:22,761 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 12:52:22,761 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-27 12:52:22,761 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-27 12:52:22,761 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-27 12:52:22,762 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-27 12:52:22,762 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-27 12:52:22,762 INFO L138 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2022-04-27 12:52:22,762 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-04-27 12:52:22,762 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-27 12:52:22,762 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-27 12:52:23,000 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-27 12:52:23,030 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-27 12:52:23,033 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-27 12:52:23,034 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-27 12:52:23,034 INFO L275 PluginConnector]: CDTParser initialized [2022-04-27 12:52:23,035 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/egcd-ll_valuebound50.c [2022-04-27 12:52:23,090 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9783ab2d1/7bb2974e0b7746f49edff0e5f94e33e5/FLAGe4901277a [2022-04-27 12:52:23,467 INFO L306 CDTParser]: Found 1 translation units. [2022-04-27 12:52:23,467 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd-ll_valuebound50.c [2022-04-27 12:52:23,472 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9783ab2d1/7bb2974e0b7746f49edff0e5f94e33e5/FLAGe4901277a [2022-04-27 12:52:23,879 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9783ab2d1/7bb2974e0b7746f49edff0e5f94e33e5 [2022-04-27 12:52:23,882 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-27 12:52:23,884 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-27 12:52:23,886 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-27 12:52:23,887 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-27 12:52:23,889 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-27 12:52:23,890 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 12:52:23" (1/1) ... [2022-04-27 12:52:23,891 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2e76ad89 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:52:23, skipping insertion in model container [2022-04-27 12:52:23,891 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 12:52:23" (1/1) ... [2022-04-27 12:52:23,898 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-27 12:52:23,913 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-27 12:52:24,120 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/egcd-ll_valuebound50.c[489,502] [2022-04-27 12:52:24,138 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 12:52:24,144 INFO L203 MainTranslator]: Completed pre-run [2022-04-27 12:52:24,154 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/egcd-ll_valuebound50.c[489,502] [2022-04-27 12:52:24,162 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 12:52:24,173 INFO L208 MainTranslator]: Completed translation [2022-04-27 12:52:24,173 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:52:24 WrapperNode [2022-04-27 12:52:24,173 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-27 12:52:24,174 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-27 12:52:24,174 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-27 12:52:24,175 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-27 12:52:24,183 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:52:24" (1/1) ... [2022-04-27 12:52:24,184 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:52:24" (1/1) ... [2022-04-27 12:52:24,189 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:52:24" (1/1) ... [2022-04-27 12:52:24,189 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:52:24" (1/1) ... [2022-04-27 12:52:24,194 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:52:24" (1/1) ... [2022-04-27 12:52:24,198 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:52:24" (1/1) ... [2022-04-27 12:52:24,199 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:52:24" (1/1) ... [2022-04-27 12:52:24,200 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-27 12:52:24,201 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-27 12:52:24,201 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-27 12:52:24,201 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-27 12:52:24,202 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:52:24" (1/1) ... [2022-04-27 12:52:24,208 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 12:52:24,224 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:52:24,236 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-27 12:52:24,267 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-27 12:52:24,288 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-27 12:52:24,289 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-27 12:52:24,289 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-27 12:52:24,290 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-27 12:52:24,291 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-27 12:52:24,291 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-27 12:52:24,291 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-27 12:52:24,291 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-27 12:52:24,292 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-27 12:52:24,292 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-27 12:52:24,292 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-27 12:52:24,292 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-27 12:52:24,292 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-27 12:52:24,292 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-27 12:52:24,292 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-27 12:52:24,293 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-27 12:52:24,293 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-27 12:52:24,293 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-27 12:52:24,293 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-27 12:52:24,293 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-27 12:52:24,352 INFO L234 CfgBuilder]: Building ICFG [2022-04-27 12:52:24,353 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-27 12:52:24,556 INFO L275 CfgBuilder]: Performing block encoding [2022-04-27 12:52:24,562 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-27 12:52:24,563 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-27 12:52:24,564 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 12:52:24 BoogieIcfgContainer [2022-04-27 12:52:24,564 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-27 12:52:24,566 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-27 12:52:24,566 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-27 12:52:24,569 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-27 12:52:24,569 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.04 12:52:23" (1/3) ... [2022-04-27 12:52:24,570 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@54b6c367 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 12:52:24, skipping insertion in model container [2022-04-27 12:52:24,570 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:52:24" (2/3) ... [2022-04-27 12:52:24,570 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@54b6c367 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 12:52:24, skipping insertion in model container [2022-04-27 12:52:24,570 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 12:52:24" (3/3) ... [2022-04-27 12:52:24,571 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd-ll_valuebound50.c [2022-04-27 12:52:24,583 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-27 12:52:24,591 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-27 12:52:24,637 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-27 12:52:24,642 INFO L357 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, mPorIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@f55d39b, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@41d99071 [2022-04-27 12:52:24,642 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-27 12:52:24,649 INFO L276 IsEmpty]: Start isEmpty. Operand has 37 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 19 states have internal predecessors, (25), 13 states have call successors, (13), 4 states have call predecessors, (13), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-27 12:52:24,655 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-27 12:52:24,655 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:52:24,656 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:52:24,656 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:52:24,660 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:52:24,661 INFO L85 PathProgramCache]: Analyzing trace with hash 870870740, now seen corresponding path program 1 times [2022-04-27 12:52:24,668 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:52:24,669 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1623765971] [2022-04-27 12:52:24,669 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:52:24,670 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:52:24,754 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:24,812 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 12:52:24,828 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:24,847 INFO L290 TraceCheckUtils]: 0: Hoare triple {61#(and (= |#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(10, 2);call #Ultimate.allocInit(12, 3); {40#true} is VALID [2022-04-27 12:52:24,847 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume true; {40#true} is VALID [2022-04-27 12:52:24,847 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {40#true} {40#true} #88#return; {40#true} is VALID [2022-04-27 12:52:24,848 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-27 12:52:24,855 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:24,876 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-27 12:52:24,877 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-27 12:52:24,877 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-27 12:52:24,877 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {40#true} #66#return; {41#false} is VALID [2022-04-27 12:52:24,878 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-27 12:52:24,882 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:24,888 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-27 12:52:24,888 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-27 12:52:24,888 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-27 12:52:24,889 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {41#false} #68#return; {41#false} is VALID [2022-04-27 12:52:24,889 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-27 12:52:24,890 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:24,895 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-27 12:52:24,896 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-27 12:52:24,896 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-27 12:52:24,896 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {41#false} #70#return; {41#false} is VALID [2022-04-27 12:52:24,896 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-27 12:52:24,899 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:24,914 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-27 12:52:24,915 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-27 12:52:24,915 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-27 12:52:24,915 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {41#false} #72#return; {41#false} is VALID [2022-04-27 12:52:24,917 INFO L272 TraceCheckUtils]: 0: Hoare triple {40#true} call ULTIMATE.init(); {61#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 12:52:24,918 INFO L290 TraceCheckUtils]: 1: Hoare triple {61#(and (= |#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(10, 2);call #Ultimate.allocInit(12, 3); {40#true} is VALID [2022-04-27 12:52:24,918 INFO L290 TraceCheckUtils]: 2: Hoare triple {40#true} assume true; {40#true} is VALID [2022-04-27 12:52:24,918 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40#true} {40#true} #88#return; {40#true} is VALID [2022-04-27 12:52:24,919 INFO L272 TraceCheckUtils]: 4: Hoare triple {40#true} call #t~ret6 := main(); {40#true} is VALID [2022-04-27 12:52:24,919 INFO L290 TraceCheckUtils]: 5: Hoare triple {40#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {40#true} is VALID [2022-04-27 12:52:24,919 INFO L272 TraceCheckUtils]: 6: Hoare triple {40#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {40#true} is VALID [2022-04-27 12:52:24,919 INFO L290 TraceCheckUtils]: 7: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-27 12:52:24,920 INFO L290 TraceCheckUtils]: 8: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-27 12:52:24,921 INFO L290 TraceCheckUtils]: 9: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-27 12:52:24,921 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {41#false} {40#true} #66#return; {41#false} is VALID [2022-04-27 12:52:24,921 INFO L290 TraceCheckUtils]: 11: Hoare triple {41#false} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {41#false} is VALID [2022-04-27 12:52:24,922 INFO L272 TraceCheckUtils]: 12: Hoare triple {41#false} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {40#true} is VALID [2022-04-27 12:52:24,922 INFO L290 TraceCheckUtils]: 13: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-27 12:52:24,922 INFO L290 TraceCheckUtils]: 14: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-27 12:52:24,923 INFO L290 TraceCheckUtils]: 15: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-27 12:52:24,923 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {41#false} {41#false} #68#return; {41#false} is VALID [2022-04-27 12:52:24,923 INFO L272 TraceCheckUtils]: 17: Hoare triple {41#false} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {40#true} is VALID [2022-04-27 12:52:24,924 INFO L290 TraceCheckUtils]: 18: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-27 12:52:24,925 INFO L290 TraceCheckUtils]: 19: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-27 12:52:24,925 INFO L290 TraceCheckUtils]: 20: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-27 12:52:24,925 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {41#false} {41#false} #70#return; {41#false} is VALID [2022-04-27 12:52:24,926 INFO L272 TraceCheckUtils]: 22: Hoare triple {41#false} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {40#true} is VALID [2022-04-27 12:52:24,927 INFO L290 TraceCheckUtils]: 23: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-27 12:52:24,927 INFO L290 TraceCheckUtils]: 24: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-27 12:52:24,927 INFO L290 TraceCheckUtils]: 25: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-27 12:52:24,927 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {41#false} {41#false} #72#return; {41#false} is VALID [2022-04-27 12:52:24,928 INFO L290 TraceCheckUtils]: 27: Hoare triple {41#false} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {41#false} is VALID [2022-04-27 12:52:24,928 INFO L290 TraceCheckUtils]: 28: Hoare triple {41#false} assume false; {41#false} is VALID [2022-04-27 12:52:24,931 INFO L272 TraceCheckUtils]: 29: Hoare triple {41#false} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {41#false} is VALID [2022-04-27 12:52:24,931 INFO L290 TraceCheckUtils]: 30: Hoare triple {41#false} ~cond := #in~cond; {41#false} is VALID [2022-04-27 12:52:24,932 INFO L290 TraceCheckUtils]: 31: Hoare triple {41#false} assume 0 == ~cond; {41#false} is VALID [2022-04-27 12:52:24,932 INFO L290 TraceCheckUtils]: 32: Hoare triple {41#false} assume !false; {41#false} is VALID [2022-04-27 12:52:24,933 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-27 12:52:24,933 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:52:24,933 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1623765971] [2022-04-27 12:52:24,934 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1623765971] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:52:24,934 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:52:24,934 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-27 12:52:24,937 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [889270294] [2022-04-27 12:52:24,938 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:52:24,943 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-27 12:52:24,945 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:52:24,949 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:52:24,988 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-27 12:52:24,988 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-27 12:52:24,989 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:52:25,013 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-27 12:52:25,017 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-27 12:52:25,020 INFO L87 Difference]: Start difference. First operand has 37 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 19 states have internal predecessors, (25), 13 states have call successors, (13), 4 states have call predecessors, (13), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:52:25,245 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:25,246 INFO L93 Difference]: Finished difference Result 67 states and 105 transitions. [2022-04-27 12:52:25,246 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-27 12:52:25,246 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-27 12:52:25,247 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:52:25,248 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:52:25,256 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 105 transitions. [2022-04-27 12:52:25,256 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:52:25,261 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 105 transitions. [2022-04-27 12:52:25,261 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 105 transitions. [2022-04-27 12:52:25,378 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 105 edges. 105 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:52:25,385 INFO L225 Difference]: With dead ends: 67 [2022-04-27 12:52:25,386 INFO L226 Difference]: Without dead ends: 32 [2022-04-27 12:52:25,388 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 16 GetRequests, 15 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-27 12:52:25,391 INFO L413 NwaCegarLoop]: 36 mSDtfsCounter, 18 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 13 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 29 SdHoareTripleChecker+Valid, 39 SdHoareTripleChecker+Invalid, 25 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 13 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 12:52:25,392 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [29 Valid, 39 Invalid, 25 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [12 Valid, 13 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 12:52:25,405 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2022-04-27 12:52:25,418 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 32. [2022-04-27 12:52:25,418 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:52:25,419 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand has 32 states, 15 states have (on average 1.2) internal successors, (18), 16 states have internal predecessors, (18), 13 states have call successors, (13), 4 states have call predecessors, (13), 3 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-27 12:52:25,419 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand has 32 states, 15 states have (on average 1.2) internal successors, (18), 16 states have internal predecessors, (18), 13 states have call successors, (13), 4 states have call predecessors, (13), 3 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-27 12:52:25,420 INFO L87 Difference]: Start difference. First operand 32 states. Second operand has 32 states, 15 states have (on average 1.2) internal successors, (18), 16 states have internal predecessors, (18), 13 states have call successors, (13), 4 states have call predecessors, (13), 3 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-27 12:52:25,424 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:25,424 INFO L93 Difference]: Finished difference Result 32 states and 42 transitions. [2022-04-27 12:52:25,424 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 42 transitions. [2022-04-27 12:52:25,425 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:52:25,425 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:52:25,425 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 15 states have (on average 1.2) internal successors, (18), 16 states have internal predecessors, (18), 13 states have call successors, (13), 4 states have call predecessors, (13), 3 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 32 states. [2022-04-27 12:52:25,426 INFO L87 Difference]: Start difference. First operand has 32 states, 15 states have (on average 1.2) internal successors, (18), 16 states have internal predecessors, (18), 13 states have call successors, (13), 4 states have call predecessors, (13), 3 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 32 states. [2022-04-27 12:52:25,429 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:25,429 INFO L93 Difference]: Finished difference Result 32 states and 42 transitions. [2022-04-27 12:52:25,430 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 42 transitions. [2022-04-27 12:52:25,430 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:52:25,431 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:52:25,431 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:52:25,431 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:52:25,431 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 15 states have (on average 1.2) internal successors, (18), 16 states have internal predecessors, (18), 13 states have call successors, (13), 4 states have call predecessors, (13), 3 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-27 12:52:25,434 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 42 transitions. [2022-04-27 12:52:25,435 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 42 transitions. Word has length 33 [2022-04-27 12:52:25,435 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:52:25,435 INFO L495 AbstractCegarLoop]: Abstraction has 32 states and 42 transitions. [2022-04-27 12:52:25,436 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:52:25,436 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 42 transitions. [2022-04-27 12:52:25,437 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-27 12:52:25,437 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:52:25,437 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:52:25,437 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-27 12:52:25,438 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:52:25,438 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:52:25,438 INFO L85 PathProgramCache]: Analyzing trace with hash -1006914976, now seen corresponding path program 1 times [2022-04-27 12:52:25,438 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:52:25,439 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [864238690] [2022-04-27 12:52:25,439 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:52:25,439 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:52:25,463 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:52:25,464 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1004276368] [2022-04-27 12:52:25,464 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:52:25,464 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:52:25,464 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:52:25,466 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:52:25,507 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-27 12:52:25,532 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:25,534 INFO L263 TraceCheckSpWp]: Trace formula consists of 105 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 12:52:25,546 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:25,553 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:52:27,971 INFO L272 TraceCheckUtils]: 0: Hoare triple {276#true} call ULTIMATE.init(); {276#true} is VALID [2022-04-27 12:52:27,971 INFO L290 TraceCheckUtils]: 1: Hoare triple {276#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(10, 2);call #Ultimate.allocInit(12, 3); {276#true} is VALID [2022-04-27 12:52:27,971 INFO L290 TraceCheckUtils]: 2: Hoare triple {276#true} assume true; {276#true} is VALID [2022-04-27 12:52:27,971 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {276#true} {276#true} #88#return; {276#true} is VALID [2022-04-27 12:52:27,972 INFO L272 TraceCheckUtils]: 4: Hoare triple {276#true} call #t~ret6 := main(); {276#true} is VALID [2022-04-27 12:52:27,972 INFO L290 TraceCheckUtils]: 5: Hoare triple {276#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {276#true} is VALID [2022-04-27 12:52:27,972 INFO L272 TraceCheckUtils]: 6: Hoare triple {276#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {276#true} is VALID [2022-04-27 12:52:27,972 INFO L290 TraceCheckUtils]: 7: Hoare triple {276#true} ~cond := #in~cond; {276#true} is VALID [2022-04-27 12:52:27,972 INFO L290 TraceCheckUtils]: 8: Hoare triple {276#true} assume !(0 == ~cond); {276#true} is VALID [2022-04-27 12:52:27,973 INFO L290 TraceCheckUtils]: 9: Hoare triple {276#true} assume true; {276#true} is VALID [2022-04-27 12:52:27,973 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {276#true} {276#true} #66#return; {276#true} is VALID [2022-04-27 12:52:27,973 INFO L290 TraceCheckUtils]: 11: Hoare triple {276#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {276#true} is VALID [2022-04-27 12:52:27,973 INFO L272 TraceCheckUtils]: 12: Hoare triple {276#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {276#true} is VALID [2022-04-27 12:52:27,973 INFO L290 TraceCheckUtils]: 13: Hoare triple {276#true} ~cond := #in~cond; {276#true} is VALID [2022-04-27 12:52:27,973 INFO L290 TraceCheckUtils]: 14: Hoare triple {276#true} assume !(0 == ~cond); {276#true} is VALID [2022-04-27 12:52:27,974 INFO L290 TraceCheckUtils]: 15: Hoare triple {276#true} assume true; {276#true} is VALID [2022-04-27 12:52:27,974 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {276#true} {276#true} #68#return; {276#true} is VALID [2022-04-27 12:52:27,974 INFO L272 TraceCheckUtils]: 17: Hoare triple {276#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {276#true} is VALID [2022-04-27 12:52:27,974 INFO L290 TraceCheckUtils]: 18: Hoare triple {276#true} ~cond := #in~cond; {276#true} is VALID [2022-04-27 12:52:27,974 INFO L290 TraceCheckUtils]: 19: Hoare triple {276#true} assume !(0 == ~cond); {276#true} is VALID [2022-04-27 12:52:27,974 INFO L290 TraceCheckUtils]: 20: Hoare triple {276#true} assume true; {276#true} is VALID [2022-04-27 12:52:27,975 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {276#true} {276#true} #70#return; {276#true} is VALID [2022-04-27 12:52:27,975 INFO L272 TraceCheckUtils]: 22: Hoare triple {276#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {276#true} is VALID [2022-04-27 12:52:27,975 INFO L290 TraceCheckUtils]: 23: Hoare triple {276#true} ~cond := #in~cond; {276#true} is VALID [2022-04-27 12:52:27,975 INFO L290 TraceCheckUtils]: 24: Hoare triple {276#true} assume !(0 == ~cond); {276#true} is VALID [2022-04-27 12:52:27,975 INFO L290 TraceCheckUtils]: 25: Hoare triple {276#true} assume true; {276#true} is VALID [2022-04-27 12:52:27,975 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {276#true} {276#true} #72#return; {276#true} is VALID [2022-04-27 12:52:27,987 INFO L290 TraceCheckUtils]: 27: Hoare triple {276#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {362#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-27 12:52:27,988 INFO L290 TraceCheckUtils]: 28: Hoare triple {362#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} assume !false; {362#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-27 12:52:27,994 INFO L272 TraceCheckUtils]: 29: Hoare triple {362#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {369#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:52:27,994 INFO L290 TraceCheckUtils]: 30: Hoare triple {369#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {373#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:52:27,995 INFO L290 TraceCheckUtils]: 31: Hoare triple {373#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {277#false} is VALID [2022-04-27 12:52:27,995 INFO L290 TraceCheckUtils]: 32: Hoare triple {277#false} assume !false; {277#false} is VALID [2022-04-27 12:52:27,996 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-27 12:52:27,996 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 12:52:27,996 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:52:27,996 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [864238690] [2022-04-27 12:52:27,996 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:52:27,996 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1004276368] [2022-04-27 12:52:27,997 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1004276368] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:52:27,997 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:52:27,997 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 12:52:27,998 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1988222426] [2022-04-27 12:52:27,998 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:52:27,999 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, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 33 [2022-04-27 12:52:27,999 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:52:27,999 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, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-27 12:52:28,023 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-27 12:52:28,024 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 12:52:28,025 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:52:28,025 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 12:52:28,025 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 12:52:28,026 INFO L87 Difference]: Start difference. First operand 32 states and 42 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, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-27 12:52:28,268 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:28,268 INFO L93 Difference]: Finished difference Result 48 states and 65 transitions. [2022-04-27 12:52:28,268 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 12:52:28,269 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, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 33 [2022-04-27 12:52:28,269 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:52:28,269 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, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-27 12:52:28,276 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-27 12:52:28,279 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, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-27 12:52:28,282 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-27 12:52:28,284 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-27 12:52:28,351 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:52:28,355 INFO L225 Difference]: With dead ends: 48 [2022-04-27 12:52:28,355 INFO L226 Difference]: Without dead ends: 46 [2022-04-27 12:52:28,355 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 33 GetRequests, 29 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-27 12:52:28,358 INFO L413 NwaCegarLoop]: 42 mSDtfsCounter, 7 mSDsluCounter, 101 mSDsCounter, 0 mSdLazyCounter, 42 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 143 SdHoareTripleChecker+Invalid, 44 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 42 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 12:52:28,358 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [13 Valid, 143 Invalid, 44 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 42 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 12:52:28,360 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 46 states. [2022-04-27 12:52:28,373 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 46 to 45. [2022-04-27 12:52:28,373 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:52:28,374 INFO L82 GeneralOperation]: Start isEquivalent. First operand 46 states. Second operand has 45 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 23 states have internal predecessors, (26), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-27 12:52:28,374 INFO L74 IsIncluded]: Start isIncluded. First operand 46 states. Second operand has 45 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 23 states have internal predecessors, (26), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-27 12:52:28,375 INFO L87 Difference]: Start difference. First operand 46 states. Second operand has 45 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 23 states have internal predecessors, (26), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-27 12:52:28,384 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:28,384 INFO L93 Difference]: Finished difference Result 46 states and 63 transitions. [2022-04-27 12:52:28,384 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 63 transitions. [2022-04-27 12:52:28,391 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:52:28,391 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:52:28,393 INFO L74 IsIncluded]: Start isIncluded. First operand has 45 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 23 states have internal predecessors, (26), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) Second operand 46 states. [2022-04-27 12:52:28,394 INFO L87 Difference]: Start difference. First operand has 45 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 23 states have internal predecessors, (26), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) Second operand 46 states. [2022-04-27 12:52:28,402 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:28,403 INFO L93 Difference]: Finished difference Result 46 states and 63 transitions. [2022-04-27 12:52:28,403 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 63 transitions. [2022-04-27 12:52:28,404 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:52:28,404 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:52:28,404 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:52:28,404 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:52:28,406 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 45 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 23 states have internal predecessors, (26), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-27 12:52:28,410 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 45 states to 45 states and 62 transitions. [2022-04-27 12:52:28,410 INFO L78 Accepts]: Start accepts. Automaton has 45 states and 62 transitions. Word has length 33 [2022-04-27 12:52:28,410 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:52:28,410 INFO L495 AbstractCegarLoop]: Abstraction has 45 states and 62 transitions. [2022-04-27 12:52:28,410 INFO L496 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, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-27 12:52:28,411 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 62 transitions. [2022-04-27 12:52:28,411 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-04-27 12:52:28,411 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:52:28,411 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 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-27 12:52:28,438 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-27 12:52:28,612 WARN L477 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-27 12:52:28,612 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:52:28,613 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:52:28,613 INFO L85 PathProgramCache]: Analyzing trace with hash -124657161, now seen corresponding path program 1 times [2022-04-27 12:52:28,613 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:52:28,613 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1416952948] [2022-04-27 12:52:28,613 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:52:28,613 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:52:28,639 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:52:28,639 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1900419678] [2022-04-27 12:52:28,639 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:52:28,640 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:52:28,640 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:52:28,641 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-27 12:52:28,651 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-27 12:52:28,698 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:28,700 INFO L263 TraceCheckSpWp]: Trace formula consists of 114 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 12:52:28,709 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:28,710 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:52:32,331 INFO L272 TraceCheckUtils]: 0: Hoare triple {619#true} call ULTIMATE.init(); {619#true} is VALID [2022-04-27 12:52:32,331 INFO L290 TraceCheckUtils]: 1: Hoare triple {619#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(10, 2);call #Ultimate.allocInit(12, 3); {619#true} is VALID [2022-04-27 12:52:32,331 INFO L290 TraceCheckUtils]: 2: Hoare triple {619#true} assume true; {619#true} is VALID [2022-04-27 12:52:32,332 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {619#true} {619#true} #88#return; {619#true} is VALID [2022-04-27 12:52:32,332 INFO L272 TraceCheckUtils]: 4: Hoare triple {619#true} call #t~ret6 := main(); {619#true} is VALID [2022-04-27 12:52:32,332 INFO L290 TraceCheckUtils]: 5: Hoare triple {619#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {619#true} is VALID [2022-04-27 12:52:32,332 INFO L272 TraceCheckUtils]: 6: Hoare triple {619#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {619#true} is VALID [2022-04-27 12:52:32,332 INFO L290 TraceCheckUtils]: 7: Hoare triple {619#true} ~cond := #in~cond; {619#true} is VALID [2022-04-27 12:52:32,332 INFO L290 TraceCheckUtils]: 8: Hoare triple {619#true} assume !(0 == ~cond); {619#true} is VALID [2022-04-27 12:52:32,332 INFO L290 TraceCheckUtils]: 9: Hoare triple {619#true} assume true; {619#true} is VALID [2022-04-27 12:52:32,333 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {619#true} {619#true} #66#return; {619#true} is VALID [2022-04-27 12:52:32,333 INFO L290 TraceCheckUtils]: 11: Hoare triple {619#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {619#true} is VALID [2022-04-27 12:52:32,333 INFO L272 TraceCheckUtils]: 12: Hoare triple {619#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {619#true} is VALID [2022-04-27 12:52:32,333 INFO L290 TraceCheckUtils]: 13: Hoare triple {619#true} ~cond := #in~cond; {619#true} is VALID [2022-04-27 12:52:32,333 INFO L290 TraceCheckUtils]: 14: Hoare triple {619#true} assume !(0 == ~cond); {619#true} is VALID [2022-04-27 12:52:32,333 INFO L290 TraceCheckUtils]: 15: Hoare triple {619#true} assume true; {619#true} is VALID [2022-04-27 12:52:32,334 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {619#true} {619#true} #68#return; {619#true} is VALID [2022-04-27 12:52:32,334 INFO L272 TraceCheckUtils]: 17: Hoare triple {619#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {619#true} is VALID [2022-04-27 12:52:32,334 INFO L290 TraceCheckUtils]: 18: Hoare triple {619#true} ~cond := #in~cond; {619#true} is VALID [2022-04-27 12:52:32,334 INFO L290 TraceCheckUtils]: 19: Hoare triple {619#true} assume !(0 == ~cond); {619#true} is VALID [2022-04-27 12:52:32,334 INFO L290 TraceCheckUtils]: 20: Hoare triple {619#true} assume true; {619#true} is VALID [2022-04-27 12:52:32,334 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {619#true} {619#true} #70#return; {619#true} is VALID [2022-04-27 12:52:32,334 INFO L272 TraceCheckUtils]: 22: Hoare triple {619#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {619#true} is VALID [2022-04-27 12:52:32,335 INFO L290 TraceCheckUtils]: 23: Hoare triple {619#true} ~cond := #in~cond; {619#true} is VALID [2022-04-27 12:52:32,335 INFO L290 TraceCheckUtils]: 24: Hoare triple {619#true} assume !(0 == ~cond); {619#true} is VALID [2022-04-27 12:52:32,335 INFO L290 TraceCheckUtils]: 25: Hoare triple {619#true} assume true; {619#true} is VALID [2022-04-27 12:52:32,335 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {619#true} {619#true} #72#return; {619#true} is VALID [2022-04-27 12:52:32,336 INFO L290 TraceCheckUtils]: 27: Hoare triple {619#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {705#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:52:32,336 INFO L290 TraceCheckUtils]: 28: Hoare triple {705#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {705#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:52:32,337 INFO L272 TraceCheckUtils]: 29: Hoare triple {705#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {619#true} is VALID [2022-04-27 12:52:32,337 INFO L290 TraceCheckUtils]: 30: Hoare triple {619#true} ~cond := #in~cond; {619#true} is VALID [2022-04-27 12:52:32,337 INFO L290 TraceCheckUtils]: 31: Hoare triple {619#true} assume !(0 == ~cond); {619#true} is VALID [2022-04-27 12:52:32,337 INFO L290 TraceCheckUtils]: 32: Hoare triple {619#true} assume true; {619#true} is VALID [2022-04-27 12:52:32,338 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {619#true} {705#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #74#return; {705#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:52:32,339 INFO L272 TraceCheckUtils]: 34: Hoare triple {705#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {727#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:52:32,340 INFO L290 TraceCheckUtils]: 35: Hoare triple {727#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {731#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:52:32,340 INFO L290 TraceCheckUtils]: 36: Hoare triple {731#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {620#false} is VALID [2022-04-27 12:52:32,340 INFO L290 TraceCheckUtils]: 37: Hoare triple {620#false} assume !false; {620#false} is VALID [2022-04-27 12:52:32,341 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-27 12:52:32,341 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 12:52:32,341 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:52:32,341 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1416952948] [2022-04-27 12:52:32,341 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:52:32,341 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1900419678] [2022-04-27 12:52:32,341 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1900419678] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:52:32,341 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:52:32,342 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 12:52:32,342 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [616223844] [2022-04-27 12:52:32,342 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:52:32,342 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 38 [2022-04-27 12:52:32,343 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:52:32,343 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-27 12:52:32,368 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 29 edges. 29 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:52:32,369 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 12:52:32,369 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:52:32,369 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 12:52:32,370 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 12:52:32,370 INFO L87 Difference]: Start difference. First operand 45 states and 62 transitions. Second operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-27 12:52:32,607 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:32,607 INFO L93 Difference]: Finished difference Result 52 states and 68 transitions. [2022-04-27 12:52:32,607 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 12:52:32,608 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 38 [2022-04-27 12:52:32,609 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:52:32,609 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-27 12:52:32,612 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-27 12:52:32,613 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-27 12:52:32,614 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-27 12:52:32,614 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-27 12:52:32,680 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:52:32,682 INFO L225 Difference]: With dead ends: 52 [2022-04-27 12:52:32,682 INFO L226 Difference]: Without dead ends: 50 [2022-04-27 12:52:32,682 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 38 GetRequests, 34 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-27 12:52:32,683 INFO L413 NwaCegarLoop]: 44 mSDtfsCounter, 8 mSDsluCounter, 96 mSDsCounter, 0 mSdLazyCounter, 51 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 140 SdHoareTripleChecker+Invalid, 51 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 51 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 12:52:32,683 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [13 Valid, 140 Invalid, 51 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 51 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 12:52:32,684 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2022-04-27 12:52:32,691 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 49. [2022-04-27 12:52:32,691 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:52:32,691 INFO L82 GeneralOperation]: Start isEquivalent. First operand 50 states. Second operand has 49 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 19 states have call successors, (19), 6 states have call predecessors, (19), 5 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-27 12:52:32,691 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand has 49 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 19 states have call successors, (19), 6 states have call predecessors, (19), 5 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-27 12:52:32,692 INFO L87 Difference]: Start difference. First operand 50 states. Second operand has 49 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 19 states have call successors, (19), 6 states have call predecessors, (19), 5 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-27 12:52:32,694 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:32,694 INFO L93 Difference]: Finished difference Result 50 states and 66 transitions. [2022-04-27 12:52:32,695 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 66 transitions. [2022-04-27 12:52:32,695 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:52:32,695 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:52:32,695 INFO L74 IsIncluded]: Start isIncluded. First operand has 49 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 19 states have call successors, (19), 6 states have call predecessors, (19), 5 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) Second operand 50 states. [2022-04-27 12:52:32,696 INFO L87 Difference]: Start difference. First operand has 49 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 19 states have call successors, (19), 6 states have call predecessors, (19), 5 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) Second operand 50 states. [2022-04-27 12:52:32,698 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:32,698 INFO L93 Difference]: Finished difference Result 50 states and 66 transitions. [2022-04-27 12:52:32,698 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 66 transitions. [2022-04-27 12:52:32,699 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:52:32,699 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:52:32,699 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:52:32,699 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:52:32,699 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 49 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 19 states have call successors, (19), 6 states have call predecessors, (19), 5 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-27 12:52:32,701 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 49 states to 49 states and 65 transitions. [2022-04-27 12:52:32,701 INFO L78 Accepts]: Start accepts. Automaton has 49 states and 65 transitions. Word has length 38 [2022-04-27 12:52:32,702 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:52:32,702 INFO L495 AbstractCegarLoop]: Abstraction has 49 states and 65 transitions. [2022-04-27 12:52:32,702 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-27 12:52:32,702 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 65 transitions. [2022-04-27 12:52:32,703 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-27 12:52:32,703 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:52:32,703 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:52:32,724 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-27 12:52:32,919 WARN L477 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-27 12:52:32,920 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:52:32,920 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:52:32,920 INFO L85 PathProgramCache]: Analyzing trace with hash 1732898944, now seen corresponding path program 1 times [2022-04-27 12:52:32,920 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:52:32,921 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [70495784] [2022-04-27 12:52:32,921 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:52:32,921 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:52:32,945 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:52:32,946 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1724124507] [2022-04-27 12:52:32,946 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:52:32,946 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:52:32,946 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:52:32,947 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-27 12:52:32,950 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-27 12:52:32,998 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:33,000 INFO L263 TraceCheckSpWp]: Trace formula consists of 123 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-27 12:52:33,016 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:33,018 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:52:33,381 INFO L272 TraceCheckUtils]: 0: Hoare triple {995#true} call ULTIMATE.init(); {995#true} is VALID [2022-04-27 12:52:33,382 INFO L290 TraceCheckUtils]: 1: Hoare triple {995#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(10, 2);call #Ultimate.allocInit(12, 3); {995#true} is VALID [2022-04-27 12:52:33,382 INFO L290 TraceCheckUtils]: 2: Hoare triple {995#true} assume true; {995#true} is VALID [2022-04-27 12:52:33,382 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {995#true} {995#true} #88#return; {995#true} is VALID [2022-04-27 12:52:33,382 INFO L272 TraceCheckUtils]: 4: Hoare triple {995#true} call #t~ret6 := main(); {995#true} is VALID [2022-04-27 12:52:33,394 INFO L290 TraceCheckUtils]: 5: Hoare triple {995#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {995#true} is VALID [2022-04-27 12:52:33,395 INFO L272 TraceCheckUtils]: 6: Hoare triple {995#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {995#true} is VALID [2022-04-27 12:52:33,395 INFO L290 TraceCheckUtils]: 7: Hoare triple {995#true} ~cond := #in~cond; {1021#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 12:52:33,396 INFO L290 TraceCheckUtils]: 8: Hoare triple {1021#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1025#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:52:33,396 INFO L290 TraceCheckUtils]: 9: Hoare triple {1025#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1025#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:52:33,397 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1025#(not (= |assume_abort_if_not_#in~cond| 0))} {995#true} #66#return; {1032#(and (<= 0 main_~x~0) (<= main_~x~0 50))} is VALID [2022-04-27 12:52:33,397 INFO L290 TraceCheckUtils]: 11: Hoare triple {1032#(and (<= 0 main_~x~0) (<= main_~x~0 50))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1032#(and (<= 0 main_~x~0) (<= main_~x~0 50))} is VALID [2022-04-27 12:52:33,398 INFO L272 TraceCheckUtils]: 12: Hoare triple {1032#(and (<= 0 main_~x~0) (<= main_~x~0 50))} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {995#true} is VALID [2022-04-27 12:52:33,398 INFO L290 TraceCheckUtils]: 13: Hoare triple {995#true} ~cond := #in~cond; {995#true} is VALID [2022-04-27 12:52:33,398 INFO L290 TraceCheckUtils]: 14: Hoare triple {995#true} assume !(0 == ~cond); {995#true} is VALID [2022-04-27 12:52:33,398 INFO L290 TraceCheckUtils]: 15: Hoare triple {995#true} assume true; {995#true} is VALID [2022-04-27 12:52:33,398 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {995#true} {1032#(and (<= 0 main_~x~0) (<= main_~x~0 50))} #68#return; {1032#(and (<= 0 main_~x~0) (<= main_~x~0 50))} is VALID [2022-04-27 12:52:33,399 INFO L272 TraceCheckUtils]: 17: Hoare triple {1032#(and (<= 0 main_~x~0) (<= main_~x~0 50))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {995#true} is VALID [2022-04-27 12:52:33,399 INFO L290 TraceCheckUtils]: 18: Hoare triple {995#true} ~cond := #in~cond; {1021#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 12:52:33,399 INFO L290 TraceCheckUtils]: 19: Hoare triple {1021#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1025#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:52:33,400 INFO L290 TraceCheckUtils]: 20: Hoare triple {1025#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1025#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:52:33,400 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1025#(not (= |assume_abort_if_not_#in~cond| 0))} {1032#(and (<= 0 main_~x~0) (<= main_~x~0 50))} #70#return; {1066#(and (<= 1 main_~x~0) (<= main_~x~0 50))} is VALID [2022-04-27 12:52:33,400 INFO L272 TraceCheckUtils]: 22: Hoare triple {1066#(and (<= 1 main_~x~0) (<= main_~x~0 50))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {995#true} is VALID [2022-04-27 12:52:33,401 INFO L290 TraceCheckUtils]: 23: Hoare triple {995#true} ~cond := #in~cond; {995#true} is VALID [2022-04-27 12:52:33,401 INFO L290 TraceCheckUtils]: 24: Hoare triple {995#true} assume !(0 == ~cond); {995#true} is VALID [2022-04-27 12:52:33,401 INFO L290 TraceCheckUtils]: 25: Hoare triple {995#true} assume true; {995#true} is VALID [2022-04-27 12:52:33,401 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {995#true} {1066#(and (<= 1 main_~x~0) (<= main_~x~0 50))} #72#return; {1066#(and (<= 1 main_~x~0) (<= main_~x~0 50))} is VALID [2022-04-27 12:52:33,402 INFO L290 TraceCheckUtils]: 27: Hoare triple {1066#(and (<= 1 main_~x~0) (<= main_~x~0 50))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1085#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 50) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:52:33,402 INFO L290 TraceCheckUtils]: 28: Hoare triple {1085#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 50) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !false; {1085#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 50) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:52:33,403 INFO L272 TraceCheckUtils]: 29: Hoare triple {1085#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 50) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {995#true} is VALID [2022-04-27 12:52:33,403 INFO L290 TraceCheckUtils]: 30: Hoare triple {995#true} ~cond := #in~cond; {995#true} is VALID [2022-04-27 12:52:33,403 INFO L290 TraceCheckUtils]: 31: Hoare triple {995#true} assume !(0 == ~cond); {995#true} is VALID [2022-04-27 12:52:33,403 INFO L290 TraceCheckUtils]: 32: Hoare triple {995#true} assume true; {995#true} is VALID [2022-04-27 12:52:33,404 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {995#true} {1085#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 50) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #74#return; {1085#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 50) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:52:33,404 INFO L272 TraceCheckUtils]: 34: Hoare triple {1085#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 50) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {995#true} is VALID [2022-04-27 12:52:33,404 INFO L290 TraceCheckUtils]: 35: Hoare triple {995#true} ~cond := #in~cond; {995#true} is VALID [2022-04-27 12:52:33,404 INFO L290 TraceCheckUtils]: 36: Hoare triple {995#true} assume !(0 == ~cond); {995#true} is VALID [2022-04-27 12:52:33,404 INFO L290 TraceCheckUtils]: 37: Hoare triple {995#true} assume true; {995#true} is VALID [2022-04-27 12:52:33,405 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {995#true} {1085#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 50) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #76#return; {1085#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 50) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:52:33,406 INFO L272 TraceCheckUtils]: 39: Hoare triple {1085#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 50) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {1122#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:52:33,406 INFO L290 TraceCheckUtils]: 40: Hoare triple {1122#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1126#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:52:33,407 INFO L290 TraceCheckUtils]: 41: Hoare triple {1126#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {996#false} is VALID [2022-04-27 12:52:33,407 INFO L290 TraceCheckUtils]: 42: Hoare triple {996#false} assume !false; {996#false} is VALID [2022-04-27 12:52:33,408 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 7 proven. 9 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-27 12:52:33,408 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:52:33,726 INFO L290 TraceCheckUtils]: 42: Hoare triple {996#false} assume !false; {996#false} is VALID [2022-04-27 12:52:33,727 INFO L290 TraceCheckUtils]: 41: Hoare triple {1126#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {996#false} is VALID [2022-04-27 12:52:33,727 INFO L290 TraceCheckUtils]: 40: Hoare triple {1122#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1126#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:52:33,728 INFO L272 TraceCheckUtils]: 39: Hoare triple {1142#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {1122#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:52:33,729 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {995#true} {1142#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #76#return; {1142#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 12:52:33,729 INFO L290 TraceCheckUtils]: 37: Hoare triple {995#true} assume true; {995#true} is VALID [2022-04-27 12:52:33,729 INFO L290 TraceCheckUtils]: 36: Hoare triple {995#true} assume !(0 == ~cond); {995#true} is VALID [2022-04-27 12:52:33,729 INFO L290 TraceCheckUtils]: 35: Hoare triple {995#true} ~cond := #in~cond; {995#true} is VALID [2022-04-27 12:52:33,729 INFO L272 TraceCheckUtils]: 34: Hoare triple {1142#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {995#true} is VALID [2022-04-27 12:52:33,730 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {995#true} {1142#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #74#return; {1142#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 12:52:33,730 INFO L290 TraceCheckUtils]: 32: Hoare triple {995#true} assume true; {995#true} is VALID [2022-04-27 12:52:33,730 INFO L290 TraceCheckUtils]: 31: Hoare triple {995#true} assume !(0 == ~cond); {995#true} is VALID [2022-04-27 12:52:33,731 INFO L290 TraceCheckUtils]: 30: Hoare triple {995#true} ~cond := #in~cond; {995#true} is VALID [2022-04-27 12:52:33,731 INFO L272 TraceCheckUtils]: 29: Hoare triple {1142#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {995#true} is VALID [2022-04-27 12:52:33,731 INFO L290 TraceCheckUtils]: 28: Hoare triple {1142#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {1142#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 12:52:33,732 INFO L290 TraceCheckUtils]: 27: Hoare triple {995#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1142#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 12:52:33,732 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {995#true} {995#true} #72#return; {995#true} is VALID [2022-04-27 12:52:33,732 INFO L290 TraceCheckUtils]: 25: Hoare triple {995#true} assume true; {995#true} is VALID [2022-04-27 12:52:33,732 INFO L290 TraceCheckUtils]: 24: Hoare triple {995#true} assume !(0 == ~cond); {995#true} is VALID [2022-04-27 12:52:33,732 INFO L290 TraceCheckUtils]: 23: Hoare triple {995#true} ~cond := #in~cond; {995#true} is VALID [2022-04-27 12:52:33,733 INFO L272 TraceCheckUtils]: 22: Hoare triple {995#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {995#true} is VALID [2022-04-27 12:52:33,733 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {995#true} {995#true} #70#return; {995#true} is VALID [2022-04-27 12:52:33,733 INFO L290 TraceCheckUtils]: 20: Hoare triple {995#true} assume true; {995#true} is VALID [2022-04-27 12:52:33,733 INFO L290 TraceCheckUtils]: 19: Hoare triple {995#true} assume !(0 == ~cond); {995#true} is VALID [2022-04-27 12:52:33,733 INFO L290 TraceCheckUtils]: 18: Hoare triple {995#true} ~cond := #in~cond; {995#true} is VALID [2022-04-27 12:52:33,733 INFO L272 TraceCheckUtils]: 17: Hoare triple {995#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {995#true} is VALID [2022-04-27 12:52:33,734 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {995#true} {995#true} #68#return; {995#true} is VALID [2022-04-27 12:52:33,734 INFO L290 TraceCheckUtils]: 15: Hoare triple {995#true} assume true; {995#true} is VALID [2022-04-27 12:52:33,734 INFO L290 TraceCheckUtils]: 14: Hoare triple {995#true} assume !(0 == ~cond); {995#true} is VALID [2022-04-27 12:52:33,734 INFO L290 TraceCheckUtils]: 13: Hoare triple {995#true} ~cond := #in~cond; {995#true} is VALID [2022-04-27 12:52:33,734 INFO L272 TraceCheckUtils]: 12: Hoare triple {995#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {995#true} is VALID [2022-04-27 12:52:33,734 INFO L290 TraceCheckUtils]: 11: Hoare triple {995#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {995#true} is VALID [2022-04-27 12:52:33,734 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {995#true} {995#true} #66#return; {995#true} is VALID [2022-04-27 12:52:33,735 INFO L290 TraceCheckUtils]: 9: Hoare triple {995#true} assume true; {995#true} is VALID [2022-04-27 12:52:33,735 INFO L290 TraceCheckUtils]: 8: Hoare triple {995#true} assume !(0 == ~cond); {995#true} is VALID [2022-04-27 12:52:33,735 INFO L290 TraceCheckUtils]: 7: Hoare triple {995#true} ~cond := #in~cond; {995#true} is VALID [2022-04-27 12:52:33,735 INFO L272 TraceCheckUtils]: 6: Hoare triple {995#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {995#true} is VALID [2022-04-27 12:52:33,735 INFO L290 TraceCheckUtils]: 5: Hoare triple {995#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {995#true} is VALID [2022-04-27 12:52:33,735 INFO L272 TraceCheckUtils]: 4: Hoare triple {995#true} call #t~ret6 := main(); {995#true} is VALID [2022-04-27 12:52:33,735 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {995#true} {995#true} #88#return; {995#true} is VALID [2022-04-27 12:52:33,736 INFO L290 TraceCheckUtils]: 2: Hoare triple {995#true} assume true; {995#true} is VALID [2022-04-27 12:52:33,736 INFO L290 TraceCheckUtils]: 1: Hoare triple {995#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(10, 2);call #Ultimate.allocInit(12, 3); {995#true} is VALID [2022-04-27 12:52:33,736 INFO L272 TraceCheckUtils]: 0: Hoare triple {995#true} call ULTIMATE.init(); {995#true} is VALID [2022-04-27 12:52:33,736 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-27 12:52:33,736 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:52:33,736 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [70495784] [2022-04-27 12:52:33,737 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:52:33,737 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1724124507] [2022-04-27 12:52:33,737 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1724124507] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-27 12:52:33,737 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-27 12:52:33,737 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [9] total 10 [2022-04-27 12:52:33,737 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [965693495] [2022-04-27 12:52:33,737 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:52:33,738 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 43 [2022-04-27 12:52:33,738 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:52:33,739 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-27 12:52:33,767 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:52:33,767 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 12:52:33,767 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:52:33,769 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 12:52:33,769 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2022-04-27 12:52:33,769 INFO L87 Difference]: Start difference. First operand 49 states and 65 transitions. Second operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-27 12:52:34,056 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:34,056 INFO L93 Difference]: Finished difference Result 74 states and 105 transitions. [2022-04-27 12:52:34,056 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 12:52:34,056 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 43 [2022-04-27 12:52:34,056 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:52:34,057 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-27 12:52:34,058 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-27 12:52:34,058 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-27 12:52:34,059 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-27 12:52:34,059 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-27 12:52:34,113 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:52:34,116 INFO L225 Difference]: With dead ends: 74 [2022-04-27 12:52:34,116 INFO L226 Difference]: Without dead ends: 70 [2022-04-27 12:52:34,116 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 86 GetRequests, 76 SyntacticMatches, 1 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=25, Invalid=85, Unknown=0, NotChecked=0, Total=110 [2022-04-27 12:52:34,117 INFO L413 NwaCegarLoop]: 44 mSDtfsCounter, 8 mSDsluCounter, 93 mSDsCounter, 0 mSdLazyCounter, 54 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 137 SdHoareTripleChecker+Invalid, 55 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 54 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 12:52:34,118 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [12 Valid, 137 Invalid, 55 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 54 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 12:52:34,118 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 70 states. [2022-04-27 12:52:34,129 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 70 to 70. [2022-04-27 12:52:34,129 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:52:34,130 INFO L82 GeneralOperation]: Start isEquivalent. First operand 70 states. Second operand has 70 states, 33 states have (on average 1.2727272727272727) internal successors, (42), 37 states have internal predecessors, (42), 30 states have call successors, (30), 7 states have call predecessors, (30), 6 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-27 12:52:34,130 INFO L74 IsIncluded]: Start isIncluded. First operand 70 states. Second operand has 70 states, 33 states have (on average 1.2727272727272727) internal successors, (42), 37 states have internal predecessors, (42), 30 states have call successors, (30), 7 states have call predecessors, (30), 6 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-27 12:52:34,131 INFO L87 Difference]: Start difference. First operand 70 states. Second operand has 70 states, 33 states have (on average 1.2727272727272727) internal successors, (42), 37 states have internal predecessors, (42), 30 states have call successors, (30), 7 states have call predecessors, (30), 6 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-27 12:52:34,134 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:34,134 INFO L93 Difference]: Finished difference Result 70 states and 98 transitions. [2022-04-27 12:52:34,134 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 98 transitions. [2022-04-27 12:52:34,135 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:52:34,135 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:52:34,136 INFO L74 IsIncluded]: Start isIncluded. First operand has 70 states, 33 states have (on average 1.2727272727272727) internal successors, (42), 37 states have internal predecessors, (42), 30 states have call successors, (30), 7 states have call predecessors, (30), 6 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) Second operand 70 states. [2022-04-27 12:52:34,136 INFO L87 Difference]: Start difference. First operand has 70 states, 33 states have (on average 1.2727272727272727) internal successors, (42), 37 states have internal predecessors, (42), 30 states have call successors, (30), 7 states have call predecessors, (30), 6 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) Second operand 70 states. [2022-04-27 12:52:34,140 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:34,140 INFO L93 Difference]: Finished difference Result 70 states and 98 transitions. [2022-04-27 12:52:34,140 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 98 transitions. [2022-04-27 12:52:34,141 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:52:34,141 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:52:34,141 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:52:34,141 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:52:34,141 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 70 states, 33 states have (on average 1.2727272727272727) internal successors, (42), 37 states have internal predecessors, (42), 30 states have call successors, (30), 7 states have call predecessors, (30), 6 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-27 12:52:34,145 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 98 transitions. [2022-04-27 12:52:34,145 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 98 transitions. Word has length 43 [2022-04-27 12:52:34,145 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:52:34,145 INFO L495 AbstractCegarLoop]: Abstraction has 70 states and 98 transitions. [2022-04-27 12:52:34,146 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-27 12:52:34,146 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 98 transitions. [2022-04-27 12:52:34,146 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-04-27 12:52:34,146 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:52:34,147 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 1, 1, 1, 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-27 12:52:34,174 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-27 12:52:34,367 WARN L477 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-27 12:52:34,368 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:52:34,368 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:52:34,368 INFO L85 PathProgramCache]: Analyzing trace with hash -301191846, now seen corresponding path program 1 times [2022-04-27 12:52:34,368 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:52:34,368 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2021136541] [2022-04-27 12:52:34,368 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:52:34,369 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:52:34,385 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:52:34,385 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [141980347] [2022-04-27 12:52:34,385 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:52:34,386 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:52:34,386 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:52:34,387 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-27 12:52:34,390 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-27 12:52:34,429 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:34,430 INFO L263 TraceCheckSpWp]: Trace formula consists of 134 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-27 12:52:34,441 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:34,443 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:52:34,556 INFO L272 TraceCheckUtils]: 0: Hoare triple {1632#true} call ULTIMATE.init(); {1632#true} is VALID [2022-04-27 12:52:34,557 INFO L290 TraceCheckUtils]: 1: Hoare triple {1632#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(10, 2);call #Ultimate.allocInit(12, 3); {1632#true} is VALID [2022-04-27 12:52:34,557 INFO L290 TraceCheckUtils]: 2: Hoare triple {1632#true} assume true; {1632#true} is VALID [2022-04-27 12:52:34,557 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1632#true} {1632#true} #88#return; {1632#true} is VALID [2022-04-27 12:52:34,557 INFO L272 TraceCheckUtils]: 4: Hoare triple {1632#true} call #t~ret6 := main(); {1632#true} is VALID [2022-04-27 12:52:34,557 INFO L290 TraceCheckUtils]: 5: Hoare triple {1632#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {1632#true} is VALID [2022-04-27 12:52:34,557 INFO L272 TraceCheckUtils]: 6: Hoare triple {1632#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {1632#true} is VALID [2022-04-27 12:52:34,557 INFO L290 TraceCheckUtils]: 7: Hoare triple {1632#true} ~cond := #in~cond; {1632#true} is VALID [2022-04-27 12:52:34,557 INFO L290 TraceCheckUtils]: 8: Hoare triple {1632#true} assume !(0 == ~cond); {1632#true} is VALID [2022-04-27 12:52:34,557 INFO L290 TraceCheckUtils]: 9: Hoare triple {1632#true} assume true; {1632#true} is VALID [2022-04-27 12:52:34,558 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1632#true} {1632#true} #66#return; {1632#true} is VALID [2022-04-27 12:52:34,558 INFO L290 TraceCheckUtils]: 11: Hoare triple {1632#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1632#true} is VALID [2022-04-27 12:52:34,558 INFO L272 TraceCheckUtils]: 12: Hoare triple {1632#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {1632#true} is VALID [2022-04-27 12:52:34,558 INFO L290 TraceCheckUtils]: 13: Hoare triple {1632#true} ~cond := #in~cond; {1632#true} is VALID [2022-04-27 12:52:34,558 INFO L290 TraceCheckUtils]: 14: Hoare triple {1632#true} assume !(0 == ~cond); {1632#true} is VALID [2022-04-27 12:52:34,558 INFO L290 TraceCheckUtils]: 15: Hoare triple {1632#true} assume true; {1632#true} is VALID [2022-04-27 12:52:34,558 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1632#true} {1632#true} #68#return; {1632#true} is VALID [2022-04-27 12:52:34,558 INFO L272 TraceCheckUtils]: 17: Hoare triple {1632#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1632#true} is VALID [2022-04-27 12:52:34,559 INFO L290 TraceCheckUtils]: 18: Hoare triple {1632#true} ~cond := #in~cond; {1632#true} is VALID [2022-04-27 12:52:34,559 INFO L290 TraceCheckUtils]: 19: Hoare triple {1632#true} assume !(0 == ~cond); {1632#true} is VALID [2022-04-27 12:52:34,559 INFO L290 TraceCheckUtils]: 20: Hoare triple {1632#true} assume true; {1632#true} is VALID [2022-04-27 12:52:34,559 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1632#true} {1632#true} #70#return; {1632#true} is VALID [2022-04-27 12:52:34,559 INFO L272 TraceCheckUtils]: 22: Hoare triple {1632#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1632#true} is VALID [2022-04-27 12:52:34,559 INFO L290 TraceCheckUtils]: 23: Hoare triple {1632#true} ~cond := #in~cond; {1632#true} is VALID [2022-04-27 12:52:34,559 INFO L290 TraceCheckUtils]: 24: Hoare triple {1632#true} assume !(0 == ~cond); {1632#true} is VALID [2022-04-27 12:52:34,559 INFO L290 TraceCheckUtils]: 25: Hoare triple {1632#true} assume true; {1632#true} is VALID [2022-04-27 12:52:34,560 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1632#true} {1632#true} #72#return; {1632#true} is VALID [2022-04-27 12:52:34,560 INFO L290 TraceCheckUtils]: 27: Hoare triple {1632#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1632#true} is VALID [2022-04-27 12:52:34,560 INFO L290 TraceCheckUtils]: 28: Hoare triple {1632#true} assume !false; {1632#true} is VALID [2022-04-27 12:52:34,560 INFO L272 TraceCheckUtils]: 29: Hoare triple {1632#true} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {1632#true} is VALID [2022-04-27 12:52:34,560 INFO L290 TraceCheckUtils]: 30: Hoare triple {1632#true} ~cond := #in~cond; {1632#true} is VALID [2022-04-27 12:52:34,561 INFO L290 TraceCheckUtils]: 31: Hoare triple {1632#true} assume !(0 == ~cond); {1632#true} is VALID [2022-04-27 12:52:34,561 INFO L290 TraceCheckUtils]: 32: Hoare triple {1632#true} assume true; {1632#true} is VALID [2022-04-27 12:52:34,561 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1632#true} {1632#true} #74#return; {1632#true} is VALID [2022-04-27 12:52:34,561 INFO L272 TraceCheckUtils]: 34: Hoare triple {1632#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {1632#true} is VALID [2022-04-27 12:52:34,561 INFO L290 TraceCheckUtils]: 35: Hoare triple {1632#true} ~cond := #in~cond; {1632#true} is VALID [2022-04-27 12:52:34,561 INFO L290 TraceCheckUtils]: 36: Hoare triple {1632#true} assume !(0 == ~cond); {1632#true} is VALID [2022-04-27 12:52:34,561 INFO L290 TraceCheckUtils]: 37: Hoare triple {1632#true} assume true; {1632#true} is VALID [2022-04-27 12:52:34,561 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {1632#true} {1632#true} #76#return; {1632#true} is VALID [2022-04-27 12:52:34,562 INFO L272 TraceCheckUtils]: 39: Hoare triple {1632#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {1632#true} is VALID [2022-04-27 12:52:34,565 INFO L290 TraceCheckUtils]: 40: Hoare triple {1632#true} ~cond := #in~cond; {1632#true} is VALID [2022-04-27 12:52:34,567 INFO L290 TraceCheckUtils]: 41: Hoare triple {1632#true} assume !(0 == ~cond); {1632#true} is VALID [2022-04-27 12:52:34,573 INFO L290 TraceCheckUtils]: 42: Hoare triple {1632#true} assume true; {1632#true} is VALID [2022-04-27 12:52:34,573 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {1632#true} {1632#true} #78#return; {1632#true} is VALID [2022-04-27 12:52:34,575 INFO L290 TraceCheckUtils]: 44: Hoare triple {1632#true} assume !(~a~0 != ~b~0); {1769#(= main_~b~0 main_~a~0)} is VALID [2022-04-27 12:52:34,576 INFO L272 TraceCheckUtils]: 45: Hoare triple {1769#(= main_~b~0 main_~a~0)} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {1773#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:52:34,580 INFO L290 TraceCheckUtils]: 46: Hoare triple {1773#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1777#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:52:34,581 INFO L290 TraceCheckUtils]: 47: Hoare triple {1777#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1633#false} is VALID [2022-04-27 12:52:34,581 INFO L290 TraceCheckUtils]: 48: Hoare triple {1633#false} assume !false; {1633#false} is VALID [2022-04-27 12:52:34,581 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2022-04-27 12:52:34,581 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 12:52:34,581 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:52:34,581 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2021136541] [2022-04-27 12:52:34,581 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:52:34,582 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [141980347] [2022-04-27 12:52:34,582 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [141980347] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:52:34,582 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:52:34,582 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 12:52:34,582 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [935610980] [2022-04-27 12:52:34,582 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:52:34,583 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 1 states have call predecessors, (8), 1 states have call successors, (8) Word has length 49 [2022-04-27 12:52:34,583 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:52:34,583 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 1 states have call predecessors, (8), 1 states have call successors, (8) [2022-04-27 12:52:34,608 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:52:34,609 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 12:52:34,609 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:52:34,609 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 12:52:34,609 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 12:52:34,610 INFO L87 Difference]: Start difference. First operand 70 states and 98 transitions. Second operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 1 states have call predecessors, (8), 1 states have call successors, (8) [2022-04-27 12:52:34,767 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:34,767 INFO L93 Difference]: Finished difference Result 76 states and 103 transitions. [2022-04-27 12:52:34,767 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 12:52:34,768 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 1 states have call predecessors, (8), 1 states have call successors, (8) Word has length 49 [2022-04-27 12:52:34,768 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:52:34,768 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 1 states have call predecessors, (8), 1 states have call successors, (8) [2022-04-27 12:52:34,770 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 47 transitions. [2022-04-27 12:52:34,770 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 1 states have call predecessors, (8), 1 states have call successors, (8) [2022-04-27 12:52:34,771 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 47 transitions. [2022-04-27 12:52:34,771 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 47 transitions. [2022-04-27 12:52:34,813 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:52:34,815 INFO L225 Difference]: With dead ends: 76 [2022-04-27 12:52:34,815 INFO L226 Difference]: Without dead ends: 74 [2022-04-27 12:52:34,816 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 49 GetRequests, 45 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-27 12:52:34,817 INFO L413 NwaCegarLoop]: 42 mSDtfsCounter, 5 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 30 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 139 SdHoareTripleChecker+Invalid, 30 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 30 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 12:52:34,817 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [8 Valid, 139 Invalid, 30 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 30 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 12:52:34,817 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2022-04-27 12:52:34,827 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 74. [2022-04-27 12:52:34,827 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:52:34,828 INFO L82 GeneralOperation]: Start isEquivalent. First operand 74 states. Second operand has 74 states, 36 states have (on average 1.25) internal successors, (45), 40 states have internal predecessors, (45), 30 states have call successors, (30), 8 states have call predecessors, (30), 7 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-27 12:52:34,828 INFO L74 IsIncluded]: Start isIncluded. First operand 74 states. Second operand has 74 states, 36 states have (on average 1.25) internal successors, (45), 40 states have internal predecessors, (45), 30 states have call successors, (30), 8 states have call predecessors, (30), 7 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-27 12:52:34,828 INFO L87 Difference]: Start difference. First operand 74 states. Second operand has 74 states, 36 states have (on average 1.25) internal successors, (45), 40 states have internal predecessors, (45), 30 states have call successors, (30), 8 states have call predecessors, (30), 7 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-27 12:52:34,831 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:34,832 INFO L93 Difference]: Finished difference Result 74 states and 101 transitions. [2022-04-27 12:52:34,832 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 101 transitions. [2022-04-27 12:52:34,832 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:52:34,832 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:52:34,833 INFO L74 IsIncluded]: Start isIncluded. First operand has 74 states, 36 states have (on average 1.25) internal successors, (45), 40 states have internal predecessors, (45), 30 states have call successors, (30), 8 states have call predecessors, (30), 7 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) Second operand 74 states. [2022-04-27 12:52:34,833 INFO L87 Difference]: Start difference. First operand has 74 states, 36 states have (on average 1.25) internal successors, (45), 40 states have internal predecessors, (45), 30 states have call successors, (30), 8 states have call predecessors, (30), 7 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) Second operand 74 states. [2022-04-27 12:52:34,836 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:34,836 INFO L93 Difference]: Finished difference Result 74 states and 101 transitions. [2022-04-27 12:52:34,836 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 101 transitions. [2022-04-27 12:52:34,837 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:52:34,837 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:52:34,837 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:52:34,837 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:52:34,837 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 74 states, 36 states have (on average 1.25) internal successors, (45), 40 states have internal predecessors, (45), 30 states have call successors, (30), 8 states have call predecessors, (30), 7 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-27 12:52:34,840 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 101 transitions. [2022-04-27 12:52:34,840 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 101 transitions. Word has length 49 [2022-04-27 12:52:34,840 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:52:34,841 INFO L495 AbstractCegarLoop]: Abstraction has 74 states and 101 transitions. [2022-04-27 12:52:34,841 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 1 states have call predecessors, (8), 1 states have call successors, (8) [2022-04-27 12:52:34,841 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 101 transitions. [2022-04-27 12:52:34,841 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2022-04-27 12:52:34,842 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:52:34,842 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:52:34,871 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-27 12:52:35,062 WARN L477 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-27 12:52:35,062 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:52:35,063 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:52:35,063 INFO L85 PathProgramCache]: Analyzing trace with hash -1164909737, now seen corresponding path program 1 times [2022-04-27 12:52:35,063 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:52:35,063 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [527008109] [2022-04-27 12:52:35,063 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:52:35,063 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:52:35,097 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:52:35,097 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [608852923] [2022-04-27 12:52:35,097 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:52:35,097 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:52:35,098 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:52:35,100 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-27 12:52:35,124 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-27 12:52:35,160 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:35,161 INFO L263 TraceCheckSpWp]: Trace formula consists of 141 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-27 12:52:35,177 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:35,178 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:52:38,690 INFO L272 TraceCheckUtils]: 0: Hoare triple {2167#true} call ULTIMATE.init(); {2167#true} is VALID [2022-04-27 12:52:38,691 INFO L290 TraceCheckUtils]: 1: Hoare triple {2167#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(10, 2);call #Ultimate.allocInit(12, 3); {2167#true} is VALID [2022-04-27 12:52:38,691 INFO L290 TraceCheckUtils]: 2: Hoare triple {2167#true} assume true; {2167#true} is VALID [2022-04-27 12:52:38,691 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2167#true} {2167#true} #88#return; {2167#true} is VALID [2022-04-27 12:52:38,691 INFO L272 TraceCheckUtils]: 4: Hoare triple {2167#true} call #t~ret6 := main(); {2167#true} is VALID [2022-04-27 12:52:38,691 INFO L290 TraceCheckUtils]: 5: Hoare triple {2167#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2167#true} is VALID [2022-04-27 12:52:38,691 INFO L272 TraceCheckUtils]: 6: Hoare triple {2167#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {2167#true} is VALID [2022-04-27 12:52:38,691 INFO L290 TraceCheckUtils]: 7: Hoare triple {2167#true} ~cond := #in~cond; {2167#true} is VALID [2022-04-27 12:52:38,691 INFO L290 TraceCheckUtils]: 8: Hoare triple {2167#true} assume !(0 == ~cond); {2167#true} is VALID [2022-04-27 12:52:38,691 INFO L290 TraceCheckUtils]: 9: Hoare triple {2167#true} assume true; {2167#true} is VALID [2022-04-27 12:52:38,691 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2167#true} {2167#true} #66#return; {2167#true} is VALID [2022-04-27 12:52:38,692 INFO L290 TraceCheckUtils]: 11: Hoare triple {2167#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2167#true} is VALID [2022-04-27 12:52:38,692 INFO L272 TraceCheckUtils]: 12: Hoare triple {2167#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {2167#true} is VALID [2022-04-27 12:52:38,692 INFO L290 TraceCheckUtils]: 13: Hoare triple {2167#true} ~cond := #in~cond; {2167#true} is VALID [2022-04-27 12:52:38,692 INFO L290 TraceCheckUtils]: 14: Hoare triple {2167#true} assume !(0 == ~cond); {2167#true} is VALID [2022-04-27 12:52:38,692 INFO L290 TraceCheckUtils]: 15: Hoare triple {2167#true} assume true; {2167#true} is VALID [2022-04-27 12:52:38,692 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2167#true} {2167#true} #68#return; {2167#true} is VALID [2022-04-27 12:52:38,692 INFO L272 TraceCheckUtils]: 17: Hoare triple {2167#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2167#true} is VALID [2022-04-27 12:52:38,692 INFO L290 TraceCheckUtils]: 18: Hoare triple {2167#true} ~cond := #in~cond; {2167#true} is VALID [2022-04-27 12:52:38,692 INFO L290 TraceCheckUtils]: 19: Hoare triple {2167#true} assume !(0 == ~cond); {2167#true} is VALID [2022-04-27 12:52:38,692 INFO L290 TraceCheckUtils]: 20: Hoare triple {2167#true} assume true; {2167#true} is VALID [2022-04-27 12:52:38,693 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2167#true} {2167#true} #70#return; {2167#true} is VALID [2022-04-27 12:52:38,693 INFO L272 TraceCheckUtils]: 22: Hoare triple {2167#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2167#true} is VALID [2022-04-27 12:52:38,693 INFO L290 TraceCheckUtils]: 23: Hoare triple {2167#true} ~cond := #in~cond; {2167#true} is VALID [2022-04-27 12:52:38,693 INFO L290 TraceCheckUtils]: 24: Hoare triple {2167#true} assume !(0 == ~cond); {2167#true} is VALID [2022-04-27 12:52:38,693 INFO L290 TraceCheckUtils]: 25: Hoare triple {2167#true} assume true; {2167#true} is VALID [2022-04-27 12:52:38,693 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2167#true} {2167#true} #72#return; {2167#true} is VALID [2022-04-27 12:52:38,695 INFO L290 TraceCheckUtils]: 27: Hoare triple {2167#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2253#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:52:38,695 INFO L290 TraceCheckUtils]: 28: Hoare triple {2253#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {2253#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:52:38,695 INFO L272 TraceCheckUtils]: 29: Hoare triple {2253#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {2167#true} is VALID [2022-04-27 12:52:38,695 INFO L290 TraceCheckUtils]: 30: Hoare triple {2167#true} ~cond := #in~cond; {2167#true} is VALID [2022-04-27 12:52:38,696 INFO L290 TraceCheckUtils]: 31: Hoare triple {2167#true} assume !(0 == ~cond); {2167#true} is VALID [2022-04-27 12:52:38,696 INFO L290 TraceCheckUtils]: 32: Hoare triple {2167#true} assume true; {2167#true} is VALID [2022-04-27 12:52:38,697 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2167#true} {2253#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #74#return; {2253#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:52:38,697 INFO L272 TraceCheckUtils]: 34: Hoare triple {2253#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2167#true} is VALID [2022-04-27 12:52:38,697 INFO L290 TraceCheckUtils]: 35: Hoare triple {2167#true} ~cond := #in~cond; {2167#true} is VALID [2022-04-27 12:52:38,697 INFO L290 TraceCheckUtils]: 36: Hoare triple {2167#true} assume !(0 == ~cond); {2167#true} is VALID [2022-04-27 12:52:38,698 INFO L290 TraceCheckUtils]: 37: Hoare triple {2167#true} assume true; {2167#true} is VALID [2022-04-27 12:52:38,700 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {2167#true} {2253#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #76#return; {2253#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:52:38,700 INFO L272 TraceCheckUtils]: 39: Hoare triple {2253#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2167#true} is VALID [2022-04-27 12:52:38,700 INFO L290 TraceCheckUtils]: 40: Hoare triple {2167#true} ~cond := #in~cond; {2167#true} is VALID [2022-04-27 12:52:38,700 INFO L290 TraceCheckUtils]: 41: Hoare triple {2167#true} assume !(0 == ~cond); {2167#true} is VALID [2022-04-27 12:52:38,700 INFO L290 TraceCheckUtils]: 42: Hoare triple {2167#true} assume true; {2167#true} is VALID [2022-04-27 12:52:38,701 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {2167#true} {2253#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #78#return; {2253#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:52:38,701 INFO L290 TraceCheckUtils]: 44: Hoare triple {2253#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !!(~a~0 != ~b~0); {2253#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:52:38,702 INFO L290 TraceCheckUtils]: 45: Hoare triple {2253#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {2253#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:52:38,703 INFO L290 TraceCheckUtils]: 46: Hoare triple {2253#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {2253#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:52:38,704 INFO L272 TraceCheckUtils]: 47: Hoare triple {2253#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {2314#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:52:38,704 INFO L290 TraceCheckUtils]: 48: Hoare triple {2314#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2318#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:52:38,705 INFO L290 TraceCheckUtils]: 49: Hoare triple {2318#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2168#false} is VALID [2022-04-27 12:52:38,705 INFO L290 TraceCheckUtils]: 50: Hoare triple {2168#false} assume !false; {2168#false} is VALID [2022-04-27 12:52:38,705 INFO L134 CoverageAnalysis]: Checked inductivity of 44 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 38 trivial. 0 not checked. [2022-04-27 12:52:38,705 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 12:52:38,706 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:52:38,706 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [527008109] [2022-04-27 12:52:38,706 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:52:38,706 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [608852923] [2022-04-27 12:52:38,706 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [608852923] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:52:38,706 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:52:38,706 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 12:52:38,706 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [592415328] [2022-04-27 12:52:38,706 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:52:38,707 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 51 [2022-04-27 12:52:38,707 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:52:38,707 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-27 12:52:38,737 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:52:38,737 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 12:52:38,737 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:52:38,737 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 12:52:38,738 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 12:52:38,738 INFO L87 Difference]: Start difference. First operand 74 states and 101 transitions. Second operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-27 12:52:38,916 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:38,916 INFO L93 Difference]: Finished difference Result 84 states and 109 transitions. [2022-04-27 12:52:38,916 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 12:52:38,917 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 51 [2022-04-27 12:52:38,917 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:52:38,917 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-27 12:52:38,919 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 63 transitions. [2022-04-27 12:52:38,919 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-27 12:52:38,920 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 63 transitions. [2022-04-27 12:52:38,921 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 63 transitions. [2022-04-27 12:52:38,976 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:52:38,979 INFO L225 Difference]: With dead ends: 84 [2022-04-27 12:52:38,979 INFO L226 Difference]: Without dead ends: 81 [2022-04-27 12:52:38,979 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 51 GetRequests, 46 SyntacticMatches, 1 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-27 12:52:38,980 INFO L413 NwaCegarLoop]: 42 mSDtfsCounter, 6 mSDsluCounter, 102 mSDsCounter, 0 mSdLazyCounter, 38 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 144 SdHoareTripleChecker+Invalid, 39 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 38 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 12:52:38,980 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [8 Valid, 144 Invalid, 39 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 38 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 12:52:38,981 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 81 states. [2022-04-27 12:52:38,992 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 81 to 79. [2022-04-27 12:52:38,992 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:52:38,992 INFO L82 GeneralOperation]: Start isEquivalent. First operand 81 states. Second operand has 79 states, 42 states have (on average 1.2142857142857142) internal successors, (51), 45 states have internal predecessors, (51), 27 states have call successors, (27), 10 states have call predecessors, (27), 9 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-27 12:52:38,992 INFO L74 IsIncluded]: Start isIncluded. First operand 81 states. Second operand has 79 states, 42 states have (on average 1.2142857142857142) internal successors, (51), 45 states have internal predecessors, (51), 27 states have call successors, (27), 10 states have call predecessors, (27), 9 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-27 12:52:38,993 INFO L87 Difference]: Start difference. First operand 81 states. Second operand has 79 states, 42 states have (on average 1.2142857142857142) internal successors, (51), 45 states have internal predecessors, (51), 27 states have call successors, (27), 10 states have call predecessors, (27), 9 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-27 12:52:38,996 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:38,996 INFO L93 Difference]: Finished difference Result 81 states and 105 transitions. [2022-04-27 12:52:38,996 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 105 transitions. [2022-04-27 12:52:38,997 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:52:38,997 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:52:38,997 INFO L74 IsIncluded]: Start isIncluded. First operand has 79 states, 42 states have (on average 1.2142857142857142) internal successors, (51), 45 states have internal predecessors, (51), 27 states have call successors, (27), 10 states have call predecessors, (27), 9 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) Second operand 81 states. [2022-04-27 12:52:38,997 INFO L87 Difference]: Start difference. First operand has 79 states, 42 states have (on average 1.2142857142857142) internal successors, (51), 45 states have internal predecessors, (51), 27 states have call successors, (27), 10 states have call predecessors, (27), 9 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) Second operand 81 states. [2022-04-27 12:52:39,001 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:39,001 INFO L93 Difference]: Finished difference Result 81 states and 105 transitions. [2022-04-27 12:52:39,001 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 105 transitions. [2022-04-27 12:52:39,001 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:52:39,001 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:52:39,001 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:52:39,001 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:52:39,002 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 79 states, 42 states have (on average 1.2142857142857142) internal successors, (51), 45 states have internal predecessors, (51), 27 states have call successors, (27), 10 states have call predecessors, (27), 9 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-27 12:52:39,005 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 79 states to 79 states and 102 transitions. [2022-04-27 12:52:39,005 INFO L78 Accepts]: Start accepts. Automaton has 79 states and 102 transitions. Word has length 51 [2022-04-27 12:52:39,005 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:52:39,005 INFO L495 AbstractCegarLoop]: Abstraction has 79 states and 102 transitions. [2022-04-27 12:52:39,005 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-27 12:52:39,005 INFO L276 IsEmpty]: Start isEmpty. Operand 79 states and 102 transitions. [2022-04-27 12:52:39,006 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 55 [2022-04-27 12:52:39,006 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:52:39,006 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 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-27 12:52:39,034 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-27 12:52:39,229 WARN L477 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-27 12:52:39,229 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:52:39,230 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:52:39,230 INFO L85 PathProgramCache]: Analyzing trace with hash 1924168317, now seen corresponding path program 1 times [2022-04-27 12:52:39,230 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:52:39,230 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1137302010] [2022-04-27 12:52:39,230 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:52:39,230 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:52:39,244 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:52:39,244 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [279374782] [2022-04-27 12:52:39,244 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:52:39,244 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:52:39,245 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:52:39,250 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-27 12:52:39,255 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-27 12:52:39,294 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:39,295 INFO L263 TraceCheckSpWp]: Trace formula consists of 143 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-27 12:52:39,305 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:39,306 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:52:39,522 INFO L272 TraceCheckUtils]: 0: Hoare triple {2736#true} call ULTIMATE.init(); {2736#true} is VALID [2022-04-27 12:52:39,522 INFO L290 TraceCheckUtils]: 1: Hoare triple {2736#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(10, 2);call #Ultimate.allocInit(12, 3); {2736#true} is VALID [2022-04-27 12:52:39,522 INFO L290 TraceCheckUtils]: 2: Hoare triple {2736#true} assume true; {2736#true} is VALID [2022-04-27 12:52:39,527 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2736#true} {2736#true} #88#return; {2736#true} is VALID [2022-04-27 12:52:39,528 INFO L272 TraceCheckUtils]: 4: Hoare triple {2736#true} call #t~ret6 := main(); {2736#true} is VALID [2022-04-27 12:52:39,528 INFO L290 TraceCheckUtils]: 5: Hoare triple {2736#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2736#true} is VALID [2022-04-27 12:52:39,528 INFO L272 TraceCheckUtils]: 6: Hoare triple {2736#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {2736#true} is VALID [2022-04-27 12:52:39,528 INFO L290 TraceCheckUtils]: 7: Hoare triple {2736#true} ~cond := #in~cond; {2736#true} is VALID [2022-04-27 12:52:39,528 INFO L290 TraceCheckUtils]: 8: Hoare triple {2736#true} assume !(0 == ~cond); {2736#true} is VALID [2022-04-27 12:52:39,528 INFO L290 TraceCheckUtils]: 9: Hoare triple {2736#true} assume true; {2736#true} is VALID [2022-04-27 12:52:39,528 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2736#true} {2736#true} #66#return; {2736#true} is VALID [2022-04-27 12:52:39,528 INFO L290 TraceCheckUtils]: 11: Hoare triple {2736#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2736#true} is VALID [2022-04-27 12:52:39,529 INFO L272 TraceCheckUtils]: 12: Hoare triple {2736#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {2736#true} is VALID [2022-04-27 12:52:39,529 INFO L290 TraceCheckUtils]: 13: Hoare triple {2736#true} ~cond := #in~cond; {2736#true} is VALID [2022-04-27 12:52:39,529 INFO L290 TraceCheckUtils]: 14: Hoare triple {2736#true} assume !(0 == ~cond); {2736#true} is VALID [2022-04-27 12:52:39,529 INFO L290 TraceCheckUtils]: 15: Hoare triple {2736#true} assume true; {2736#true} is VALID [2022-04-27 12:52:39,529 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2736#true} {2736#true} #68#return; {2736#true} is VALID [2022-04-27 12:52:39,529 INFO L272 TraceCheckUtils]: 17: Hoare triple {2736#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2736#true} is VALID [2022-04-27 12:52:39,529 INFO L290 TraceCheckUtils]: 18: Hoare triple {2736#true} ~cond := #in~cond; {2736#true} is VALID [2022-04-27 12:52:39,529 INFO L290 TraceCheckUtils]: 19: Hoare triple {2736#true} assume !(0 == ~cond); {2736#true} is VALID [2022-04-27 12:52:39,529 INFO L290 TraceCheckUtils]: 20: Hoare triple {2736#true} assume true; {2736#true} is VALID [2022-04-27 12:52:39,529 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2736#true} {2736#true} #70#return; {2736#true} is VALID [2022-04-27 12:52:39,530 INFO L272 TraceCheckUtils]: 22: Hoare triple {2736#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2736#true} is VALID [2022-04-27 12:52:39,530 INFO L290 TraceCheckUtils]: 23: Hoare triple {2736#true} ~cond := #in~cond; {2736#true} is VALID [2022-04-27 12:52:39,530 INFO L290 TraceCheckUtils]: 24: Hoare triple {2736#true} assume !(0 == ~cond); {2736#true} is VALID [2022-04-27 12:52:39,530 INFO L290 TraceCheckUtils]: 25: Hoare triple {2736#true} assume true; {2736#true} is VALID [2022-04-27 12:52:39,530 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2736#true} {2736#true} #72#return; {2736#true} is VALID [2022-04-27 12:52:39,530 INFO L290 TraceCheckUtils]: 27: Hoare triple {2736#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2736#true} is VALID [2022-04-27 12:52:39,530 INFO L290 TraceCheckUtils]: 28: Hoare triple {2736#true} assume !false; {2736#true} is VALID [2022-04-27 12:52:39,530 INFO L272 TraceCheckUtils]: 29: Hoare triple {2736#true} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {2736#true} is VALID [2022-04-27 12:52:39,530 INFO L290 TraceCheckUtils]: 30: Hoare triple {2736#true} ~cond := #in~cond; {2736#true} is VALID [2022-04-27 12:52:39,530 INFO L290 TraceCheckUtils]: 31: Hoare triple {2736#true} assume !(0 == ~cond); {2736#true} is VALID [2022-04-27 12:52:39,531 INFO L290 TraceCheckUtils]: 32: Hoare triple {2736#true} assume true; {2736#true} is VALID [2022-04-27 12:52:39,531 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2736#true} {2736#true} #74#return; {2736#true} is VALID [2022-04-27 12:52:39,531 INFO L272 TraceCheckUtils]: 34: Hoare triple {2736#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2736#true} is VALID [2022-04-27 12:52:39,531 INFO L290 TraceCheckUtils]: 35: Hoare triple {2736#true} ~cond := #in~cond; {2846#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:52:39,532 INFO L290 TraceCheckUtils]: 36: Hoare triple {2846#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {2850#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:52:39,532 INFO L290 TraceCheckUtils]: 37: Hoare triple {2850#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2850#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:52:39,533 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {2850#(not (= |__VERIFIER_assert_#in~cond| 0))} {2736#true} #76#return; {2857#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:52:39,533 INFO L272 TraceCheckUtils]: 39: Hoare triple {2857#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2736#true} is VALID [2022-04-27 12:52:39,533 INFO L290 TraceCheckUtils]: 40: Hoare triple {2736#true} ~cond := #in~cond; {2736#true} is VALID [2022-04-27 12:52:39,533 INFO L290 TraceCheckUtils]: 41: Hoare triple {2736#true} assume !(0 == ~cond); {2736#true} is VALID [2022-04-27 12:52:39,533 INFO L290 TraceCheckUtils]: 42: Hoare triple {2736#true} assume true; {2736#true} is VALID [2022-04-27 12:52:39,534 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {2736#true} {2857#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #78#return; {2857#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:52:39,535 INFO L290 TraceCheckUtils]: 44: Hoare triple {2857#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !(~a~0 != ~b~0); {2876#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:52:39,535 INFO L272 TraceCheckUtils]: 45: Hoare triple {2876#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {2736#true} is VALID [2022-04-27 12:52:39,535 INFO L290 TraceCheckUtils]: 46: Hoare triple {2736#true} ~cond := #in~cond; {2736#true} is VALID [2022-04-27 12:52:39,535 INFO L290 TraceCheckUtils]: 47: Hoare triple {2736#true} assume !(0 == ~cond); {2736#true} is VALID [2022-04-27 12:52:39,535 INFO L290 TraceCheckUtils]: 48: Hoare triple {2736#true} assume true; {2736#true} is VALID [2022-04-27 12:52:39,536 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {2736#true} {2876#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #80#return; {2876#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:52:39,536 INFO L272 TraceCheckUtils]: 50: Hoare triple {2876#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~p~0 * ~x~0 + ~r~0 * ~y~0 - ~b~0 then 1 else 0)); {2895#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:52:39,537 INFO L290 TraceCheckUtils]: 51: Hoare triple {2895#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2899#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:52:39,537 INFO L290 TraceCheckUtils]: 52: Hoare triple {2899#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2737#false} is VALID [2022-04-27 12:52:39,537 INFO L290 TraceCheckUtils]: 53: Hoare triple {2737#false} assume !false; {2737#false} is VALID [2022-04-27 12:52:39,539 INFO L134 CoverageAnalysis]: Checked inductivity of 56 backedges. 10 proven. 7 refuted. 0 times theorem prover too weak. 39 trivial. 0 not checked. [2022-04-27 12:52:39,539 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:52:55,815 INFO L290 TraceCheckUtils]: 53: Hoare triple {2737#false} assume !false; {2737#false} is VALID [2022-04-27 12:52:55,816 INFO L290 TraceCheckUtils]: 52: Hoare triple {2899#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2737#false} is VALID [2022-04-27 12:52:55,816 INFO L290 TraceCheckUtils]: 51: Hoare triple {2895#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2899#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:52:55,818 INFO L272 TraceCheckUtils]: 50: Hoare triple {2876#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~p~0 * ~x~0 + ~r~0 * ~y~0 - ~b~0 then 1 else 0)); {2895#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:52:55,818 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {2736#true} {2876#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #80#return; {2876#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:52:55,819 INFO L290 TraceCheckUtils]: 48: Hoare triple {2736#true} assume true; {2736#true} is VALID [2022-04-27 12:52:55,819 INFO L290 TraceCheckUtils]: 47: Hoare triple {2736#true} assume !(0 == ~cond); {2736#true} is VALID [2022-04-27 12:52:55,819 INFO L290 TraceCheckUtils]: 46: Hoare triple {2736#true} ~cond := #in~cond; {2736#true} is VALID [2022-04-27 12:52:55,819 INFO L272 TraceCheckUtils]: 45: Hoare triple {2876#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {2736#true} is VALID [2022-04-27 12:52:55,819 INFO L290 TraceCheckUtils]: 44: Hoare triple {2857#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !(~a~0 != ~b~0); {2876#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:52:55,820 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {2736#true} {2857#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #78#return; {2857#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:52:55,821 INFO L290 TraceCheckUtils]: 42: Hoare triple {2736#true} assume true; {2736#true} is VALID [2022-04-27 12:52:55,821 INFO L290 TraceCheckUtils]: 41: Hoare triple {2736#true} assume !(0 == ~cond); {2736#true} is VALID [2022-04-27 12:52:55,835 INFO L290 TraceCheckUtils]: 40: Hoare triple {2736#true} ~cond := #in~cond; {2736#true} is VALID [2022-04-27 12:52:55,835 INFO L272 TraceCheckUtils]: 39: Hoare triple {2857#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2736#true} is VALID [2022-04-27 12:52:55,837 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {2850#(not (= |__VERIFIER_assert_#in~cond| 0))} {2736#true} #76#return; {2857#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:52:55,837 INFO L290 TraceCheckUtils]: 37: Hoare triple {2850#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2850#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:52:55,838 INFO L290 TraceCheckUtils]: 36: Hoare triple {2960#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {2850#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:52:55,838 INFO L290 TraceCheckUtils]: 35: Hoare triple {2736#true} ~cond := #in~cond; {2960#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 12:52:55,838 INFO L272 TraceCheckUtils]: 34: Hoare triple {2736#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2736#true} is VALID [2022-04-27 12:52:55,838 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2736#true} {2736#true} #74#return; {2736#true} is VALID [2022-04-27 12:52:55,839 INFO L290 TraceCheckUtils]: 32: Hoare triple {2736#true} assume true; {2736#true} is VALID [2022-04-27 12:52:55,839 INFO L290 TraceCheckUtils]: 31: Hoare triple {2736#true} assume !(0 == ~cond); {2736#true} is VALID [2022-04-27 12:52:55,839 INFO L290 TraceCheckUtils]: 30: Hoare triple {2736#true} ~cond := #in~cond; {2736#true} is VALID [2022-04-27 12:52:55,839 INFO L272 TraceCheckUtils]: 29: Hoare triple {2736#true} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {2736#true} is VALID [2022-04-27 12:52:55,839 INFO L290 TraceCheckUtils]: 28: Hoare triple {2736#true} assume !false; {2736#true} is VALID [2022-04-27 12:52:55,839 INFO L290 TraceCheckUtils]: 27: Hoare triple {2736#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2736#true} is VALID [2022-04-27 12:52:55,839 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2736#true} {2736#true} #72#return; {2736#true} is VALID [2022-04-27 12:52:55,839 INFO L290 TraceCheckUtils]: 25: Hoare triple {2736#true} assume true; {2736#true} is VALID [2022-04-27 12:52:55,839 INFO L290 TraceCheckUtils]: 24: Hoare triple {2736#true} assume !(0 == ~cond); {2736#true} is VALID [2022-04-27 12:52:55,840 INFO L290 TraceCheckUtils]: 23: Hoare triple {2736#true} ~cond := #in~cond; {2736#true} is VALID [2022-04-27 12:52:55,840 INFO L272 TraceCheckUtils]: 22: Hoare triple {2736#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2736#true} is VALID [2022-04-27 12:52:55,840 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2736#true} {2736#true} #70#return; {2736#true} is VALID [2022-04-27 12:52:55,840 INFO L290 TraceCheckUtils]: 20: Hoare triple {2736#true} assume true; {2736#true} is VALID [2022-04-27 12:52:55,840 INFO L290 TraceCheckUtils]: 19: Hoare triple {2736#true} assume !(0 == ~cond); {2736#true} is VALID [2022-04-27 12:52:55,840 INFO L290 TraceCheckUtils]: 18: Hoare triple {2736#true} ~cond := #in~cond; {2736#true} is VALID [2022-04-27 12:52:55,840 INFO L272 TraceCheckUtils]: 17: Hoare triple {2736#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2736#true} is VALID [2022-04-27 12:52:55,840 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2736#true} {2736#true} #68#return; {2736#true} is VALID [2022-04-27 12:52:55,840 INFO L290 TraceCheckUtils]: 15: Hoare triple {2736#true} assume true; {2736#true} is VALID [2022-04-27 12:52:55,840 INFO L290 TraceCheckUtils]: 14: Hoare triple {2736#true} assume !(0 == ~cond); {2736#true} is VALID [2022-04-27 12:52:55,841 INFO L290 TraceCheckUtils]: 13: Hoare triple {2736#true} ~cond := #in~cond; {2736#true} is VALID [2022-04-27 12:52:55,841 INFO L272 TraceCheckUtils]: 12: Hoare triple {2736#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {2736#true} is VALID [2022-04-27 12:52:55,841 INFO L290 TraceCheckUtils]: 11: Hoare triple {2736#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2736#true} is VALID [2022-04-27 12:52:55,841 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2736#true} {2736#true} #66#return; {2736#true} is VALID [2022-04-27 12:52:55,841 INFO L290 TraceCheckUtils]: 9: Hoare triple {2736#true} assume true; {2736#true} is VALID [2022-04-27 12:52:55,841 INFO L290 TraceCheckUtils]: 8: Hoare triple {2736#true} assume !(0 == ~cond); {2736#true} is VALID [2022-04-27 12:52:55,841 INFO L290 TraceCheckUtils]: 7: Hoare triple {2736#true} ~cond := #in~cond; {2736#true} is VALID [2022-04-27 12:52:55,841 INFO L272 TraceCheckUtils]: 6: Hoare triple {2736#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {2736#true} is VALID [2022-04-27 12:52:55,841 INFO L290 TraceCheckUtils]: 5: Hoare triple {2736#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2736#true} is VALID [2022-04-27 12:52:55,841 INFO L272 TraceCheckUtils]: 4: Hoare triple {2736#true} call #t~ret6 := main(); {2736#true} is VALID [2022-04-27 12:52:55,842 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2736#true} {2736#true} #88#return; {2736#true} is VALID [2022-04-27 12:52:55,842 INFO L290 TraceCheckUtils]: 2: Hoare triple {2736#true} assume true; {2736#true} is VALID [2022-04-27 12:52:55,842 INFO L290 TraceCheckUtils]: 1: Hoare triple {2736#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(10, 2);call #Ultimate.allocInit(12, 3); {2736#true} is VALID [2022-04-27 12:52:55,842 INFO L272 TraceCheckUtils]: 0: Hoare triple {2736#true} call ULTIMATE.init(); {2736#true} is VALID [2022-04-27 12:52:55,842 INFO L134 CoverageAnalysis]: Checked inductivity of 56 backedges. 10 proven. 7 refuted. 0 times theorem prover too weak. 39 trivial. 0 not checked. [2022-04-27 12:52:55,842 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:52:55,842 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1137302010] [2022-04-27 12:52:55,843 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:52:55,843 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [279374782] [2022-04-27 12:52:55,843 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [279374782] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 12:52:55,843 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 12:52:55,843 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-27 12:52:55,843 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1699688665] [2022-04-27 12:52:55,843 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 12:52:55,844 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) Word has length 54 [2022-04-27 12:52:55,844 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:52:55,844 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-27 12:52:55,875 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:52:55,875 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-27 12:52:55,876 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:52:55,876 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-27 12:52:55,876 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-04-27 12:52:55,876 INFO L87 Difference]: Start difference. First operand 79 states and 102 transitions. Second operand has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-27 12:52:56,399 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:56,399 INFO L93 Difference]: Finished difference Result 88 states and 112 transitions. [2022-04-27 12:52:56,399 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-27 12:52:56,400 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) Word has length 54 [2022-04-27 12:52:56,400 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:52:56,400 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-27 12:52:56,402 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 52 transitions. [2022-04-27 12:52:56,402 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-27 12:52:56,403 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 52 transitions. [2022-04-27 12:52:56,403 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 52 transitions. [2022-04-27 12:52:56,452 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:52:56,456 INFO L225 Difference]: With dead ends: 88 [2022-04-27 12:52:56,456 INFO L226 Difference]: Without dead ends: 84 [2022-04-27 12:52:56,457 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 110 GetRequests, 99 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2022-04-27 12:52:56,458 INFO L413 NwaCegarLoop]: 31 mSDtfsCounter, 13 mSDsluCounter, 119 mSDsCounter, 0 mSdLazyCounter, 141 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 150 SdHoareTripleChecker+Invalid, 151 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 141 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 12:52:56,458 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [14 Valid, 150 Invalid, 151 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 141 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 12:52:56,459 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 84 states. [2022-04-27 12:52:56,480 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 84 to 84. [2022-04-27 12:52:56,481 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:52:56,481 INFO L82 GeneralOperation]: Start isEquivalent. First operand 84 states. Second operand has 84 states, 46 states have (on average 1.1521739130434783) internal successors, (53), 49 states have internal predecessors, (53), 27 states have call successors, (27), 11 states have call predecessors, (27), 10 states have return successors, (25), 23 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-27 12:52:56,481 INFO L74 IsIncluded]: Start isIncluded. First operand 84 states. Second operand has 84 states, 46 states have (on average 1.1521739130434783) internal successors, (53), 49 states have internal predecessors, (53), 27 states have call successors, (27), 11 states have call predecessors, (27), 10 states have return successors, (25), 23 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-27 12:52:56,482 INFO L87 Difference]: Start difference. First operand 84 states. Second operand has 84 states, 46 states have (on average 1.1521739130434783) internal successors, (53), 49 states have internal predecessors, (53), 27 states have call successors, (27), 11 states have call predecessors, (27), 10 states have return successors, (25), 23 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-27 12:52:56,485 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:56,485 INFO L93 Difference]: Finished difference Result 84 states and 105 transitions. [2022-04-27 12:52:56,485 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 105 transitions. [2022-04-27 12:52:56,486 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:52:56,486 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:52:56,488 INFO L74 IsIncluded]: Start isIncluded. First operand has 84 states, 46 states have (on average 1.1521739130434783) internal successors, (53), 49 states have internal predecessors, (53), 27 states have call successors, (27), 11 states have call predecessors, (27), 10 states have return successors, (25), 23 states have call predecessors, (25), 25 states have call successors, (25) Second operand 84 states. [2022-04-27 12:52:56,488 INFO L87 Difference]: Start difference. First operand has 84 states, 46 states have (on average 1.1521739130434783) internal successors, (53), 49 states have internal predecessors, (53), 27 states have call successors, (27), 11 states have call predecessors, (27), 10 states have return successors, (25), 23 states have call predecessors, (25), 25 states have call successors, (25) Second operand 84 states. [2022-04-27 12:52:56,495 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:56,495 INFO L93 Difference]: Finished difference Result 84 states and 105 transitions. [2022-04-27 12:52:56,496 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 105 transitions. [2022-04-27 12:52:56,496 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:52:56,496 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:52:56,496 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:52:56,496 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:52:56,496 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 84 states, 46 states have (on average 1.1521739130434783) internal successors, (53), 49 states have internal predecessors, (53), 27 states have call successors, (27), 11 states have call predecessors, (27), 10 states have return successors, (25), 23 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-27 12:52:56,499 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 84 states to 84 states and 105 transitions. [2022-04-27 12:52:56,499 INFO L78 Accepts]: Start accepts. Automaton has 84 states and 105 transitions. Word has length 54 [2022-04-27 12:52:56,499 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:52:56,499 INFO L495 AbstractCegarLoop]: Abstraction has 84 states and 105 transitions. [2022-04-27 12:52:56,499 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-27 12:52:56,499 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 105 transitions. [2022-04-27 12:52:56,501 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 57 [2022-04-27 12:52:56,501 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:52:56,501 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:52:56,519 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-27 12:52:56,707 WARN L477 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-27 12:52:56,708 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:52:56,708 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:52:56,708 INFO L85 PathProgramCache]: Analyzing trace with hash 1698149216, now seen corresponding path program 2 times [2022-04-27 12:52:56,709 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:52:56,709 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [68222461] [2022-04-27 12:52:56,709 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:52:56,709 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:52:56,736 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:52:56,736 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1266094947] [2022-04-27 12:52:56,736 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 12:52:56,737 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:52:56,737 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:52:56,738 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-27 12:52:56,739 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-27 12:52:56,786 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 12:52:56,787 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 12:52:56,788 INFO L263 TraceCheckSpWp]: Trace formula consists of 150 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-27 12:52:56,799 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:56,800 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:52:57,078 INFO L272 TraceCheckUtils]: 0: Hoare triple {3502#true} call ULTIMATE.init(); {3502#true} is VALID [2022-04-27 12:52:57,078 INFO L290 TraceCheckUtils]: 1: Hoare triple {3502#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(10, 2);call #Ultimate.allocInit(12, 3); {3502#true} is VALID [2022-04-27 12:52:57,078 INFO L290 TraceCheckUtils]: 2: Hoare triple {3502#true} assume true; {3502#true} is VALID [2022-04-27 12:52:57,078 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3502#true} {3502#true} #88#return; {3502#true} is VALID [2022-04-27 12:52:57,078 INFO L272 TraceCheckUtils]: 4: Hoare triple {3502#true} call #t~ret6 := main(); {3502#true} is VALID [2022-04-27 12:52:57,078 INFO L290 TraceCheckUtils]: 5: Hoare triple {3502#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {3502#true} is VALID [2022-04-27 12:52:57,078 INFO L272 TraceCheckUtils]: 6: Hoare triple {3502#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {3502#true} is VALID [2022-04-27 12:52:57,079 INFO L290 TraceCheckUtils]: 7: Hoare triple {3502#true} ~cond := #in~cond; {3502#true} is VALID [2022-04-27 12:52:57,079 INFO L290 TraceCheckUtils]: 8: Hoare triple {3502#true} assume !(0 == ~cond); {3502#true} is VALID [2022-04-27 12:52:57,079 INFO L290 TraceCheckUtils]: 9: Hoare triple {3502#true} assume true; {3502#true} is VALID [2022-04-27 12:52:57,079 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3502#true} {3502#true} #66#return; {3502#true} is VALID [2022-04-27 12:52:57,079 INFO L290 TraceCheckUtils]: 11: Hoare triple {3502#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3502#true} is VALID [2022-04-27 12:52:57,079 INFO L272 TraceCheckUtils]: 12: Hoare triple {3502#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {3502#true} is VALID [2022-04-27 12:52:57,079 INFO L290 TraceCheckUtils]: 13: Hoare triple {3502#true} ~cond := #in~cond; {3502#true} is VALID [2022-04-27 12:52:57,079 INFO L290 TraceCheckUtils]: 14: Hoare triple {3502#true} assume !(0 == ~cond); {3502#true} is VALID [2022-04-27 12:52:57,079 INFO L290 TraceCheckUtils]: 15: Hoare triple {3502#true} assume true; {3502#true} is VALID [2022-04-27 12:52:57,079 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3502#true} {3502#true} #68#return; {3502#true} is VALID [2022-04-27 12:52:57,079 INFO L272 TraceCheckUtils]: 17: Hoare triple {3502#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3502#true} is VALID [2022-04-27 12:52:57,080 INFO L290 TraceCheckUtils]: 18: Hoare triple {3502#true} ~cond := #in~cond; {3502#true} is VALID [2022-04-27 12:52:57,080 INFO L290 TraceCheckUtils]: 19: Hoare triple {3502#true} assume !(0 == ~cond); {3502#true} is VALID [2022-04-27 12:52:57,080 INFO L290 TraceCheckUtils]: 20: Hoare triple {3502#true} assume true; {3502#true} is VALID [2022-04-27 12:52:57,080 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3502#true} {3502#true} #70#return; {3502#true} is VALID [2022-04-27 12:52:57,080 INFO L272 TraceCheckUtils]: 22: Hoare triple {3502#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3502#true} is VALID [2022-04-27 12:52:57,080 INFO L290 TraceCheckUtils]: 23: Hoare triple {3502#true} ~cond := #in~cond; {3502#true} is VALID [2022-04-27 12:52:57,080 INFO L290 TraceCheckUtils]: 24: Hoare triple {3502#true} assume !(0 == ~cond); {3502#true} is VALID [2022-04-27 12:52:57,080 INFO L290 TraceCheckUtils]: 25: Hoare triple {3502#true} assume true; {3502#true} is VALID [2022-04-27 12:52:57,080 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3502#true} {3502#true} #72#return; {3502#true} is VALID [2022-04-27 12:52:57,081 INFO L290 TraceCheckUtils]: 27: Hoare triple {3502#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3588#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:52:57,081 INFO L290 TraceCheckUtils]: 28: Hoare triple {3588#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {3588#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:52:57,081 INFO L272 TraceCheckUtils]: 29: Hoare triple {3588#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {3502#true} is VALID [2022-04-27 12:52:57,081 INFO L290 TraceCheckUtils]: 30: Hoare triple {3502#true} ~cond := #in~cond; {3502#true} is VALID [2022-04-27 12:52:57,081 INFO L290 TraceCheckUtils]: 31: Hoare triple {3502#true} assume !(0 == ~cond); {3502#true} is VALID [2022-04-27 12:52:57,082 INFO L290 TraceCheckUtils]: 32: Hoare triple {3502#true} assume true; {3502#true} is VALID [2022-04-27 12:52:57,082 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {3502#true} {3588#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #74#return; {3588#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:52:57,083 INFO L272 TraceCheckUtils]: 34: Hoare triple {3588#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3502#true} is VALID [2022-04-27 12:52:57,083 INFO L290 TraceCheckUtils]: 35: Hoare triple {3502#true} ~cond := #in~cond; {3502#true} is VALID [2022-04-27 12:52:57,083 INFO L290 TraceCheckUtils]: 36: Hoare triple {3502#true} assume !(0 == ~cond); {3502#true} is VALID [2022-04-27 12:52:57,083 INFO L290 TraceCheckUtils]: 37: Hoare triple {3502#true} assume true; {3502#true} is VALID [2022-04-27 12:52:57,083 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {3502#true} {3588#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #76#return; {3588#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:52:57,084 INFO L272 TraceCheckUtils]: 39: Hoare triple {3588#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3502#true} is VALID [2022-04-27 12:52:57,084 INFO L290 TraceCheckUtils]: 40: Hoare triple {3502#true} ~cond := #in~cond; {3502#true} is VALID [2022-04-27 12:52:57,084 INFO L290 TraceCheckUtils]: 41: Hoare triple {3502#true} assume !(0 == ~cond); {3502#true} is VALID [2022-04-27 12:52:57,084 INFO L290 TraceCheckUtils]: 42: Hoare triple {3502#true} assume true; {3502#true} is VALID [2022-04-27 12:52:57,085 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {3502#true} {3588#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #78#return; {3588#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:52:57,085 INFO L290 TraceCheckUtils]: 44: Hoare triple {3588#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~a~0 != ~b~0); {3588#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:52:57,086 INFO L290 TraceCheckUtils]: 45: Hoare triple {3588#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {3643#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~a~0 main_~y~0) main_~x~0) (= (* (- 1) main_~r~0) 1))} is VALID [2022-04-27 12:52:57,086 INFO L290 TraceCheckUtils]: 46: Hoare triple {3643#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~a~0 main_~y~0) main_~x~0) (= (* (- 1) main_~r~0) 1))} assume !false; {3643#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~a~0 main_~y~0) main_~x~0) (= (* (- 1) main_~r~0) 1))} is VALID [2022-04-27 12:52:57,086 INFO L272 TraceCheckUtils]: 47: Hoare triple {3643#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~a~0 main_~y~0) main_~x~0) (= (* (- 1) main_~r~0) 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {3502#true} is VALID [2022-04-27 12:52:57,086 INFO L290 TraceCheckUtils]: 48: Hoare triple {3502#true} ~cond := #in~cond; {3502#true} is VALID [2022-04-27 12:52:57,086 INFO L290 TraceCheckUtils]: 49: Hoare triple {3502#true} assume !(0 == ~cond); {3502#true} is VALID [2022-04-27 12:52:57,086 INFO L290 TraceCheckUtils]: 50: Hoare triple {3502#true} assume true; {3502#true} is VALID [2022-04-27 12:52:57,087 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {3502#true} {3643#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~a~0 main_~y~0) main_~x~0) (= (* (- 1) main_~r~0) 1))} #74#return; {3643#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~a~0 main_~y~0) main_~x~0) (= (* (- 1) main_~r~0) 1))} is VALID [2022-04-27 12:52:57,088 INFO L272 TraceCheckUtils]: 52: Hoare triple {3643#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= (+ main_~a~0 main_~y~0) main_~x~0) (= (* (- 1) main_~r~0) 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3665#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:52:57,088 INFO L290 TraceCheckUtils]: 53: Hoare triple {3665#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3669#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:52:57,089 INFO L290 TraceCheckUtils]: 54: Hoare triple {3669#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3503#false} is VALID [2022-04-27 12:52:57,089 INFO L290 TraceCheckUtils]: 55: Hoare triple {3503#false} assume !false; {3503#false} is VALID [2022-04-27 12:52:57,089 INFO L134 CoverageAnalysis]: Checked inductivity of 59 backedges. 8 proven. 3 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-27 12:52:57,089 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:52:57,294 INFO L290 TraceCheckUtils]: 55: Hoare triple {3503#false} assume !false; {3503#false} is VALID [2022-04-27 12:52:57,295 INFO L290 TraceCheckUtils]: 54: Hoare triple {3669#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3503#false} is VALID [2022-04-27 12:52:57,295 INFO L290 TraceCheckUtils]: 53: Hoare triple {3665#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3669#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:52:57,296 INFO L272 TraceCheckUtils]: 52: Hoare triple {3685#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3665#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:52:57,297 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {3502#true} {3685#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #74#return; {3685#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:52:57,297 INFO L290 TraceCheckUtils]: 50: Hoare triple {3502#true} assume true; {3502#true} is VALID [2022-04-27 12:52:57,297 INFO L290 TraceCheckUtils]: 49: Hoare triple {3502#true} assume !(0 == ~cond); {3502#true} is VALID [2022-04-27 12:52:57,297 INFO L290 TraceCheckUtils]: 48: Hoare triple {3502#true} ~cond := #in~cond; {3502#true} is VALID [2022-04-27 12:52:57,297 INFO L272 TraceCheckUtils]: 47: Hoare triple {3685#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {3502#true} is VALID [2022-04-27 12:52:57,297 INFO L290 TraceCheckUtils]: 46: Hoare triple {3685#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {3685#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:52:57,629 INFO L290 TraceCheckUtils]: 45: Hoare triple {3707#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {3685#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:52:57,630 INFO L290 TraceCheckUtils]: 44: Hoare triple {3707#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume !!(~a~0 != ~b~0); {3707#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-27 12:52:57,631 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {3502#true} {3707#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} #78#return; {3707#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-27 12:52:57,631 INFO L290 TraceCheckUtils]: 42: Hoare triple {3502#true} assume true; {3502#true} is VALID [2022-04-27 12:52:57,631 INFO L290 TraceCheckUtils]: 41: Hoare triple {3502#true} assume !(0 == ~cond); {3502#true} is VALID [2022-04-27 12:52:57,631 INFO L290 TraceCheckUtils]: 40: Hoare triple {3502#true} ~cond := #in~cond; {3502#true} is VALID [2022-04-27 12:52:57,631 INFO L272 TraceCheckUtils]: 39: Hoare triple {3707#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3502#true} is VALID [2022-04-27 12:52:57,631 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {3502#true} {3707#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} #76#return; {3707#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-27 12:52:57,632 INFO L290 TraceCheckUtils]: 37: Hoare triple {3502#true} assume true; {3502#true} is VALID [2022-04-27 12:52:57,645 INFO L290 TraceCheckUtils]: 36: Hoare triple {3502#true} assume !(0 == ~cond); {3502#true} is VALID [2022-04-27 12:52:57,645 INFO L290 TraceCheckUtils]: 35: Hoare triple {3502#true} ~cond := #in~cond; {3502#true} is VALID [2022-04-27 12:52:57,646 INFO L272 TraceCheckUtils]: 34: Hoare triple {3707#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3502#true} is VALID [2022-04-27 12:52:57,648 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {3502#true} {3707#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} #74#return; {3707#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-27 12:52:57,648 INFO L290 TraceCheckUtils]: 32: Hoare triple {3502#true} assume true; {3502#true} is VALID [2022-04-27 12:52:57,648 INFO L290 TraceCheckUtils]: 31: Hoare triple {3502#true} assume !(0 == ~cond); {3502#true} is VALID [2022-04-27 12:52:57,648 INFO L290 TraceCheckUtils]: 30: Hoare triple {3502#true} ~cond := #in~cond; {3502#true} is VALID [2022-04-27 12:52:57,648 INFO L272 TraceCheckUtils]: 29: Hoare triple {3707#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {3502#true} is VALID [2022-04-27 12:52:57,649 INFO L290 TraceCheckUtils]: 28: Hoare triple {3707#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume !false; {3707#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-27 12:52:57,649 INFO L290 TraceCheckUtils]: 27: Hoare triple {3502#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3707#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-27 12:52:57,649 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3502#true} {3502#true} #72#return; {3502#true} is VALID [2022-04-27 12:52:57,649 INFO L290 TraceCheckUtils]: 25: Hoare triple {3502#true} assume true; {3502#true} is VALID [2022-04-27 12:52:57,649 INFO L290 TraceCheckUtils]: 24: Hoare triple {3502#true} assume !(0 == ~cond); {3502#true} is VALID [2022-04-27 12:52:57,649 INFO L290 TraceCheckUtils]: 23: Hoare triple {3502#true} ~cond := #in~cond; {3502#true} is VALID [2022-04-27 12:52:57,650 INFO L272 TraceCheckUtils]: 22: Hoare triple {3502#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3502#true} is VALID [2022-04-27 12:52:57,650 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3502#true} {3502#true} #70#return; {3502#true} is VALID [2022-04-27 12:52:57,650 INFO L290 TraceCheckUtils]: 20: Hoare triple {3502#true} assume true; {3502#true} is VALID [2022-04-27 12:52:57,650 INFO L290 TraceCheckUtils]: 19: Hoare triple {3502#true} assume !(0 == ~cond); {3502#true} is VALID [2022-04-27 12:52:57,650 INFO L290 TraceCheckUtils]: 18: Hoare triple {3502#true} ~cond := #in~cond; {3502#true} is VALID [2022-04-27 12:52:57,650 INFO L272 TraceCheckUtils]: 17: Hoare triple {3502#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3502#true} is VALID [2022-04-27 12:52:57,650 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3502#true} {3502#true} #68#return; {3502#true} is VALID [2022-04-27 12:52:57,650 INFO L290 TraceCheckUtils]: 15: Hoare triple {3502#true} assume true; {3502#true} is VALID [2022-04-27 12:52:57,650 INFO L290 TraceCheckUtils]: 14: Hoare triple {3502#true} assume !(0 == ~cond); {3502#true} is VALID [2022-04-27 12:52:57,650 INFO L290 TraceCheckUtils]: 13: Hoare triple {3502#true} ~cond := #in~cond; {3502#true} is VALID [2022-04-27 12:52:57,650 INFO L272 TraceCheckUtils]: 12: Hoare triple {3502#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {3502#true} is VALID [2022-04-27 12:52:57,650 INFO L290 TraceCheckUtils]: 11: Hoare triple {3502#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3502#true} is VALID [2022-04-27 12:52:57,651 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3502#true} {3502#true} #66#return; {3502#true} is VALID [2022-04-27 12:52:57,651 INFO L290 TraceCheckUtils]: 9: Hoare triple {3502#true} assume true; {3502#true} is VALID [2022-04-27 12:52:57,651 INFO L290 TraceCheckUtils]: 8: Hoare triple {3502#true} assume !(0 == ~cond); {3502#true} is VALID [2022-04-27 12:52:57,651 INFO L290 TraceCheckUtils]: 7: Hoare triple {3502#true} ~cond := #in~cond; {3502#true} is VALID [2022-04-27 12:52:57,651 INFO L272 TraceCheckUtils]: 6: Hoare triple {3502#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {3502#true} is VALID [2022-04-27 12:52:57,651 INFO L290 TraceCheckUtils]: 5: Hoare triple {3502#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {3502#true} is VALID [2022-04-27 12:52:57,651 INFO L272 TraceCheckUtils]: 4: Hoare triple {3502#true} call #t~ret6 := main(); {3502#true} is VALID [2022-04-27 12:52:57,651 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3502#true} {3502#true} #88#return; {3502#true} is VALID [2022-04-27 12:52:57,651 INFO L290 TraceCheckUtils]: 2: Hoare triple {3502#true} assume true; {3502#true} is VALID [2022-04-27 12:52:57,651 INFO L290 TraceCheckUtils]: 1: Hoare triple {3502#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(10, 2);call #Ultimate.allocInit(12, 3); {3502#true} is VALID [2022-04-27 12:52:57,652 INFO L272 TraceCheckUtils]: 0: Hoare triple {3502#true} call ULTIMATE.init(); {3502#true} is VALID [2022-04-27 12:52:57,652 INFO L134 CoverageAnalysis]: Checked inductivity of 59 backedges. 8 proven. 3 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-27 12:52:57,652 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:52:57,652 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [68222461] [2022-04-27 12:52:57,652 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:52:57,652 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1266094947] [2022-04-27 12:52:57,652 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1266094947] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 12:52:57,652 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 12:52:57,652 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 8 [2022-04-27 12:52:57,653 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [265502987] [2022-04-27 12:52:57,653 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 12:52:57,653 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 5 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) Word has length 56 [2022-04-27 12:52:57,653 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:52:57,654 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 5 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-27 12:52:57,744 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:52:57,744 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-27 12:52:57,745 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:52:57,745 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-27 12:52:57,745 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=40, Unknown=0, NotChecked=0, Total=56 [2022-04-27 12:52:57,745 INFO L87 Difference]: Start difference. First operand 84 states and 105 transitions. Second operand has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 5 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-27 12:53:00,858 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:53:00,858 INFO L93 Difference]: Finished difference Result 110 states and 141 transitions. [2022-04-27 12:53:00,858 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-27 12:53:00,858 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 5 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) Word has length 56 [2022-04-27 12:53:00,859 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:53:00,859 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 5 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-27 12:53:00,861 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 75 transitions. [2022-04-27 12:53:00,861 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 5 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-27 12:53:00,863 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 75 transitions. [2022-04-27 12:53:00,863 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 75 transitions. [2022-04-27 12:53:01,169 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:53:01,176 INFO L225 Difference]: With dead ends: 110 [2022-04-27 12:53:01,176 INFO L226 Difference]: Without dead ends: 103 [2022-04-27 12:53:01,176 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 114 GetRequests, 104 SyntacticMatches, 1 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=31, Invalid=79, Unknown=0, NotChecked=0, Total=110 [2022-04-27 12:53:01,177 INFO L413 NwaCegarLoop]: 43 mSDtfsCounter, 12 mSDsluCounter, 96 mSDsCounter, 0 mSdLazyCounter, 138 mSolverCounterSat, 40 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 139 SdHoareTripleChecker+Invalid, 178 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 40 IncrementalHoareTripleChecker+Valid, 138 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-27 12:53:01,177 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [12 Valid, 139 Invalid, 178 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [40 Valid, 138 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-27 12:53:01,178 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 103 states. [2022-04-27 12:53:01,203 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 103 to 88. [2022-04-27 12:53:01,203 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:53:01,203 INFO L82 GeneralOperation]: Start isEquivalent. First operand 103 states. Second operand has 88 states, 52 states have (on average 1.1153846153846154) internal successors, (58), 54 states have internal predecessors, (58), 23 states have call successors, (23), 13 states have call predecessors, (23), 12 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-27 12:53:01,204 INFO L74 IsIncluded]: Start isIncluded. First operand 103 states. Second operand has 88 states, 52 states have (on average 1.1153846153846154) internal successors, (58), 54 states have internal predecessors, (58), 23 states have call successors, (23), 13 states have call predecessors, (23), 12 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-27 12:53:01,204 INFO L87 Difference]: Start difference. First operand 103 states. Second operand has 88 states, 52 states have (on average 1.1153846153846154) internal successors, (58), 54 states have internal predecessors, (58), 23 states have call successors, (23), 13 states have call predecessors, (23), 12 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-27 12:53:01,209 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:53:01,209 INFO L93 Difference]: Finished difference Result 103 states and 128 transitions. [2022-04-27 12:53:01,209 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 128 transitions. [2022-04-27 12:53:01,209 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:53:01,210 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:53:01,210 INFO L74 IsIncluded]: Start isIncluded. First operand has 88 states, 52 states have (on average 1.1153846153846154) internal successors, (58), 54 states have internal predecessors, (58), 23 states have call successors, (23), 13 states have call predecessors, (23), 12 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 103 states. [2022-04-27 12:53:01,210 INFO L87 Difference]: Start difference. First operand has 88 states, 52 states have (on average 1.1153846153846154) internal successors, (58), 54 states have internal predecessors, (58), 23 states have call successors, (23), 13 states have call predecessors, (23), 12 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 103 states. [2022-04-27 12:53:01,214 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:53:01,214 INFO L93 Difference]: Finished difference Result 103 states and 128 transitions. [2022-04-27 12:53:01,214 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 128 transitions. [2022-04-27 12:53:01,215 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:53:01,215 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:53:01,215 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:53:01,215 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:53:01,215 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 88 states, 52 states have (on average 1.1153846153846154) internal successors, (58), 54 states have internal predecessors, (58), 23 states have call successors, (23), 13 states have call predecessors, (23), 12 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-27 12:53:01,218 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 102 transitions. [2022-04-27 12:53:01,218 INFO L78 Accepts]: Start accepts. Automaton has 88 states and 102 transitions. Word has length 56 [2022-04-27 12:53:01,218 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:53:01,218 INFO L495 AbstractCegarLoop]: Abstraction has 88 states and 102 transitions. [2022-04-27 12:53:01,219 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 5 states have call successors, (16), 2 states have call predecessors, (16), 1 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-27 12:53:01,219 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 102 transitions. [2022-04-27 12:53:01,219 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 70 [2022-04-27 12:53:01,219 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:53:01,220 INFO L195 NwaCegarLoop]: trace histogram [7, 6, 6, 4, 4, 4, 3, 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, 1] [2022-04-27 12:53:01,243 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-27 12:53:01,431 WARN L477 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-27 12:53:01,432 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:53:01,432 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:53:01,432 INFO L85 PathProgramCache]: Analyzing trace with hash 2064127436, now seen corresponding path program 1 times [2022-04-27 12:53:01,432 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:53:01,432 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [31390960] [2022-04-27 12:53:01,432 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:53:01,433 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:53:01,446 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:53:01,446 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [824052206] [2022-04-27 12:53:01,446 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:53:01,446 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:53:01,447 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:53:01,448 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-27 12:53:01,461 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-27 12:53:01,498 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:53:01,499 INFO L263 TraceCheckSpWp]: Trace formula consists of 177 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-27 12:53:01,511 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:53:01,512 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:53:01,880 INFO L272 TraceCheckUtils]: 0: Hoare triple {4353#true} call ULTIMATE.init(); {4353#true} is VALID [2022-04-27 12:53:01,880 INFO L290 TraceCheckUtils]: 1: Hoare triple {4353#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(10, 2);call #Ultimate.allocInit(12, 3); {4353#true} is VALID [2022-04-27 12:53:01,880 INFO L290 TraceCheckUtils]: 2: Hoare triple {4353#true} assume true; {4353#true} is VALID [2022-04-27 12:53:01,880 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4353#true} {4353#true} #88#return; {4353#true} is VALID [2022-04-27 12:53:01,880 INFO L272 TraceCheckUtils]: 4: Hoare triple {4353#true} call #t~ret6 := main(); {4353#true} is VALID [2022-04-27 12:53:01,881 INFO L290 TraceCheckUtils]: 5: Hoare triple {4353#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {4353#true} is VALID [2022-04-27 12:53:01,881 INFO L272 TraceCheckUtils]: 6: Hoare triple {4353#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {4353#true} is VALID [2022-04-27 12:53:01,881 INFO L290 TraceCheckUtils]: 7: Hoare triple {4353#true} ~cond := #in~cond; {4353#true} is VALID [2022-04-27 12:53:01,881 INFO L290 TraceCheckUtils]: 8: Hoare triple {4353#true} assume !(0 == ~cond); {4353#true} is VALID [2022-04-27 12:53:01,881 INFO L290 TraceCheckUtils]: 9: Hoare triple {4353#true} assume true; {4353#true} is VALID [2022-04-27 12:53:01,881 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4353#true} {4353#true} #66#return; {4353#true} is VALID [2022-04-27 12:53:01,881 INFO L290 TraceCheckUtils]: 11: Hoare triple {4353#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4353#true} is VALID [2022-04-27 12:53:01,881 INFO L272 TraceCheckUtils]: 12: Hoare triple {4353#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {4353#true} is VALID [2022-04-27 12:53:01,881 INFO L290 TraceCheckUtils]: 13: Hoare triple {4353#true} ~cond := #in~cond; {4353#true} is VALID [2022-04-27 12:53:01,881 INFO L290 TraceCheckUtils]: 14: Hoare triple {4353#true} assume !(0 == ~cond); {4353#true} is VALID [2022-04-27 12:53:01,881 INFO L290 TraceCheckUtils]: 15: Hoare triple {4353#true} assume true; {4353#true} is VALID [2022-04-27 12:53:01,882 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {4353#true} {4353#true} #68#return; {4353#true} is VALID [2022-04-27 12:53:01,882 INFO L272 TraceCheckUtils]: 17: Hoare triple {4353#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4353#true} is VALID [2022-04-27 12:53:01,882 INFO L290 TraceCheckUtils]: 18: Hoare triple {4353#true} ~cond := #in~cond; {4353#true} is VALID [2022-04-27 12:53:01,883 INFO L290 TraceCheckUtils]: 19: Hoare triple {4353#true} assume !(0 == ~cond); {4353#true} is VALID [2022-04-27 12:53:01,883 INFO L290 TraceCheckUtils]: 20: Hoare triple {4353#true} assume true; {4353#true} is VALID [2022-04-27 12:53:01,883 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4353#true} {4353#true} #70#return; {4353#true} is VALID [2022-04-27 12:53:01,883 INFO L272 TraceCheckUtils]: 22: Hoare triple {4353#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4353#true} is VALID [2022-04-27 12:53:01,883 INFO L290 TraceCheckUtils]: 23: Hoare triple {4353#true} ~cond := #in~cond; {4353#true} is VALID [2022-04-27 12:53:01,883 INFO L290 TraceCheckUtils]: 24: Hoare triple {4353#true} assume !(0 == ~cond); {4353#true} is VALID [2022-04-27 12:53:01,883 INFO L290 TraceCheckUtils]: 25: Hoare triple {4353#true} assume true; {4353#true} is VALID [2022-04-27 12:53:01,883 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4353#true} {4353#true} #72#return; {4353#true} is VALID [2022-04-27 12:53:01,884 INFO L290 TraceCheckUtils]: 27: Hoare triple {4353#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:53:01,884 INFO L290 TraceCheckUtils]: 28: Hoare triple {4439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {4439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:53:01,884 INFO L272 TraceCheckUtils]: 29: Hoare triple {4439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {4353#true} is VALID [2022-04-27 12:53:01,884 INFO L290 TraceCheckUtils]: 30: Hoare triple {4353#true} ~cond := #in~cond; {4353#true} is VALID [2022-04-27 12:53:01,885 INFO L290 TraceCheckUtils]: 31: Hoare triple {4353#true} assume !(0 == ~cond); {4353#true} is VALID [2022-04-27 12:53:01,885 INFO L290 TraceCheckUtils]: 32: Hoare triple {4353#true} assume true; {4353#true} is VALID [2022-04-27 12:53:01,885 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {4353#true} {4439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #74#return; {4439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:53:01,885 INFO L272 TraceCheckUtils]: 34: Hoare triple {4439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4353#true} is VALID [2022-04-27 12:53:01,885 INFO L290 TraceCheckUtils]: 35: Hoare triple {4353#true} ~cond := #in~cond; {4353#true} is VALID [2022-04-27 12:53:01,885 INFO L290 TraceCheckUtils]: 36: Hoare triple {4353#true} assume !(0 == ~cond); {4353#true} is VALID [2022-04-27 12:53:01,885 INFO L290 TraceCheckUtils]: 37: Hoare triple {4353#true} assume true; {4353#true} is VALID [2022-04-27 12:53:01,886 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {4353#true} {4439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #76#return; {4439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:53:01,886 INFO L272 TraceCheckUtils]: 39: Hoare triple {4439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {4353#true} is VALID [2022-04-27 12:53:01,886 INFO L290 TraceCheckUtils]: 40: Hoare triple {4353#true} ~cond := #in~cond; {4353#true} is VALID [2022-04-27 12:53:01,886 INFO L290 TraceCheckUtils]: 41: Hoare triple {4353#true} assume !(0 == ~cond); {4353#true} is VALID [2022-04-27 12:53:01,886 INFO L290 TraceCheckUtils]: 42: Hoare triple {4353#true} assume true; {4353#true} is VALID [2022-04-27 12:53:01,887 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {4353#true} {4439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #78#return; {4439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:53:01,887 INFO L290 TraceCheckUtils]: 44: Hoare triple {4439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !!(~a~0 != ~b~0); {4439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:53:01,888 INFO L290 TraceCheckUtils]: 45: Hoare triple {4439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {4494#(and (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} is VALID [2022-04-27 12:53:01,888 INFO L290 TraceCheckUtils]: 46: Hoare triple {4494#(and (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} assume !false; {4494#(and (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} is VALID [2022-04-27 12:53:01,889 INFO L272 TraceCheckUtils]: 47: Hoare triple {4494#(and (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {4353#true} is VALID [2022-04-27 12:53:01,889 INFO L290 TraceCheckUtils]: 48: Hoare triple {4353#true} ~cond := #in~cond; {4353#true} is VALID [2022-04-27 12:53:01,889 INFO L290 TraceCheckUtils]: 49: Hoare triple {4353#true} assume !(0 == ~cond); {4353#true} is VALID [2022-04-27 12:53:01,889 INFO L290 TraceCheckUtils]: 50: Hoare triple {4353#true} assume true; {4353#true} is VALID [2022-04-27 12:53:01,889 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {4353#true} {4494#(and (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} #74#return; {4494#(and (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} is VALID [2022-04-27 12:53:01,889 INFO L272 TraceCheckUtils]: 52: Hoare triple {4494#(and (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4353#true} is VALID [2022-04-27 12:53:01,889 INFO L290 TraceCheckUtils]: 53: Hoare triple {4353#true} ~cond := #in~cond; {4353#true} is VALID [2022-04-27 12:53:01,890 INFO L290 TraceCheckUtils]: 54: Hoare triple {4353#true} assume !(0 == ~cond); {4353#true} is VALID [2022-04-27 12:53:01,890 INFO L290 TraceCheckUtils]: 55: Hoare triple {4353#true} assume true; {4353#true} is VALID [2022-04-27 12:53:01,890 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {4353#true} {4494#(and (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} #76#return; {4494#(and (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} is VALID [2022-04-27 12:53:01,890 INFO L272 TraceCheckUtils]: 57: Hoare triple {4494#(and (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {4353#true} is VALID [2022-04-27 12:53:01,890 INFO L290 TraceCheckUtils]: 58: Hoare triple {4353#true} ~cond := #in~cond; {4353#true} is VALID [2022-04-27 12:53:01,891 INFO L290 TraceCheckUtils]: 59: Hoare triple {4353#true} assume !(0 == ~cond); {4353#true} is VALID [2022-04-27 12:53:01,891 INFO L290 TraceCheckUtils]: 60: Hoare triple {4353#true} assume true; {4353#true} is VALID [2022-04-27 12:53:01,891 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {4353#true} {4494#(and (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} #78#return; {4494#(and (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} is VALID [2022-04-27 12:53:01,892 INFO L290 TraceCheckUtils]: 62: Hoare triple {4494#(and (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} assume !!(~a~0 != ~b~0); {4494#(and (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} is VALID [2022-04-27 12:53:01,892 INFO L290 TraceCheckUtils]: 63: Hoare triple {4494#(and (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {4549#(and (= main_~p~0 (+ (* (- 1) main_~q~0) (* (- 1) main_~p~0) 1)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (- 1) main_~r~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-27 12:53:01,893 INFO L290 TraceCheckUtils]: 64: Hoare triple {4549#(and (= main_~p~0 (+ (* (- 1) main_~q~0) (* (- 1) main_~p~0) 1)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (- 1) main_~r~0) (= (+ main_~q~0 main_~p~0) 0))} assume !false; {4549#(and (= main_~p~0 (+ (* (- 1) main_~q~0) (* (- 1) main_~p~0) 1)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (- 1) main_~r~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-27 12:53:01,893 INFO L272 TraceCheckUtils]: 65: Hoare triple {4549#(and (= main_~p~0 (+ (* (- 1) main_~q~0) (* (- 1) main_~p~0) 1)) (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (- 1) main_~r~0) (= (+ main_~q~0 main_~p~0) 0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {4556#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:53:01,894 INFO L290 TraceCheckUtils]: 66: Hoare triple {4556#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4560#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:53:01,894 INFO L290 TraceCheckUtils]: 67: Hoare triple {4560#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4354#false} is VALID [2022-04-27 12:53:01,894 INFO L290 TraceCheckUtils]: 68: Hoare triple {4354#false} assume !false; {4354#false} is VALID [2022-04-27 12:53:01,895 INFO L134 CoverageAnalysis]: Checked inductivity of 106 backedges. 12 proven. 10 refuted. 0 times theorem prover too weak. 84 trivial. 0 not checked. [2022-04-27 12:53:01,895 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:53:02,195 INFO L290 TraceCheckUtils]: 68: Hoare triple {4354#false} assume !false; {4354#false} is VALID [2022-04-27 12:53:02,196 INFO L290 TraceCheckUtils]: 67: Hoare triple {4560#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4354#false} is VALID [2022-04-27 12:53:02,196 INFO L290 TraceCheckUtils]: 66: Hoare triple {4556#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4560#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:53:02,197 INFO L272 TraceCheckUtils]: 65: Hoare triple {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {4556#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:53:02,198 INFO L290 TraceCheckUtils]: 64: Hoare triple {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} assume !false; {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-27 12:53:02,201 INFO L290 TraceCheckUtils]: 63: Hoare triple {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-27 12:53:02,201 INFO L290 TraceCheckUtils]: 62: Hoare triple {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} assume !!(~a~0 != ~b~0); {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-27 12:53:02,202 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {4353#true} {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #78#return; {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-27 12:53:02,202 INFO L290 TraceCheckUtils]: 60: Hoare triple {4353#true} assume true; {4353#true} is VALID [2022-04-27 12:53:02,202 INFO L290 TraceCheckUtils]: 59: Hoare triple {4353#true} assume !(0 == ~cond); {4353#true} is VALID [2022-04-27 12:53:02,202 INFO L290 TraceCheckUtils]: 58: Hoare triple {4353#true} ~cond := #in~cond; {4353#true} is VALID [2022-04-27 12:53:02,202 INFO L272 TraceCheckUtils]: 57: Hoare triple {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {4353#true} is VALID [2022-04-27 12:53:02,203 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {4353#true} {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #76#return; {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-27 12:53:02,203 INFO L290 TraceCheckUtils]: 55: Hoare triple {4353#true} assume true; {4353#true} is VALID [2022-04-27 12:53:02,203 INFO L290 TraceCheckUtils]: 54: Hoare triple {4353#true} assume !(0 == ~cond); {4353#true} is VALID [2022-04-27 12:53:02,203 INFO L290 TraceCheckUtils]: 53: Hoare triple {4353#true} ~cond := #in~cond; {4353#true} is VALID [2022-04-27 12:53:02,203 INFO L272 TraceCheckUtils]: 52: Hoare triple {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4353#true} is VALID [2022-04-27 12:53:02,204 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {4353#true} {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #74#return; {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-27 12:53:02,204 INFO L290 TraceCheckUtils]: 50: Hoare triple {4353#true} assume true; {4353#true} is VALID [2022-04-27 12:53:02,204 INFO L290 TraceCheckUtils]: 49: Hoare triple {4353#true} assume !(0 == ~cond); {4353#true} is VALID [2022-04-27 12:53:02,204 INFO L290 TraceCheckUtils]: 48: Hoare triple {4353#true} ~cond := #in~cond; {4353#true} is VALID [2022-04-27 12:53:02,204 INFO L272 TraceCheckUtils]: 47: Hoare triple {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {4353#true} is VALID [2022-04-27 12:53:02,205 INFO L290 TraceCheckUtils]: 46: Hoare triple {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} assume !false; {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-27 12:53:02,207 INFO L290 TraceCheckUtils]: 45: Hoare triple {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-27 12:53:02,208 INFO L290 TraceCheckUtils]: 44: Hoare triple {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} assume !!(~a~0 != ~b~0); {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-27 12:53:02,208 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {4353#true} {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #78#return; {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-27 12:53:02,209 INFO L290 TraceCheckUtils]: 42: Hoare triple {4353#true} assume true; {4353#true} is VALID [2022-04-27 12:53:02,209 INFO L290 TraceCheckUtils]: 41: Hoare triple {4353#true} assume !(0 == ~cond); {4353#true} is VALID [2022-04-27 12:53:02,209 INFO L290 TraceCheckUtils]: 40: Hoare triple {4353#true} ~cond := #in~cond; {4353#true} is VALID [2022-04-27 12:53:02,209 INFO L272 TraceCheckUtils]: 39: Hoare triple {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {4353#true} is VALID [2022-04-27 12:53:02,209 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {4353#true} {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #76#return; {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-27 12:53:02,210 INFO L290 TraceCheckUtils]: 37: Hoare triple {4353#true} assume true; {4353#true} is VALID [2022-04-27 12:53:02,210 INFO L290 TraceCheckUtils]: 36: Hoare triple {4353#true} assume !(0 == ~cond); {4353#true} is VALID [2022-04-27 12:53:02,210 INFO L290 TraceCheckUtils]: 35: Hoare triple {4353#true} ~cond := #in~cond; {4353#true} is VALID [2022-04-27 12:53:02,210 INFO L272 TraceCheckUtils]: 34: Hoare triple {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4353#true} is VALID [2022-04-27 12:53:02,210 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {4353#true} {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #74#return; {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-27 12:53:02,211 INFO L290 TraceCheckUtils]: 32: Hoare triple {4353#true} assume true; {4353#true} is VALID [2022-04-27 12:53:02,211 INFO L290 TraceCheckUtils]: 31: Hoare triple {4353#true} assume !(0 == ~cond); {4353#true} is VALID [2022-04-27 12:53:02,211 INFO L290 TraceCheckUtils]: 30: Hoare triple {4353#true} ~cond := #in~cond; {4353#true} is VALID [2022-04-27 12:53:02,211 INFO L272 TraceCheckUtils]: 29: Hoare triple {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {4353#true} is VALID [2022-04-27 12:53:02,211 INFO L290 TraceCheckUtils]: 28: Hoare triple {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} assume !false; {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-27 12:53:02,212 INFO L290 TraceCheckUtils]: 27: Hoare triple {4353#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4576#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-27 12:53:02,212 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4353#true} {4353#true} #72#return; {4353#true} is VALID [2022-04-27 12:53:02,212 INFO L290 TraceCheckUtils]: 25: Hoare triple {4353#true} assume true; {4353#true} is VALID [2022-04-27 12:53:02,212 INFO L290 TraceCheckUtils]: 24: Hoare triple {4353#true} assume !(0 == ~cond); {4353#true} is VALID [2022-04-27 12:53:02,212 INFO L290 TraceCheckUtils]: 23: Hoare triple {4353#true} ~cond := #in~cond; {4353#true} is VALID [2022-04-27 12:53:02,212 INFO L272 TraceCheckUtils]: 22: Hoare triple {4353#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4353#true} is VALID [2022-04-27 12:53:02,212 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4353#true} {4353#true} #70#return; {4353#true} is VALID [2022-04-27 12:53:02,212 INFO L290 TraceCheckUtils]: 20: Hoare triple {4353#true} assume true; {4353#true} is VALID [2022-04-27 12:53:02,212 INFO L290 TraceCheckUtils]: 19: Hoare triple {4353#true} assume !(0 == ~cond); {4353#true} is VALID [2022-04-27 12:53:02,213 INFO L290 TraceCheckUtils]: 18: Hoare triple {4353#true} ~cond := #in~cond; {4353#true} is VALID [2022-04-27 12:53:02,213 INFO L272 TraceCheckUtils]: 17: Hoare triple {4353#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4353#true} is VALID [2022-04-27 12:53:02,213 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {4353#true} {4353#true} #68#return; {4353#true} is VALID [2022-04-27 12:53:02,213 INFO L290 TraceCheckUtils]: 15: Hoare triple {4353#true} assume true; {4353#true} is VALID [2022-04-27 12:53:02,213 INFO L290 TraceCheckUtils]: 14: Hoare triple {4353#true} assume !(0 == ~cond); {4353#true} is VALID [2022-04-27 12:53:02,213 INFO L290 TraceCheckUtils]: 13: Hoare triple {4353#true} ~cond := #in~cond; {4353#true} is VALID [2022-04-27 12:53:02,213 INFO L272 TraceCheckUtils]: 12: Hoare triple {4353#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {4353#true} is VALID [2022-04-27 12:53:02,213 INFO L290 TraceCheckUtils]: 11: Hoare triple {4353#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4353#true} is VALID [2022-04-27 12:53:02,213 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4353#true} {4353#true} #66#return; {4353#true} is VALID [2022-04-27 12:53:02,213 INFO L290 TraceCheckUtils]: 9: Hoare triple {4353#true} assume true; {4353#true} is VALID [2022-04-27 12:53:02,214 INFO L290 TraceCheckUtils]: 8: Hoare triple {4353#true} assume !(0 == ~cond); {4353#true} is VALID [2022-04-27 12:53:02,214 INFO L290 TraceCheckUtils]: 7: Hoare triple {4353#true} ~cond := #in~cond; {4353#true} is VALID [2022-04-27 12:53:02,214 INFO L272 TraceCheckUtils]: 6: Hoare triple {4353#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {4353#true} is VALID [2022-04-27 12:53:02,214 INFO L290 TraceCheckUtils]: 5: Hoare triple {4353#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {4353#true} is VALID [2022-04-27 12:53:02,214 INFO L272 TraceCheckUtils]: 4: Hoare triple {4353#true} call #t~ret6 := main(); {4353#true} is VALID [2022-04-27 12:53:02,214 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4353#true} {4353#true} #88#return; {4353#true} is VALID [2022-04-27 12:53:02,214 INFO L290 TraceCheckUtils]: 2: Hoare triple {4353#true} assume true; {4353#true} is VALID [2022-04-27 12:53:02,214 INFO L290 TraceCheckUtils]: 1: Hoare triple {4353#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(10, 2);call #Ultimate.allocInit(12, 3); {4353#true} is VALID [2022-04-27 12:53:02,214 INFO L272 TraceCheckUtils]: 0: Hoare triple {4353#true} call ULTIMATE.init(); {4353#true} is VALID [2022-04-27 12:53:02,215 INFO L134 CoverageAnalysis]: Checked inductivity of 106 backedges. 12 proven. 0 refuted. 0 times theorem prover too weak. 94 trivial. 0 not checked. [2022-04-27 12:53:02,215 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:53:02,215 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [31390960] [2022-04-27 12:53:02,215 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:53:02,215 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [824052206] [2022-04-27 12:53:02,215 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [824052206] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-27 12:53:02,215 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-27 12:53:02,215 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [7] total 8 [2022-04-27 12:53:02,215 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1577871548] [2022-04-27 12:53:02,216 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:53:02,216 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 69 [2022-04-27 12:53:02,216 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:53:02,217 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-27 12:53:02,250 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:53:02,250 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 12:53:02,250 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:53:02,250 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 12:53:02,250 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=40, Unknown=0, NotChecked=0, Total=56 [2022-04-27 12:53:02,251 INFO L87 Difference]: Start difference. First operand 88 states and 102 transitions. Second operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-27 12:53:02,413 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:53:02,413 INFO L93 Difference]: Finished difference Result 88 states and 102 transitions. [2022-04-27 12:53:02,413 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 12:53:02,413 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 69 [2022-04-27 12:53:02,414 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:53:02,414 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-27 12:53:02,416 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 43 transitions. [2022-04-27 12:53:02,416 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-27 12:53:02,417 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 43 transitions. [2022-04-27 12:53:02,417 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 43 transitions. [2022-04-27 12:53:02,459 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-27 12:53:02,460 INFO L225 Difference]: With dead ends: 88 [2022-04-27 12:53:02,460 INFO L226 Difference]: Without dead ends: 0 [2022-04-27 12:53:02,460 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 138 GetRequests, 128 SyntacticMatches, 3 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=20, Invalid=52, Unknown=0, NotChecked=0, Total=72 [2022-04-27 12:53:02,461 INFO L413 NwaCegarLoop]: 33 mSDtfsCounter, 6 mSDsluCounter, 75 mSDsCounter, 0 mSdLazyCounter, 31 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 108 SdHoareTripleChecker+Invalid, 32 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 31 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 12:53:02,461 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [8 Valid, 108 Invalid, 32 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 31 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 12:53:02,462 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-27 12:53:02,462 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-27 12:53:02,462 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:53:02,462 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-27 12:53:02,462 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-27 12:53:02,462 INFO L87 Difference]: Start difference. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-27 12:53:02,462 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:53:02,462 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-27 12:53:02,462 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-27 12:53:02,462 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:53:02,462 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:53:02,462 INFO L74 IsIncluded]: Start isIncluded. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-27 12:53:02,462 INFO L87 Difference]: Start difference. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-27 12:53:02,462 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:53:02,463 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-27 12:53:02,463 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-27 12:53:02,463 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:53:02,463 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:53:02,463 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:53:02,463 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:53:02,463 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-27 12:53:02,463 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-27 12:53:02,463 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 69 [2022-04-27 12:53:02,463 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:53:02,463 INFO L495 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-27 12:53:02,463 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-27 12:53:02,463 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-27 12:53:02,464 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:53:02,466 INFO L805 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-27 12:53:02,493 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-27 12:53:02,675 WARN L477 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-27 12:53:02,677 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-04-27 12:53:04,062 INFO L899 garLoopResultBuilder]: For program point reach_errorEXIT(line 4) no Hoare annotation was computed. [2022-04-27 12:53:04,062 INFO L899 garLoopResultBuilder]: For program point reach_errorENTRY(line 4) no Hoare annotation was computed. [2022-04-27 12:53:04,062 INFO L899 garLoopResultBuilder]: For program point reach_errorFINAL(line 4) no Hoare annotation was computed. [2022-04-27 12:53:04,062 INFO L902 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 7 9) the Hoare annotation is: true [2022-04-27 12:53:04,062 INFO L899 garLoopResultBuilder]: For program point L8(line 8) no Hoare annotation was computed. [2022-04-27 12:53:04,062 INFO L899 garLoopResultBuilder]: For program point L8-2(lines 7 9) no Hoare annotation was computed. [2022-04-27 12:53:04,063 INFO L899 garLoopResultBuilder]: For program point assume_abort_if_notEXIT(lines 7 9) no Hoare annotation was computed. [2022-04-27 12:53:04,063 INFO L895 garLoopResultBuilder]: At program point L35-2(lines 35 52) the Hoare annotation is: (let ((.cse0 (* main_~y~0 main_~r~0)) (.cse1 (* main_~p~0 main_~x~0))) (let ((.cse2 (+ .cse0 .cse1))) (and (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ .cse0 main_~b~0 .cse1)) (= main_~b~0 .cse2) (= main_~a~0 .cse2) (= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))))) [2022-04-27 12:53:04,063 INFO L902 garLoopResultBuilder]: At program point L25(line 25) the Hoare annotation is: true [2022-04-27 12:53:04,063 INFO L899 garLoopResultBuilder]: For program point mainEXIT(lines 18 59) no Hoare annotation was computed. [2022-04-27 12:53:04,063 INFO L895 garLoopResultBuilder]: At program point L56(line 56) the Hoare annotation is: (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) [2022-04-27 12:53:04,063 INFO L895 garLoopResultBuilder]: At program point L54(line 54) the Hoare annotation is: (let ((.cse0 (* main_~y~0 main_~r~0)) (.cse1 (* main_~p~0 main_~x~0))) (let ((.cse2 (+ .cse0 .cse1))) (and (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ .cse0 main_~b~0 .cse1)) (= main_~b~0 .cse2) (= main_~a~0 .cse2) (= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))))) [2022-04-27 12:53:04,063 INFO L899 garLoopResultBuilder]: For program point mainFINAL(lines 18 59) no Hoare annotation was computed. [2022-04-27 12:53:04,063 INFO L899 garLoopResultBuilder]: For program point L38(lines 35 52) no Hoare annotation was computed. [2022-04-27 12:53:04,064 INFO L895 garLoopResultBuilder]: At program point L36(line 36) the Hoare annotation is: (let ((.cse0 (* main_~y~0 main_~r~0)) (.cse1 (* main_~p~0 main_~x~0))) (and (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ .cse0 main_~b~0 .cse1)) (= main_~a~0 (+ .cse0 .cse1)) (= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1)))) [2022-04-27 12:53:04,064 INFO L895 garLoopResultBuilder]: At program point L36-1(line 36) the Hoare annotation is: (let ((.cse0 (* main_~y~0 main_~r~0)) (.cse1 (* main_~p~0 main_~x~0))) (and (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ .cse0 main_~b~0 .cse1)) (= main_~a~0 (+ .cse0 .cse1)) (= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1)))) [2022-04-27 12:53:04,064 INFO L902 garLoopResultBuilder]: At program point mainENTRY(lines 18 59) the Hoare annotation is: true [2022-04-27 12:53:04,064 INFO L899 garLoopResultBuilder]: For program point L26(line 26) no Hoare annotation was computed. [2022-04-27 12:53:04,064 INFO L899 garLoopResultBuilder]: For program point L57(line 57) no Hoare annotation was computed. [2022-04-27 12:53:04,064 INFO L902 garLoopResultBuilder]: At program point L24(line 24) the Hoare annotation is: true [2022-04-27 12:53:04,064 INFO L902 garLoopResultBuilder]: At program point L24-1(line 24) the Hoare annotation is: true [2022-04-27 12:53:04,064 INFO L895 garLoopResultBuilder]: At program point L55(line 55) the Hoare annotation is: (let ((.cse3 (* main_~q~0 main_~x~0)) (.cse4 (* main_~y~0 main_~s~0))) (let ((.cse0 (= main_~b~0 (+ .cse3 .cse4))) (.cse1 (= main_~s~0 1)) (.cse2 (= main_~p~0 1))) (or (and (= main_~b~0 main_~a~0) .cse0 .cse1 (= main_~q~0 0) .cse2) (let ((.cse5 (* main_~y~0 main_~r~0)) (.cse6 (* main_~p~0 main_~x~0))) (let ((.cse7 (+ .cse5 .cse6))) (and (= (+ .cse3 main_~a~0 .cse4) (+ .cse5 main_~b~0 .cse6)) (= main_~b~0 .cse7) (= main_~a~0 .cse7) (= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))))) (and (= main_~r~0 0) .cse0 .cse1 (= main_~a~0 main_~x~0) .cse2)))) [2022-04-27 12:53:04,064 INFO L902 garLoopResultBuilder]: At program point L22(line 22) the Hoare annotation is: true [2022-04-27 12:53:04,064 INFO L899 garLoopResultBuilder]: For program point L22-1(line 22) no Hoare annotation was computed. [2022-04-27 12:53:04,064 INFO L899 garLoopResultBuilder]: For program point L43(lines 43 51) no Hoare annotation was computed. [2022-04-27 12:53:04,065 INFO L895 garLoopResultBuilder]: At program point L43-2(lines 35 52) the Hoare annotation is: (let ((.cse0 (* main_~y~0 main_~r~0)) (.cse1 (* main_~p~0 main_~x~0))) (and (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ .cse0 main_~b~0 .cse1)) (= main_~a~0 (+ .cse0 .cse1)) (= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1)))) [2022-04-27 12:53:04,065 INFO L895 garLoopResultBuilder]: At program point L37(line 37) the Hoare annotation is: (let ((.cse0 (* main_~y~0 main_~r~0)) (.cse1 (* main_~p~0 main_~x~0))) (and (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ .cse0 main_~b~0 .cse1)) (= main_~a~0 (+ .cse0 .cse1)) (= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1)))) [2022-04-27 12:53:04,065 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.initFINAL(line -1) no Hoare annotation was computed. [2022-04-27 12:53:04,065 INFO L895 garLoopResultBuilder]: At program point ULTIMATE.initENTRY(line -1) the Hoare annotation is: (and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|)) [2022-04-27 12:53:04,065 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.initEXIT(line -1) no Hoare annotation was computed. [2022-04-27 12:53:04,065 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.startEXIT(line -1) no Hoare annotation was computed. [2022-04-27 12:53:04,065 INFO L902 garLoopResultBuilder]: At program point L-1(line -1) the Hoare annotation is: true [2022-04-27 12:53:04,065 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2022-04-27 12:53:04,065 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.startFINAL(line -1) no Hoare annotation was computed. [2022-04-27 12:53:04,065 INFO L902 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 10 16) the Hoare annotation is: true [2022-04-27 12:53:04,065 INFO L899 garLoopResultBuilder]: For program point L12(lines 12 13) no Hoare annotation was computed. [2022-04-27 12:53:04,065 INFO L899 garLoopResultBuilder]: For program point L11(lines 11 14) no Hoare annotation was computed. [2022-04-27 12:53:04,066 INFO L899 garLoopResultBuilder]: For program point __VERIFIER_assertEXIT(lines 10 16) no Hoare annotation was computed. [2022-04-27 12:53:04,066 INFO L899 garLoopResultBuilder]: For program point L11-2(lines 10 16) no Hoare annotation was computed. [2022-04-27 12:53:04,066 INFO L899 garLoopResultBuilder]: For program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 13) no Hoare annotation was computed. [2022-04-27 12:53:04,068 INFO L356 BasicCegarLoop]: Path program histogram: [2, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:53:04,070 INFO L176 ceAbstractionStarter]: Computing trace abstraction results [2022-04-27 12:53:04,073 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-27 12:53:04,073 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-27 12:53:04,074 WARN L170 areAnnotationChecker]: L8 has no Hoare annotation [2022-04-27 12:53:04,074 WARN L170 areAnnotationChecker]: L11 has no Hoare annotation [2022-04-27 12:53:04,074 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-27 12:53:04,074 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-27 12:53:04,074 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-27 12:53:04,074 WARN L170 areAnnotationChecker]: L8 has no Hoare annotation [2022-04-27 12:53:04,074 WARN L170 areAnnotationChecker]: L8 has no Hoare annotation [2022-04-27 12:53:04,074 WARN L170 areAnnotationChecker]: L22-1 has no Hoare annotation [2022-04-27 12:53:04,074 WARN L170 areAnnotationChecker]: L11 has no Hoare annotation [2022-04-27 12:53:04,074 WARN L170 areAnnotationChecker]: L11 has no Hoare annotation [2022-04-27 12:53:04,074 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-27 12:53:04,074 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-27 12:53:04,074 WARN L170 areAnnotationChecker]: L8-2 has no Hoare annotation [2022-04-27 12:53:04,074 WARN L170 areAnnotationChecker]: L22-1 has no Hoare annotation [2022-04-27 12:53:04,074 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-27 12:53:04,074 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-27 12:53:04,075 WARN L170 areAnnotationChecker]: L11-2 has no Hoare annotation [2022-04-27 12:53:04,075 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-27 12:53:04,075 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-27 12:53:04,075 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-27 12:53:04,075 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-27 12:53:04,075 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:53:04,075 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:53:04,075 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:53:04,075 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:53:04,075 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:53:04,075 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:53:04,075 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:53:04,075 WARN L170 areAnnotationChecker]: L26 has no Hoare annotation [2022-04-27 12:53:04,075 WARN L170 areAnnotationChecker]: L26 has no Hoare annotation [2022-04-27 12:53:04,075 WARN L170 areAnnotationChecker]: L38 has no Hoare annotation [2022-04-27 12:53:04,075 WARN L170 areAnnotationChecker]: L38 has no Hoare annotation [2022-04-27 12:53:04,075 WARN L170 areAnnotationChecker]: L38 has no Hoare annotation [2022-04-27 12:53:04,075 WARN L170 areAnnotationChecker]: L57 has no Hoare annotation [2022-04-27 12:53:04,076 WARN L170 areAnnotationChecker]: L57 has no Hoare annotation [2022-04-27 12:53:04,077 WARN L170 areAnnotationChecker]: L43 has no Hoare annotation [2022-04-27 12:53:04,077 WARN L170 areAnnotationChecker]: L43 has no Hoare annotation [2022-04-27 12:53:04,077 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-27 12:53:04,077 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-27 12:53:04,077 INFO L163 areAnnotationChecker]: CFG has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-27 12:53:04,084 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 27.04 12:53:04 BoogieIcfgContainer [2022-04-27 12:53:04,085 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-27 12:53:04,086 INFO L158 Benchmark]: Toolchain (without parser) took 40202.06ms. Allocated memory was 169.9MB in the beginning and 204.5MB in the end (delta: 34.6MB). Free memory was 118.6MB in the beginning and 68.4MB in the end (delta: 50.2MB). Peak memory consumption was 84.6MB. Max. memory is 8.0GB. [2022-04-27 12:53:04,086 INFO L158 Benchmark]: CDTParser took 0.32ms. Allocated memory is still 169.9MB. Free memory is still 134.6MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-27 12:53:04,086 INFO L158 Benchmark]: CACSL2BoogieTranslator took 287.25ms. Allocated memory is still 169.9MB. Free memory was 118.4MB in the beginning and 143.0MB in the end (delta: -24.6MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-27 12:53:04,086 INFO L158 Benchmark]: Boogie Preprocessor took 25.83ms. Allocated memory is still 169.9MB. Free memory was 143.0MB in the beginning and 141.4MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-27 12:53:04,087 INFO L158 Benchmark]: RCFGBuilder took 363.70ms. Allocated memory is still 169.9MB. Free memory was 141.4MB in the beginning and 129.4MB in the end (delta: 12.1MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-27 12:53:04,087 INFO L158 Benchmark]: TraceAbstraction took 39518.95ms. Allocated memory was 169.9MB in the beginning and 204.5MB in the end (delta: 34.6MB). Free memory was 128.9MB in the beginning and 68.4MB in the end (delta: 60.5MB). Peak memory consumption was 95.6MB. Max. memory is 8.0GB. [2022-04-27 12:53:04,088 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.32ms. Allocated memory is still 169.9MB. Free memory is still 134.6MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 287.25ms. Allocated memory is still 169.9MB. Free memory was 118.4MB in the beginning and 143.0MB in the end (delta: -24.6MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * Boogie Preprocessor took 25.83ms. Allocated memory is still 169.9MB. Free memory was 143.0MB in the beginning and 141.4MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 363.70ms. Allocated memory is still 169.9MB. Free memory was 141.4MB in the beginning and 129.4MB in the end (delta: 12.1MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * TraceAbstraction took 39518.95ms. Allocated memory was 169.9MB in the beginning and 204.5MB in the end (delta: 34.6MB). Free memory was 128.9MB in the beginning and 68.4MB in the end (delta: 60.5MB). Peak memory consumption was 95.6MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - PositiveResult [Line: 13]: call to reach_error is unreachable For all program executions holds that call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data CFG has 6 procedures, 40 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 39.4s, OverallIterations: 9, TraceHistogramMax: 7, PathProgramHistogramMax: 2, EmptinessCheckTime: 0.0s, AutomataDifference: 6.1s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 1.4s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 117 SdHoareTripleChecker+Valid, 0.9s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 83 mSDsluCounter, 1139 SdHoareTripleChecker+Invalid, 0.9s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 782 mSDsCounter, 67 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 538 IncrementalHoareTripleChecker+Invalid, 605 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 67 mSolverCounterUnsat, 357 mSDtfsCounter, 538 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 635 GetRequests, 576 SyntacticMatches, 7 SemanticMatches, 52 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 21 ImplicationChecksByTransitivity, 0.4s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=88occurred in iteration=8, InterpolantAutomatonStates: 48, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.3s AutomataMinimizationTime, 9 MinimizatonAttempts, 19 StatesRemovedByMinimization, 4 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 18 LocationsWithAnnotation, 57 PreInvPairs, 92 NumberOfFragments, 349 HoareAnnotationTreeSize, 57 FomulaSimplifications, 136 FormulaSimplificationTreeSizeReduction, 0.1s HoareSimplificationTime, 18 FomulaSimplificationsInter, 1691 FormulaSimplificationTreeSizeReductionInter, 1.3s HoareSimplificationTimeInter, RefinementEngineStatistics: TRACE_CHECK: 0.1s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 28.8s InterpolantComputationTime, 426 NumberOfCodeBlocks, 426 NumberOfCodeBlocksAsserted, 10 NumberOfCheckSat, 635 ConstructedInterpolants, 0 QuantifiedInterpolants, 1676 SizeOfPredicates, 16 NumberOfNonLiveVariables, 1087 ConjunctsInSsa, 105 ConjunctsInUnsatCore, 13 InterpolantComputations, 7 PerfectInterpolantSequences, 627/666 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold - InvariantResult [Line: 35]: Loop Invariant Derived loop invariant: (q * x + a + y * s == y * r + b + p * x && a == y * r + p * x) && p * s == q * r + 1 RESULT: Ultimate proved your program to be correct! [2022-04-27 12:53:04,108 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Ended with exit code 0 Received shutdown request...