/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/cohendiv-ll_unwindbound20.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-27 12:15:48,864 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-27 12:15:48,866 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-27 12:15:48,900 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-27 12:15:48,900 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-27 12:15:48,901 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-27 12:15:48,903 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-27 12:15:48,905 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-27 12:15:48,906 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-27 12:15:48,909 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-27 12:15:48,910 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-27 12:15:48,911 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-27 12:15:48,911 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-27 12:15:48,912 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-27 12:15:48,913 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-27 12:15:48,915 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-27 12:15:48,915 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-27 12:15:48,916 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-27 12:15:48,917 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-27 12:15:48,921 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-27 12:15:48,922 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-27 12:15:48,923 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-27 12:15:48,923 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-27 12:15:48,924 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-27 12:15:48,925 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-27 12:15:48,929 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-27 12:15:48,930 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-27 12:15:48,930 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-27 12:15:48,930 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-27 12:15:48,930 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-27 12:15:48,931 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-27 12:15:48,931 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-27 12:15:48,932 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-27 12:15:48,933 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-27 12:15:48,933 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-27 12:15:48,933 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-27 12:15:48,934 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-27 12:15:48,934 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-27 12:15:48,934 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-27 12:15:48,934 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-27 12:15:48,935 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-27 12:15:48,936 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-27 12:15:48,936 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:15:48,956 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-27 12:15:48,956 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-27 12:15:48,956 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-04-27 12:15:48,956 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-04-27 12:15:48,957 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-27 12:15:48,957 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-27 12:15:48,957 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-27 12:15:48,957 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-27 12:15:48,957 INFO L138 SettingsManager]: * Use SBE=true [2022-04-27 12:15:48,958 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-27 12:15:48,958 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-27 12:15:48,958 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-27 12:15:48,958 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-27 12:15:48,958 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-27 12:15:48,958 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-27 12:15:48,958 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-27 12:15:48,958 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-27 12:15:48,958 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-27 12:15:48,958 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-27 12:15:48,958 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-27 12:15:48,959 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-27 12:15:48,959 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-27 12:15:48,959 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-27 12:15:48,959 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-27 12:15:48,959 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 12:15:48,959 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-27 12:15:48,959 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-27 12:15:48,959 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-27 12:15:48,959 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-27 12:15:48,959 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-27 12:15:48,960 INFO L138 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2022-04-27 12:15:48,960 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-04-27 12:15:48,960 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-27 12:15:48,960 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:15:49,095 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-27 12:15:49,112 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-27 12:15:49,114 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-27 12:15:49,114 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-27 12:15:49,115 INFO L275 PluginConnector]: CDTParser initialized [2022-04-27 12:15:49,115 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_unwindbound20.c [2022-04-27 12:15:49,150 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/93838e622/e896e13dbc0a433c9018f1ca830502d4/FLAG6c59a77dd [2022-04-27 12:15:49,491 INFO L306 CDTParser]: Found 1 translation units. [2022-04-27 12:15:49,492 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_unwindbound20.c [2022-04-27 12:15:49,495 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/93838e622/e896e13dbc0a433c9018f1ca830502d4/FLAG6c59a77dd [2022-04-27 12:15:49,939 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/93838e622/e896e13dbc0a433c9018f1ca830502d4 [2022-04-27 12:15:49,941 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-27 12:15:49,942 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-27 12:15:49,943 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-27 12:15:49,943 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-27 12:15:49,946 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-27 12:15:49,946 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 12:15:49" (1/1) ... [2022-04-27 12:15:49,947 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@57bf7995 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:15:49, skipping insertion in model container [2022-04-27 12:15:49,947 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 12:15:49" (1/1) ... [2022-04-27 12:15:49,951 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-27 12:15:49,961 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-27 12:15:50,078 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/cohendiv-ll_unwindbound20.c[576,589] [2022-04-27 12:15:50,090 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 12:15:50,100 INFO L203 MainTranslator]: Completed pre-run [2022-04-27 12:15:50,111 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/cohendiv-ll_unwindbound20.c[576,589] [2022-04-27 12:15:50,117 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 12:15:50,125 INFO L208 MainTranslator]: Completed translation [2022-04-27 12:15:50,126 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:15:50 WrapperNode [2022-04-27 12:15:50,126 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-27 12:15:50,126 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-27 12:15:50,126 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-27 12:15:50,126 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-27 12:15:50,133 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:15:50" (1/1) ... [2022-04-27 12:15:50,133 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:15:50" (1/1) ... [2022-04-27 12:15:50,137 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:15:50" (1/1) ... [2022-04-27 12:15:50,138 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:15:50" (1/1) ... [2022-04-27 12:15:50,141 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:15:50" (1/1) ... [2022-04-27 12:15:50,146 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:15:50" (1/1) ... [2022-04-27 12:15:50,150 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:15:50" (1/1) ... [2022-04-27 12:15:50,151 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-27 12:15:50,151 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-27 12:15:50,151 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-27 12:15:50,151 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-27 12:15:50,154 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:15:50" (1/1) ... [2022-04-27 12:15:50,158 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 12:15:50,164 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:15:50,172 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:15:50,196 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-27 12:15:50,196 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-27 12:15:50,196 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-27 12:15:50,196 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-27 12:15:50,196 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-27 12:15:50,196 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-27 12:15:50,196 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-27 12:15:50,196 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-27 12:15:50,196 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-27 12:15:50,196 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-27 12:15:50,196 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-27 12:15:50,197 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-27 12:15:50,197 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-27 12:15:50,197 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-27 12:15:50,197 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-27 12:15:50,197 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-27 12:15:50,197 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-27 12:15:50,197 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-27 12:15:50,197 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-27 12:15:50,197 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-27 12:15:50,202 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:15:50,240 INFO L234 CfgBuilder]: Building ICFG [2022-04-27 12:15:50,241 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-27 12:15:50,359 INFO L275 CfgBuilder]: Performing block encoding [2022-04-27 12:15:50,364 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-27 12:15:50,364 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-27 12:15:50,365 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 12:15:50 BoogieIcfgContainer [2022-04-27 12:15:50,365 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-27 12:15:50,366 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-27 12:15:50,366 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-27 12:15:50,368 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-27 12:15:50,368 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.04 12:15:49" (1/3) ... [2022-04-27 12:15:50,369 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1b071688 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 12:15:50, skipping insertion in model container [2022-04-27 12:15:50,369 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:15:50" (2/3) ... [2022-04-27 12:15:50,369 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1b071688 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 12:15:50, skipping insertion in model container [2022-04-27 12:15:50,369 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 12:15:50" (3/3) ... [2022-04-27 12:15:50,370 INFO L111 eAbstractionObserver]: Analyzing ICFG cohendiv-ll_unwindbound20.c [2022-04-27 12:15:50,378 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-27 12:15:50,378 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-27 12:15:50,408 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-27 12:15:50,412 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@33c3af5c, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@79dc940 [2022-04-27 12:15:50,412 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-27 12:15:50,417 INFO L276 IsEmpty]: Start isEmpty. Operand has 38 states, 22 states have (on average 1.4090909090909092) internal successors, (31), 23 states have internal predecessors, (31), 10 states have call successors, (10), 4 states have call predecessors, (10), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:15:50,421 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-27 12:15:50,421 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:15:50,422 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:15:50,422 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:15:50,425 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:15:50,425 INFO L85 PathProgramCache]: Analyzing trace with hash -1588022502, now seen corresponding path program 1 times [2022-04-27 12:15:50,431 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:15:50,431 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [110280384] [2022-04-27 12:15:50,431 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:15:50,432 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:15:50,491 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:15:50,528 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 12:15:50,532 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:15:50,542 INFO L290 TraceCheckUtils]: 0: Hoare triple {50#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {41#true} is VALID [2022-04-27 12:15:50,543 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume true; {41#true} is VALID [2022-04-27 12:15:50,543 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {41#true} {41#true} #93#return; {41#true} is VALID [2022-04-27 12:15:50,543 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-27 12:15:50,545 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:15:50,555 INFO L290 TraceCheckUtils]: 0: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-27 12:15:50,555 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-27 12:15:50,556 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-27 12:15:50,556 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#false} {41#true} #77#return; {42#false} is VALID [2022-04-27 12:15:50,557 INFO L272 TraceCheckUtils]: 0: Hoare triple {41#true} call ULTIMATE.init(); {50#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 12:15:50,557 INFO L290 TraceCheckUtils]: 1: Hoare triple {50#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {41#true} is VALID [2022-04-27 12:15:50,557 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#true} assume true; {41#true} is VALID [2022-04-27 12:15:50,557 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#true} {41#true} #93#return; {41#true} is VALID [2022-04-27 12:15:50,557 INFO L272 TraceCheckUtils]: 4: Hoare triple {41#true} call #t~ret8 := main(); {41#true} is VALID [2022-04-27 12:15:50,557 INFO L290 TraceCheckUtils]: 5: Hoare triple {41#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {41#true} is VALID [2022-04-27 12:15:50,558 INFO L272 TraceCheckUtils]: 6: Hoare triple {41#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {41#true} is VALID [2022-04-27 12:15:50,558 INFO L290 TraceCheckUtils]: 7: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-27 12:15:50,558 INFO L290 TraceCheckUtils]: 8: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-27 12:15:50,558 INFO L290 TraceCheckUtils]: 9: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-27 12:15:50,558 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {42#false} {41#true} #77#return; {42#false} is VALID [2022-04-27 12:15:50,559 INFO L290 TraceCheckUtils]: 11: Hoare triple {42#false} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {42#false} is VALID [2022-04-27 12:15:50,559 INFO L290 TraceCheckUtils]: 12: Hoare triple {42#false} assume !true; {42#false} is VALID [2022-04-27 12:15:50,559 INFO L272 TraceCheckUtils]: 13: Hoare triple {42#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {42#false} is VALID [2022-04-27 12:15:50,559 INFO L290 TraceCheckUtils]: 14: Hoare triple {42#false} ~cond := #in~cond; {42#false} is VALID [2022-04-27 12:15:50,559 INFO L290 TraceCheckUtils]: 15: Hoare triple {42#false} assume 0 == ~cond; {42#false} is VALID [2022-04-27 12:15:50,559 INFO L290 TraceCheckUtils]: 16: Hoare triple {42#false} assume !false; {42#false} is VALID [2022-04-27 12:15:50,560 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 12:15:50,560 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:15:50,560 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [110280384] [2022-04-27 12:15:50,561 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [110280384] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:15:50,561 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:15:50,561 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-27 12:15:50,562 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2068976398] [2022-04-27 12:15:50,562 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:15:50,566 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-27 12:15:50,566 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:15:50,568 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 12:15:50,599 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:15:50,599 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-27 12:15:50,600 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:15:50,626 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-27 12:15:50,627 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-27 12:15:50,628 INFO L87 Difference]: Start difference. First operand has 38 states, 22 states have (on average 1.4090909090909092) internal successors, (31), 23 states have internal predecessors, (31), 10 states have call successors, (10), 4 states have call predecessors, (10), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 12:15:50,808 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:15:50,809 INFO L93 Difference]: Finished difference Result 68 states and 101 transitions. [2022-04-27 12:15:50,809 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-27 12:15:50,809 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-27 12:15:50,809 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:15:50,810 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 12:15:50,822 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 101 transitions. [2022-04-27 12:15:50,822 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 12:15:50,835 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 101 transitions. [2022-04-27 12:15:50,836 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 101 transitions. [2022-04-27 12:15:50,947 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 101 edges. 101 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:15:50,955 INFO L225 Difference]: With dead ends: 68 [2022-04-27 12:15:50,955 INFO L226 Difference]: Without dead ends: 34 [2022-04-27 12:15:50,957 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-27 12:15:50,959 INFO L413 NwaCegarLoop]: 45 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 24 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 49 SdHoareTripleChecker+Invalid, 33 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 24 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 12:15:50,960 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [11 Valid, 49 Invalid, 33 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 24 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 12:15:50,970 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-27 12:15:50,979 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 33. [2022-04-27 12:15:50,979 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:15:50,980 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand has 33 states, 19 states have (on average 1.263157894736842) internal successors, (24), 20 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-27 12:15:50,980 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand has 33 states, 19 states have (on average 1.263157894736842) internal successors, (24), 20 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-27 12:15:50,980 INFO L87 Difference]: Start difference. First operand 34 states. Second operand has 33 states, 19 states have (on average 1.263157894736842) internal successors, (24), 20 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-27 12:15:50,983 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:15:50,983 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-27 12:15:50,984 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-27 12:15:50,984 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:15:50,984 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:15:50,985 INFO L74 IsIncluded]: Start isIncluded. First operand has 33 states, 19 states have (on average 1.263157894736842) internal successors, (24), 20 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 34 states. [2022-04-27 12:15:50,985 INFO L87 Difference]: Start difference. First operand has 33 states, 19 states have (on average 1.263157894736842) internal successors, (24), 20 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 34 states. [2022-04-27 12:15:50,987 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:15:50,987 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-27 12:15:50,987 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-27 12:15:50,990 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:15:50,990 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:15:50,990 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:15:50,991 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:15:50,991 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 19 states have (on average 1.263157894736842) internal successors, (24), 20 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-27 12:15:50,993 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 42 transitions. [2022-04-27 12:15:50,994 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 42 transitions. Word has length 17 [2022-04-27 12:15:50,994 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:15:50,994 INFO L495 AbstractCegarLoop]: Abstraction has 33 states and 42 transitions. [2022-04-27 12:15:50,994 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 12:15:50,994 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 42 transitions. [2022-04-27 12:15:50,995 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-27 12:15:50,995 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:15:50,995 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:15:50,995 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-27 12:15:50,995 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:15:50,996 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:15:50,996 INFO L85 PathProgramCache]: Analyzing trace with hash 766070672, now seen corresponding path program 1 times [2022-04-27 12:15:50,996 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:15:50,996 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [452343188] [2022-04-27 12:15:50,996 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:15:50,996 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:15:51,031 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:15:51,031 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1897882831] [2022-04-27 12:15:51,031 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:15:51,032 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:15:51,032 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:15:51,037 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:15:51,038 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:15:51,079 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:15:51,080 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-27 12:15:51,087 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:15:51,090 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:15:51,233 INFO L272 TraceCheckUtils]: 0: Hoare triple {265#true} call ULTIMATE.init(); {265#true} is VALID [2022-04-27 12:15:51,235 INFO L290 TraceCheckUtils]: 1: Hoare triple {265#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(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {273#(<= ~counter~0 0)} is VALID [2022-04-27 12:15:51,236 INFO L290 TraceCheckUtils]: 2: Hoare triple {273#(<= ~counter~0 0)} assume true; {273#(<= ~counter~0 0)} is VALID [2022-04-27 12:15:51,236 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {273#(<= ~counter~0 0)} {265#true} #93#return; {273#(<= ~counter~0 0)} is VALID [2022-04-27 12:15:51,237 INFO L272 TraceCheckUtils]: 4: Hoare triple {273#(<= ~counter~0 0)} call #t~ret8 := main(); {273#(<= ~counter~0 0)} is VALID [2022-04-27 12:15:51,237 INFO L290 TraceCheckUtils]: 5: Hoare triple {273#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {273#(<= ~counter~0 0)} is VALID [2022-04-27 12:15:51,237 INFO L272 TraceCheckUtils]: 6: Hoare triple {273#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {273#(<= ~counter~0 0)} is VALID [2022-04-27 12:15:51,238 INFO L290 TraceCheckUtils]: 7: Hoare triple {273#(<= ~counter~0 0)} ~cond := #in~cond; {273#(<= ~counter~0 0)} is VALID [2022-04-27 12:15:51,238 INFO L290 TraceCheckUtils]: 8: Hoare triple {273#(<= ~counter~0 0)} assume !(0 == ~cond); {273#(<= ~counter~0 0)} is VALID [2022-04-27 12:15:51,239 INFO L290 TraceCheckUtils]: 9: Hoare triple {273#(<= ~counter~0 0)} assume true; {273#(<= ~counter~0 0)} is VALID [2022-04-27 12:15:51,239 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {273#(<= ~counter~0 0)} {273#(<= ~counter~0 0)} #77#return; {273#(<= ~counter~0 0)} is VALID [2022-04-27 12:15:51,240 INFO L290 TraceCheckUtils]: 11: Hoare triple {273#(<= ~counter~0 0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {273#(<= ~counter~0 0)} is VALID [2022-04-27 12:15:51,240 INFO L290 TraceCheckUtils]: 12: Hoare triple {273#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {307#(<= |main_#t~post6| 0)} is VALID [2022-04-27 12:15:51,241 INFO L290 TraceCheckUtils]: 13: Hoare triple {307#(<= |main_#t~post6| 0)} assume !(#t~post6 < 20);havoc #t~post6; {266#false} is VALID [2022-04-27 12:15:51,241 INFO L272 TraceCheckUtils]: 14: Hoare triple {266#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {266#false} is VALID [2022-04-27 12:15:51,241 INFO L290 TraceCheckUtils]: 15: Hoare triple {266#false} ~cond := #in~cond; {266#false} is VALID [2022-04-27 12:15:51,241 INFO L290 TraceCheckUtils]: 16: Hoare triple {266#false} assume 0 == ~cond; {266#false} is VALID [2022-04-27 12:15:51,241 INFO L290 TraceCheckUtils]: 17: Hoare triple {266#false} assume !false; {266#false} is VALID [2022-04-27 12:15:51,241 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 12:15:51,242 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 12:15:51,242 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:15:51,242 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [452343188] [2022-04-27 12:15:51,242 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:15:51,242 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1897882831] [2022-04-27 12:15:51,242 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1897882831] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:15:51,242 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:15:51,243 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-27 12:15:51,247 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [559486756] [2022-04-27 12:15:51,247 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:15:51,248 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-04-27 12:15:51,248 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:15:51,248 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-27 12:15:51,259 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:15:51,260 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-27 12:15:51,260 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:15:51,261 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-27 12:15:51,261 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-27 12:15:51,261 INFO L87 Difference]: Start difference. First operand 33 states and 42 transitions. Second operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-27 12:15:51,325 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:15:51,326 INFO L93 Difference]: Finished difference Result 42 states and 51 transitions. [2022-04-27 12:15:51,326 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-27 12:15:51,326 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-04-27 12:15:51,326 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:15:51,326 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-27 12:15:51,328 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 51 transitions. [2022-04-27 12:15:51,328 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-27 12:15:51,329 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 51 transitions. [2022-04-27 12:15:51,329 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 51 transitions. [2022-04-27 12:15:51,359 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:15:51,360 INFO L225 Difference]: With dead ends: 42 [2022-04-27 12:15:51,360 INFO L226 Difference]: Without dead ends: 35 [2022-04-27 12:15:51,361 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-27 12:15:51,362 INFO L413 NwaCegarLoop]: 40 mSDtfsCounter, 0 mSDsluCounter, 67 mSDsCounter, 0 mSdLazyCounter, 8 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 107 SdHoareTripleChecker+Invalid, 8 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 8 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 12:15:51,362 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 107 Invalid, 8 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 8 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 12:15:51,363 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-27 12:15:51,371 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 35. [2022-04-27 12:15:51,371 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:15:51,371 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand has 35 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-27 12:15:51,372 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand has 35 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-27 12:15:51,372 INFO L87 Difference]: Start difference. First operand 35 states. Second operand has 35 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-27 12:15:51,374 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:15:51,374 INFO L93 Difference]: Finished difference Result 35 states and 44 transitions. [2022-04-27 12:15:51,374 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-27 12:15:51,374 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:15:51,375 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:15:51,375 INFO L74 IsIncluded]: Start isIncluded. First operand has 35 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 35 states. [2022-04-27 12:15:51,375 INFO L87 Difference]: Start difference. First operand has 35 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 35 states. [2022-04-27 12:15:51,377 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:15:51,377 INFO L93 Difference]: Finished difference Result 35 states and 44 transitions. [2022-04-27 12:15:51,377 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-27 12:15:51,377 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:15:51,378 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:15:51,378 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:15:51,378 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:15:51,378 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-27 12:15:51,379 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 44 transitions. [2022-04-27 12:15:51,379 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 44 transitions. Word has length 18 [2022-04-27 12:15:51,380 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:15:51,380 INFO L495 AbstractCegarLoop]: Abstraction has 35 states and 44 transitions. [2022-04-27 12:15:51,380 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-27 12:15:51,380 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-27 12:15:51,380 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-27 12:15:51,380 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:15:51,381 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:15:51,399 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:15:51,596 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:15:51,597 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:15:51,597 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:15:51,598 INFO L85 PathProgramCache]: Analyzing trace with hash 767560222, now seen corresponding path program 1 times [2022-04-27 12:15:51,598 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:15:51,598 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1237068086] [2022-04-27 12:15:51,598 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:15:51,598 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:15:51,611 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:15:51,611 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1860020677] [2022-04-27 12:15:51,611 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:15:51,611 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:15:51,611 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:15:51,612 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:15:51,613 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:15:51,644 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:15:51,644 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 12:15:51,650 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:15:51,651 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:15:53,869 INFO L272 TraceCheckUtils]: 0: Hoare triple {505#true} call ULTIMATE.init(); {505#true} is VALID [2022-04-27 12:15:53,870 INFO L290 TraceCheckUtils]: 1: Hoare triple {505#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(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {505#true} is VALID [2022-04-27 12:15:53,870 INFO L290 TraceCheckUtils]: 2: Hoare triple {505#true} assume true; {505#true} is VALID [2022-04-27 12:15:53,870 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {505#true} {505#true} #93#return; {505#true} is VALID [2022-04-27 12:15:53,870 INFO L272 TraceCheckUtils]: 4: Hoare triple {505#true} call #t~ret8 := main(); {505#true} is VALID [2022-04-27 12:15:53,870 INFO L290 TraceCheckUtils]: 5: Hoare triple {505#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {505#true} is VALID [2022-04-27 12:15:53,870 INFO L272 TraceCheckUtils]: 6: Hoare triple {505#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {505#true} is VALID [2022-04-27 12:15:53,871 INFO L290 TraceCheckUtils]: 7: Hoare triple {505#true} ~cond := #in~cond; {505#true} is VALID [2022-04-27 12:15:53,871 INFO L290 TraceCheckUtils]: 8: Hoare triple {505#true} assume !(0 == ~cond); {505#true} is VALID [2022-04-27 12:15:53,871 INFO L290 TraceCheckUtils]: 9: Hoare triple {505#true} assume true; {505#true} is VALID [2022-04-27 12:15:53,871 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {505#true} {505#true} #77#return; {505#true} is VALID [2022-04-27 12:15:53,888 INFO L290 TraceCheckUtils]: 11: Hoare triple {505#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {543#(and (= main_~a~0 0) (= main_~b~0 0))} is VALID [2022-04-27 12:15:53,888 INFO L290 TraceCheckUtils]: 12: Hoare triple {543#(and (= main_~a~0 0) (= main_~b~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {543#(and (= main_~a~0 0) (= main_~b~0 0))} is VALID [2022-04-27 12:15:53,889 INFO L290 TraceCheckUtils]: 13: Hoare triple {543#(and (= main_~a~0 0) (= main_~b~0 0))} assume !!(#t~post6 < 20);havoc #t~post6; {543#(and (= main_~a~0 0) (= main_~b~0 0))} is VALID [2022-04-27 12:15:53,890 INFO L272 TraceCheckUtils]: 14: Hoare triple {543#(and (= main_~a~0 0) (= main_~b~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {553#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:15:53,890 INFO L290 TraceCheckUtils]: 15: Hoare triple {553#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {557#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:15:53,891 INFO L290 TraceCheckUtils]: 16: Hoare triple {557#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {506#false} is VALID [2022-04-27 12:15:53,891 INFO L290 TraceCheckUtils]: 17: Hoare triple {506#false} assume !false; {506#false} is VALID [2022-04-27 12:15:53,891 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 12:15:53,891 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 12:15:53,892 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:15:53,892 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1237068086] [2022-04-27 12:15:53,892 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:15:53,892 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1860020677] [2022-04-27 12:15:53,892 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1860020677] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:15:53,892 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:15:53,892 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 12:15:53,892 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1760155326] [2022-04-27 12:15:53,892 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:15:53,893 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-27 12:15:53,893 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:15:53,893 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 12:15:53,909 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:15:53,909 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 12:15:53,909 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:15:53,909 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 12:15:53,909 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 12:15:53,910 INFO L87 Difference]: Start difference. First operand 35 states and 44 transitions. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 12:15:54,039 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:15:54,040 INFO L93 Difference]: Finished difference Result 45 states and 56 transitions. [2022-04-27 12:15:54,040 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 12:15:54,040 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-27 12:15:54,040 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:15:54,040 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 12:15:54,042 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-27 12:15:54,042 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 12:15:54,043 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-27 12:15:54,043 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 56 transitions. [2022-04-27 12:15:54,081 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:15:54,082 INFO L225 Difference]: With dead ends: 45 [2022-04-27 12:15:54,082 INFO L226 Difference]: Without dead ends: 43 [2022-04-27 12:15:54,082 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 14 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-27 12:15:54,083 INFO L413 NwaCegarLoop]: 41 mSDtfsCounter, 6 mSDsluCounter, 104 mSDsCounter, 0 mSdLazyCounter, 28 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 145 SdHoareTripleChecker+Invalid, 28 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 28 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 12:15:54,083 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [8 Valid, 145 Invalid, 28 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 28 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 12:15:54,084 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states. [2022-04-27 12:15:54,090 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 40. [2022-04-27 12:15:54,090 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:15:54,091 INFO L82 GeneralOperation]: Start isEquivalent. First operand 43 states. Second operand has 40 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 12:15:54,091 INFO L74 IsIncluded]: Start isIncluded. First operand 43 states. Second operand has 40 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 12:15:54,091 INFO L87 Difference]: Start difference. First operand 43 states. Second operand has 40 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 12:15:54,093 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:15:54,093 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-27 12:15:54,093 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-27 12:15:54,094 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:15:54,094 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:15:54,094 INFO L74 IsIncluded]: Start isIncluded. First operand has 40 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Second operand 43 states. [2022-04-27 12:15:54,094 INFO L87 Difference]: Start difference. First operand has 40 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Second operand 43 states. [2022-04-27 12:15:54,096 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:15:54,096 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-27 12:15:54,096 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-27 12:15:54,097 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:15:54,097 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:15:54,097 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:15:54,097 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:15:54,097 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 40 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 12:15:54,098 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 49 transitions. [2022-04-27 12:15:54,099 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 49 transitions. Word has length 18 [2022-04-27 12:15:54,099 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:15:54,099 INFO L495 AbstractCegarLoop]: Abstraction has 40 states and 49 transitions. [2022-04-27 12:15:54,099 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, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 12:15:54,099 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 49 transitions. [2022-04-27 12:15:54,099 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-27 12:15:54,100 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:15:54,100 INFO L195 NwaCegarLoop]: trace histogram [2, 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:15:54,118 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:15:54,314 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:15:54,315 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:15:54,315 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:15:54,315 INFO L85 PathProgramCache]: Analyzing trace with hash -1016228092, now seen corresponding path program 1 times [2022-04-27 12:15:54,316 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:15:54,316 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1035471098] [2022-04-27 12:15:54,316 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:15:54,316 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:15:54,327 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:15:54,327 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1754634431] [2022-04-27 12:15:54,327 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:15:54,327 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:15:54,327 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:15:54,334 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:15:54,335 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:15:54,378 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:15:54,379 INFO L263 TraceCheckSpWp]: Trace formula consists of 95 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 12:15:54,389 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:15:54,389 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:15:54,540 INFO L272 TraceCheckUtils]: 0: Hoare triple {776#true} call ULTIMATE.init(); {776#true} is VALID [2022-04-27 12:15:54,540 INFO L290 TraceCheckUtils]: 1: Hoare triple {776#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(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {776#true} is VALID [2022-04-27 12:15:54,541 INFO L290 TraceCheckUtils]: 2: Hoare triple {776#true} assume true; {776#true} is VALID [2022-04-27 12:15:54,541 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {776#true} {776#true} #93#return; {776#true} is VALID [2022-04-27 12:15:54,541 INFO L272 TraceCheckUtils]: 4: Hoare triple {776#true} call #t~ret8 := main(); {776#true} is VALID [2022-04-27 12:15:54,541 INFO L290 TraceCheckUtils]: 5: Hoare triple {776#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {776#true} is VALID [2022-04-27 12:15:54,541 INFO L272 TraceCheckUtils]: 6: Hoare triple {776#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {776#true} is VALID [2022-04-27 12:15:54,541 INFO L290 TraceCheckUtils]: 7: Hoare triple {776#true} ~cond := #in~cond; {776#true} is VALID [2022-04-27 12:15:54,541 INFO L290 TraceCheckUtils]: 8: Hoare triple {776#true} assume !(0 == ~cond); {776#true} is VALID [2022-04-27 12:15:54,541 INFO L290 TraceCheckUtils]: 9: Hoare triple {776#true} assume true; {776#true} is VALID [2022-04-27 12:15:54,541 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {776#true} {776#true} #77#return; {776#true} is VALID [2022-04-27 12:15:54,542 INFO L290 TraceCheckUtils]: 11: Hoare triple {776#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {814#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-27 12:15:54,542 INFO L290 TraceCheckUtils]: 12: Hoare triple {814#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {814#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-27 12:15:54,546 INFO L290 TraceCheckUtils]: 13: Hoare triple {814#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 20);havoc #t~post6; {814#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-27 12:15:54,547 INFO L272 TraceCheckUtils]: 14: Hoare triple {814#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {776#true} is VALID [2022-04-27 12:15:54,548 INFO L290 TraceCheckUtils]: 15: Hoare triple {776#true} ~cond := #in~cond; {776#true} is VALID [2022-04-27 12:15:54,549 INFO L290 TraceCheckUtils]: 16: Hoare triple {776#true} assume !(0 == ~cond); {776#true} is VALID [2022-04-27 12:15:54,553 INFO L290 TraceCheckUtils]: 17: Hoare triple {776#true} assume true; {776#true} is VALID [2022-04-27 12:15:54,554 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {776#true} {814#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #79#return; {814#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-27 12:15:54,556 INFO L272 TraceCheckUtils]: 19: Hoare triple {814#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {839#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:15:54,556 INFO L290 TraceCheckUtils]: 20: Hoare triple {839#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {843#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:15:54,556 INFO L290 TraceCheckUtils]: 21: Hoare triple {843#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {777#false} is VALID [2022-04-27 12:15:54,557 INFO L290 TraceCheckUtils]: 22: Hoare triple {777#false} assume !false; {777#false} is VALID [2022-04-27 12:15:54,558 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 12:15:54,558 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 12:15:54,558 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:15:54,558 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1035471098] [2022-04-27 12:15:54,558 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:15:54,558 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1754634431] [2022-04-27 12:15:54,558 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1754634431] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:15:54,558 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:15:54,558 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 12:15:54,558 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [230292381] [2022-04-27 12:15:54,559 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:15:54,559 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-27 12:15:54,559 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:15:54,559 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 12:15:54,578 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:15:54,579 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 12:15:54,579 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:15:54,579 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 12:15:54,580 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 12:15:54,580 INFO L87 Difference]: Start difference. First operand 40 states and 49 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 12:15:54,772 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:15:54,773 INFO L93 Difference]: Finished difference Result 58 states and 74 transitions. [2022-04-27 12:15:54,773 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 12:15:54,773 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-27 12:15:54,773 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:15:54,773 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 12:15:54,775 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 71 transitions. [2022-04-27 12:15:54,775 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 12:15:54,776 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 71 transitions. [2022-04-27 12:15:54,776 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 71 transitions. [2022-04-27 12:15:54,831 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 71 edges. 71 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:15:54,833 INFO L225 Difference]: With dead ends: 58 [2022-04-27 12:15:54,833 INFO L226 Difference]: Without dead ends: 55 [2022-04-27 12:15:54,833 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 23 GetRequests, 19 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:15:54,834 INFO L413 NwaCegarLoop]: 42 mSDtfsCounter, 13 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 52 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 139 SdHoareTripleChecker+Invalid, 54 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 52 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 12:15:54,834 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [18 Valid, 139 Invalid, 54 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 52 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 12:15:54,834 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2022-04-27 12:15:54,841 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 54. [2022-04-27 12:15:54,842 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:15:54,842 INFO L82 GeneralOperation]: Start isEquivalent. First operand 55 states. Second operand has 54 states, 32 states have (on average 1.21875) internal successors, (39), 33 states have internal predecessors, (39), 16 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-27 12:15:54,842 INFO L74 IsIncluded]: Start isIncluded. First operand 55 states. Second operand has 54 states, 32 states have (on average 1.21875) internal successors, (39), 33 states have internal predecessors, (39), 16 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-27 12:15:54,842 INFO L87 Difference]: Start difference. First operand 55 states. Second operand has 54 states, 32 states have (on average 1.21875) internal successors, (39), 33 states have internal predecessors, (39), 16 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-27 12:15:54,844 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:15:54,844 INFO L93 Difference]: Finished difference Result 55 states and 70 transitions. [2022-04-27 12:15:54,844 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 70 transitions. [2022-04-27 12:15:54,845 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:15:54,845 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:15:54,845 INFO L74 IsIncluded]: Start isIncluded. First operand has 54 states, 32 states have (on average 1.21875) internal successors, (39), 33 states have internal predecessors, (39), 16 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) Second operand 55 states. [2022-04-27 12:15:54,845 INFO L87 Difference]: Start difference. First operand has 54 states, 32 states have (on average 1.21875) internal successors, (39), 33 states have internal predecessors, (39), 16 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) Second operand 55 states. [2022-04-27 12:15:54,847 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:15:54,847 INFO L93 Difference]: Finished difference Result 55 states and 70 transitions. [2022-04-27 12:15:54,847 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 70 transitions. [2022-04-27 12:15:54,848 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:15:54,848 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:15:54,848 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:15:54,848 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:15:54,848 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 54 states, 32 states have (on average 1.21875) internal successors, (39), 33 states have internal predecessors, (39), 16 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-27 12:15:54,849 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 54 states to 54 states and 69 transitions. [2022-04-27 12:15:54,850 INFO L78 Accepts]: Start accepts. Automaton has 54 states and 69 transitions. Word has length 23 [2022-04-27 12:15:54,850 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:15:54,850 INFO L495 AbstractCegarLoop]: Abstraction has 54 states and 69 transitions. [2022-04-27 12:15:54,850 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 12:15:54,850 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 69 transitions. [2022-04-27 12:15:54,850 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-04-27 12:15:54,850 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:15:54,850 INFO L195 NwaCegarLoop]: trace histogram [3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:15:54,867 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:15:55,065 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:15:55,066 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:15:55,066 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:15:55,066 INFO L85 PathProgramCache]: Analyzing trace with hash 2019703110, now seen corresponding path program 1 times [2022-04-27 12:15:55,066 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:15:55,066 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [311463105] [2022-04-27 12:15:55,067 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:15:55,067 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:15:55,077 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:15:55,078 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1219934849] [2022-04-27 12:15:55,078 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:15:55,078 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:15:55,078 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:15:55,080 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:15:55,081 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:15:55,117 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:15:55,118 INFO L263 TraceCheckSpWp]: Trace formula consists of 114 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 12:15:55,131 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:15:55,132 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:15:55,225 INFO L272 TraceCheckUtils]: 0: Hoare triple {1126#true} call ULTIMATE.init(); {1126#true} is VALID [2022-04-27 12:15:55,225 INFO L290 TraceCheckUtils]: 1: Hoare triple {1126#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(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1126#true} is VALID [2022-04-27 12:15:55,225 INFO L290 TraceCheckUtils]: 2: Hoare triple {1126#true} assume true; {1126#true} is VALID [2022-04-27 12:15:55,225 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1126#true} {1126#true} #93#return; {1126#true} is VALID [2022-04-27 12:15:55,225 INFO L272 TraceCheckUtils]: 4: Hoare triple {1126#true} call #t~ret8 := main(); {1126#true} is VALID [2022-04-27 12:15:55,226 INFO L290 TraceCheckUtils]: 5: Hoare triple {1126#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1126#true} is VALID [2022-04-27 12:15:55,226 INFO L272 TraceCheckUtils]: 6: Hoare triple {1126#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1126#true} is VALID [2022-04-27 12:15:55,226 INFO L290 TraceCheckUtils]: 7: Hoare triple {1126#true} ~cond := #in~cond; {1126#true} is VALID [2022-04-27 12:15:55,226 INFO L290 TraceCheckUtils]: 8: Hoare triple {1126#true} assume !(0 == ~cond); {1126#true} is VALID [2022-04-27 12:15:55,226 INFO L290 TraceCheckUtils]: 9: Hoare triple {1126#true} assume true; {1126#true} is VALID [2022-04-27 12:15:55,226 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1126#true} {1126#true} #77#return; {1126#true} is VALID [2022-04-27 12:15:55,226 INFO L290 TraceCheckUtils]: 11: Hoare triple {1126#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {1126#true} is VALID [2022-04-27 12:15:55,226 INFO L290 TraceCheckUtils]: 12: Hoare triple {1126#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1126#true} is VALID [2022-04-27 12:15:55,226 INFO L290 TraceCheckUtils]: 13: Hoare triple {1126#true} assume !!(#t~post6 < 20);havoc #t~post6; {1126#true} is VALID [2022-04-27 12:15:55,226 INFO L272 TraceCheckUtils]: 14: Hoare triple {1126#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1126#true} is VALID [2022-04-27 12:15:55,226 INFO L290 TraceCheckUtils]: 15: Hoare triple {1126#true} ~cond := #in~cond; {1126#true} is VALID [2022-04-27 12:15:55,227 INFO L290 TraceCheckUtils]: 16: Hoare triple {1126#true} assume !(0 == ~cond); {1126#true} is VALID [2022-04-27 12:15:55,227 INFO L290 TraceCheckUtils]: 17: Hoare triple {1126#true} assume true; {1126#true} is VALID [2022-04-27 12:15:55,227 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1126#true} {1126#true} #79#return; {1126#true} is VALID [2022-04-27 12:15:55,227 INFO L272 TraceCheckUtils]: 19: Hoare triple {1126#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1126#true} is VALID [2022-04-27 12:15:55,227 INFO L290 TraceCheckUtils]: 20: Hoare triple {1126#true} ~cond := #in~cond; {1126#true} is VALID [2022-04-27 12:15:55,227 INFO L290 TraceCheckUtils]: 21: Hoare triple {1126#true} assume !(0 == ~cond); {1126#true} is VALID [2022-04-27 12:15:55,227 INFO L290 TraceCheckUtils]: 22: Hoare triple {1126#true} assume true; {1126#true} is VALID [2022-04-27 12:15:55,227 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1126#true} {1126#true} #81#return; {1126#true} is VALID [2022-04-27 12:15:55,229 INFO L290 TraceCheckUtils]: 24: Hoare triple {1126#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {1203#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} is VALID [2022-04-27 12:15:55,229 INFO L290 TraceCheckUtils]: 25: Hoare triple {1203#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1203#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} is VALID [2022-04-27 12:15:55,230 INFO L290 TraceCheckUtils]: 26: Hoare triple {1203#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} assume !!(#t~post7 < 20);havoc #t~post7; {1203#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} is VALID [2022-04-27 12:15:55,231 INFO L272 TraceCheckUtils]: 27: Hoare triple {1203#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1213#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:15:55,231 INFO L290 TraceCheckUtils]: 28: Hoare triple {1213#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1217#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:15:55,231 INFO L290 TraceCheckUtils]: 29: Hoare triple {1217#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1127#false} is VALID [2022-04-27 12:15:55,231 INFO L290 TraceCheckUtils]: 30: Hoare triple {1127#false} assume !false; {1127#false} is VALID [2022-04-27 12:15:55,232 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 12:15:55,232 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 12:15:55,232 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:15:55,232 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [311463105] [2022-04-27 12:15:55,232 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:15:55,232 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1219934849] [2022-04-27 12:15:55,232 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1219934849] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:15:55,232 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:15:55,232 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 12:15:55,232 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [865205353] [2022-04-27 12:15:55,232 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:15:55,233 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, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) Word has length 31 [2022-04-27 12:15:55,233 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:15:55,233 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, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-27 12:15:55,251 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:15:55,252 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 12:15:55,252 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:15:55,252 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 12:15:55,252 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 12:15:55,252 INFO L87 Difference]: Start difference. First operand 54 states and 69 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, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-27 12:15:55,431 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:15:55,432 INFO L93 Difference]: Finished difference Result 83 states and 113 transitions. [2022-04-27 12:15:55,432 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 12:15:55,432 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, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) Word has length 31 [2022-04-27 12:15:55,432 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:15:55,432 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, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-27 12:15:55,433 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 72 transitions. [2022-04-27 12:15:55,433 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, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-27 12:15:55,434 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 72 transitions. [2022-04-27 12:15:55,434 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 72 transitions. [2022-04-27 12:15:55,474 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:15:55,475 INFO L225 Difference]: With dead ends: 83 [2022-04-27 12:15:55,475 INFO L226 Difference]: Without dead ends: 81 [2022-04-27 12:15:55,476 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 31 GetRequests, 27 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:15:55,476 INFO L413 NwaCegarLoop]: 46 mSDtfsCounter, 13 mSDsluCounter, 99 mSDsCounter, 0 mSdLazyCounter, 62 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 19 SdHoareTripleChecker+Valid, 145 SdHoareTripleChecker+Invalid, 63 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 62 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 12:15:55,476 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [19 Valid, 145 Invalid, 63 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 62 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 12:15:55,477 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 81 states. [2022-04-27 12:15:55,486 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 81 to 74. [2022-04-27 12:15:55,486 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:15:55,487 INFO L82 GeneralOperation]: Start isEquivalent. First operand 81 states. Second operand has 74 states, 44 states have (on average 1.2727272727272727) internal successors, (56), 46 states have internal predecessors, (56), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-27 12:15:55,487 INFO L74 IsIncluded]: Start isIncluded. First operand 81 states. Second operand has 74 states, 44 states have (on average 1.2727272727272727) internal successors, (56), 46 states have internal predecessors, (56), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-27 12:15:55,487 INFO L87 Difference]: Start difference. First operand 81 states. Second operand has 74 states, 44 states have (on average 1.2727272727272727) internal successors, (56), 46 states have internal predecessors, (56), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-27 12:15:55,491 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:15:55,491 INFO L93 Difference]: Finished difference Result 81 states and 111 transitions. [2022-04-27 12:15:55,491 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 111 transitions. [2022-04-27 12:15:55,492 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:15:55,492 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:15:55,492 INFO L74 IsIncluded]: Start isIncluded. First operand has 74 states, 44 states have (on average 1.2727272727272727) internal successors, (56), 46 states have internal predecessors, (56), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 81 states. [2022-04-27 12:15:55,492 INFO L87 Difference]: Start difference. First operand has 74 states, 44 states have (on average 1.2727272727272727) internal successors, (56), 46 states have internal predecessors, (56), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 81 states. [2022-04-27 12:15:55,495 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:15:55,495 INFO L93 Difference]: Finished difference Result 81 states and 111 transitions. [2022-04-27 12:15:55,495 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 111 transitions. [2022-04-27 12:15:55,495 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:15:55,495 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:15:55,495 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:15:55,495 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:15:55,496 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 74 states, 44 states have (on average 1.2727272727272727) internal successors, (56), 46 states have internal predecessors, (56), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-27 12:15:55,498 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 100 transitions. [2022-04-27 12:15:55,498 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 100 transitions. Word has length 31 [2022-04-27 12:15:55,498 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:15:55,498 INFO L495 AbstractCegarLoop]: Abstraction has 74 states and 100 transitions. [2022-04-27 12:15:55,498 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, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-27 12:15:55,498 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 100 transitions. [2022-04-27 12:15:55,499 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-27 12:15:55,499 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:15:55,499 INFO L195 NwaCegarLoop]: trace histogram [3, 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, 1, 1] [2022-04-27 12:15:55,517 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:15:55,699 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:15:55,699 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:15:55,700 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:15:55,700 INFO L85 PathProgramCache]: Analyzing trace with hash 202176206, now seen corresponding path program 1 times [2022-04-27 12:15:55,700 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:15:55,700 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1016863274] [2022-04-27 12:15:55,700 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:15:55,700 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:15:55,710 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:15:55,710 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2144648917] [2022-04-27 12:15:55,710 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:15:55,710 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:15:55,710 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:15:55,711 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:15:55,728 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:15:55,753 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:15:55,754 INFO L263 TraceCheckSpWp]: Trace formula consists of 123 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 12:15:55,761 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:15:55,761 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:15:55,890 INFO L272 TraceCheckUtils]: 0: Hoare triple {1622#true} call ULTIMATE.init(); {1622#true} is VALID [2022-04-27 12:15:55,891 INFO L290 TraceCheckUtils]: 1: Hoare triple {1622#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(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1630#(<= ~counter~0 0)} is VALID [2022-04-27 12:15:55,891 INFO L290 TraceCheckUtils]: 2: Hoare triple {1630#(<= ~counter~0 0)} assume true; {1630#(<= ~counter~0 0)} is VALID [2022-04-27 12:15:55,892 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1630#(<= ~counter~0 0)} {1622#true} #93#return; {1630#(<= ~counter~0 0)} is VALID [2022-04-27 12:15:55,893 INFO L272 TraceCheckUtils]: 4: Hoare triple {1630#(<= ~counter~0 0)} call #t~ret8 := main(); {1630#(<= ~counter~0 0)} is VALID [2022-04-27 12:15:55,893 INFO L290 TraceCheckUtils]: 5: Hoare triple {1630#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1630#(<= ~counter~0 0)} is VALID [2022-04-27 12:15:55,903 INFO L272 TraceCheckUtils]: 6: Hoare triple {1630#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1630#(<= ~counter~0 0)} is VALID [2022-04-27 12:15:55,903 INFO L290 TraceCheckUtils]: 7: Hoare triple {1630#(<= ~counter~0 0)} ~cond := #in~cond; {1630#(<= ~counter~0 0)} is VALID [2022-04-27 12:15:55,904 INFO L290 TraceCheckUtils]: 8: Hoare triple {1630#(<= ~counter~0 0)} assume !(0 == ~cond); {1630#(<= ~counter~0 0)} is VALID [2022-04-27 12:15:55,904 INFO L290 TraceCheckUtils]: 9: Hoare triple {1630#(<= ~counter~0 0)} assume true; {1630#(<= ~counter~0 0)} is VALID [2022-04-27 12:15:55,904 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1630#(<= ~counter~0 0)} {1630#(<= ~counter~0 0)} #77#return; {1630#(<= ~counter~0 0)} is VALID [2022-04-27 12:15:55,905 INFO L290 TraceCheckUtils]: 11: Hoare triple {1630#(<= ~counter~0 0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {1630#(<= ~counter~0 0)} is VALID [2022-04-27 12:15:55,905 INFO L290 TraceCheckUtils]: 12: Hoare triple {1630#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1664#(<= ~counter~0 1)} is VALID [2022-04-27 12:15:55,905 INFO L290 TraceCheckUtils]: 13: Hoare triple {1664#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {1664#(<= ~counter~0 1)} is VALID [2022-04-27 12:15:55,906 INFO L272 TraceCheckUtils]: 14: Hoare triple {1664#(<= ~counter~0 1)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1664#(<= ~counter~0 1)} is VALID [2022-04-27 12:15:55,906 INFO L290 TraceCheckUtils]: 15: Hoare triple {1664#(<= ~counter~0 1)} ~cond := #in~cond; {1664#(<= ~counter~0 1)} is VALID [2022-04-27 12:15:55,907 INFO L290 TraceCheckUtils]: 16: Hoare triple {1664#(<= ~counter~0 1)} assume !(0 == ~cond); {1664#(<= ~counter~0 1)} is VALID [2022-04-27 12:15:55,907 INFO L290 TraceCheckUtils]: 17: Hoare triple {1664#(<= ~counter~0 1)} assume true; {1664#(<= ~counter~0 1)} is VALID [2022-04-27 12:15:55,907 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1664#(<= ~counter~0 1)} {1664#(<= ~counter~0 1)} #79#return; {1664#(<= ~counter~0 1)} is VALID [2022-04-27 12:15:55,908 INFO L272 TraceCheckUtils]: 19: Hoare triple {1664#(<= ~counter~0 1)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1664#(<= ~counter~0 1)} is VALID [2022-04-27 12:15:55,908 INFO L290 TraceCheckUtils]: 20: Hoare triple {1664#(<= ~counter~0 1)} ~cond := #in~cond; {1664#(<= ~counter~0 1)} is VALID [2022-04-27 12:15:55,909 INFO L290 TraceCheckUtils]: 21: Hoare triple {1664#(<= ~counter~0 1)} assume !(0 == ~cond); {1664#(<= ~counter~0 1)} is VALID [2022-04-27 12:15:55,909 INFO L290 TraceCheckUtils]: 22: Hoare triple {1664#(<= ~counter~0 1)} assume true; {1664#(<= ~counter~0 1)} is VALID [2022-04-27 12:15:55,909 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1664#(<= ~counter~0 1)} {1664#(<= ~counter~0 1)} #81#return; {1664#(<= ~counter~0 1)} is VALID [2022-04-27 12:15:55,910 INFO L290 TraceCheckUtils]: 24: Hoare triple {1664#(<= ~counter~0 1)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {1664#(<= ~counter~0 1)} is VALID [2022-04-27 12:15:55,910 INFO L290 TraceCheckUtils]: 25: Hoare triple {1664#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1704#(<= |main_#t~post7| 1)} is VALID [2022-04-27 12:15:55,910 INFO L290 TraceCheckUtils]: 26: Hoare triple {1704#(<= |main_#t~post7| 1)} assume !(#t~post7 < 20);havoc #t~post7; {1623#false} is VALID [2022-04-27 12:15:55,910 INFO L290 TraceCheckUtils]: 27: Hoare triple {1623#false} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {1623#false} is VALID [2022-04-27 12:15:55,911 INFO L290 TraceCheckUtils]: 28: Hoare triple {1623#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1623#false} is VALID [2022-04-27 12:15:55,911 INFO L290 TraceCheckUtils]: 29: Hoare triple {1623#false} assume !(#t~post6 < 20);havoc #t~post6; {1623#false} is VALID [2022-04-27 12:15:55,911 INFO L272 TraceCheckUtils]: 30: Hoare triple {1623#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1623#false} is VALID [2022-04-27 12:15:55,911 INFO L290 TraceCheckUtils]: 31: Hoare triple {1623#false} ~cond := #in~cond; {1623#false} is VALID [2022-04-27 12:15:55,911 INFO L290 TraceCheckUtils]: 32: Hoare triple {1623#false} assume 0 == ~cond; {1623#false} is VALID [2022-04-27 12:15:55,911 INFO L290 TraceCheckUtils]: 33: Hoare triple {1623#false} assume !false; {1623#false} is VALID [2022-04-27 12:15:55,911 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 12:15:55,911 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 12:15:55,911 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:15:55,911 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1016863274] [2022-04-27 12:15:55,911 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:15:55,912 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2144648917] [2022-04-27 12:15:55,912 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2144648917] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:15:55,912 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:15:55,912 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 12:15:55,912 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1537354600] [2022-04-27 12:15:55,912 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:15:55,912 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) Word has length 34 [2022-04-27 12:15:55,912 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:15:55,912 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-27 12:15:55,933 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:15:55,933 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 12:15:55,933 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:15:55,934 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 12:15:55,934 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-27 12:15:55,934 INFO L87 Difference]: Start difference. First operand 74 states and 100 transitions. Second operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-27 12:15:56,032 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:15:56,033 INFO L93 Difference]: Finished difference Result 113 states and 153 transitions. [2022-04-27 12:15:56,033 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 12:15:56,033 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) Word has length 34 [2022-04-27 12:15:56,033 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:15:56,033 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-27 12:15:56,034 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 85 transitions. [2022-04-27 12:15:56,034 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-27 12:15:56,035 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 85 transitions. [2022-04-27 12:15:56,036 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 85 transitions. [2022-04-27 12:15:56,092 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 85 edges. 85 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:15:56,094 INFO L225 Difference]: With dead ends: 113 [2022-04-27 12:15:56,094 INFO L226 Difference]: Without dead ends: 78 [2022-04-27 12:15:56,094 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 33 GetRequests, 30 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-27 12:15:56,095 INFO L413 NwaCegarLoop]: 41 mSDtfsCounter, 6 mSDsluCounter, 94 mSDsCounter, 0 mSdLazyCounter, 17 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 135 SdHoareTripleChecker+Invalid, 22 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 17 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 12:15:56,095 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [6 Valid, 135 Invalid, 22 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 17 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 12:15:56,095 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 78 states. [2022-04-27 12:15:56,105 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 78 to 78. [2022-04-27 12:15:56,105 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:15:56,105 INFO L82 GeneralOperation]: Start isEquivalent. First operand 78 states. Second operand has 78 states, 47 states have (on average 1.2340425531914894) internal successors, (58), 49 states have internal predecessors, (58), 23 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-27 12:15:56,106 INFO L74 IsIncluded]: Start isIncluded. First operand 78 states. Second operand has 78 states, 47 states have (on average 1.2340425531914894) internal successors, (58), 49 states have internal predecessors, (58), 23 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-27 12:15:56,106 INFO L87 Difference]: Start difference. First operand 78 states. Second operand has 78 states, 47 states have (on average 1.2340425531914894) internal successors, (58), 49 states have internal predecessors, (58), 23 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-27 12:15:56,108 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:15:56,108 INFO L93 Difference]: Finished difference Result 78 states and 102 transitions. [2022-04-27 12:15:56,108 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 102 transitions. [2022-04-27 12:15:56,109 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:15:56,109 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:15:56,109 INFO L74 IsIncluded]: Start isIncluded. First operand has 78 states, 47 states have (on average 1.2340425531914894) internal successors, (58), 49 states have internal predecessors, (58), 23 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 78 states. [2022-04-27 12:15:56,109 INFO L87 Difference]: Start difference. First operand has 78 states, 47 states have (on average 1.2340425531914894) internal successors, (58), 49 states have internal predecessors, (58), 23 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 78 states. [2022-04-27 12:15:56,111 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:15:56,112 INFO L93 Difference]: Finished difference Result 78 states and 102 transitions. [2022-04-27 12:15:56,112 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 102 transitions. [2022-04-27 12:15:56,112 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:15:56,112 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:15:56,112 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:15:56,112 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:15:56,112 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 78 states, 47 states have (on average 1.2340425531914894) internal successors, (58), 49 states have internal predecessors, (58), 23 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-27 12:15:56,114 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 78 states to 78 states and 102 transitions. [2022-04-27 12:15:56,115 INFO L78 Accepts]: Start accepts. Automaton has 78 states and 102 transitions. Word has length 34 [2022-04-27 12:15:56,115 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:15:56,115 INFO L495 AbstractCegarLoop]: Abstraction has 78 states and 102 transitions. [2022-04-27 12:15:56,115 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-27 12:15:56,115 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 102 transitions. [2022-04-27 12:15:56,115 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-27 12:15:56,115 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:15:56,115 INFO L195 NwaCegarLoop]: trace histogram [5, 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] [2022-04-27 12:15:56,137 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-27 12:15:56,331 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:15:56,331 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:15:56,332 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:15:56,332 INFO L85 PathProgramCache]: Analyzing trace with hash 1813008070, now seen corresponding path program 1 times [2022-04-27 12:15:56,332 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:15:56,332 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [35966704] [2022-04-27 12:15:56,332 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:15:56,332 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:15:56,345 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:15:56,345 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [235547174] [2022-04-27 12:15:56,345 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:15:56,346 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:15:56,346 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:15:56,346 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:15:56,347 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:15:56,378 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:15:56,379 INFO L263 TraceCheckSpWp]: Trace formula consists of 132 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 12:15:56,388 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:15:56,388 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:15:56,523 INFO L272 TraceCheckUtils]: 0: Hoare triple {2168#true} call ULTIMATE.init(); {2168#true} is VALID [2022-04-27 12:15:56,524 INFO L290 TraceCheckUtils]: 1: Hoare triple {2168#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(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2168#true} is VALID [2022-04-27 12:15:56,524 INFO L290 TraceCheckUtils]: 2: Hoare triple {2168#true} assume true; {2168#true} is VALID [2022-04-27 12:15:56,524 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2168#true} {2168#true} #93#return; {2168#true} is VALID [2022-04-27 12:15:56,524 INFO L272 TraceCheckUtils]: 4: Hoare triple {2168#true} call #t~ret8 := main(); {2168#true} is VALID [2022-04-27 12:15:56,524 INFO L290 TraceCheckUtils]: 5: Hoare triple {2168#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2168#true} is VALID [2022-04-27 12:15:56,524 INFO L272 TraceCheckUtils]: 6: Hoare triple {2168#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2168#true} is VALID [2022-04-27 12:15:56,525 INFO L290 TraceCheckUtils]: 7: Hoare triple {2168#true} ~cond := #in~cond; {2194#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 12:15:56,525 INFO L290 TraceCheckUtils]: 8: Hoare triple {2194#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2198#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:15:56,525 INFO L290 TraceCheckUtils]: 9: Hoare triple {2198#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2198#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:15:56,526 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2198#(not (= |assume_abort_if_not_#in~cond| 0))} {2168#true} #77#return; {2205#(<= 1 main_~y~0)} is VALID [2022-04-27 12:15:56,527 INFO L290 TraceCheckUtils]: 11: Hoare triple {2205#(<= 1 main_~y~0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {2205#(<= 1 main_~y~0)} is VALID [2022-04-27 12:15:56,527 INFO L290 TraceCheckUtils]: 12: Hoare triple {2205#(<= 1 main_~y~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2205#(<= 1 main_~y~0)} is VALID [2022-04-27 12:15:56,527 INFO L290 TraceCheckUtils]: 13: Hoare triple {2205#(<= 1 main_~y~0)} assume !!(#t~post6 < 20);havoc #t~post6; {2205#(<= 1 main_~y~0)} is VALID [2022-04-27 12:15:56,527 INFO L272 TraceCheckUtils]: 14: Hoare triple {2205#(<= 1 main_~y~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2168#true} is VALID [2022-04-27 12:15:56,527 INFO L290 TraceCheckUtils]: 15: Hoare triple {2168#true} ~cond := #in~cond; {2168#true} is VALID [2022-04-27 12:15:56,527 INFO L290 TraceCheckUtils]: 16: Hoare triple {2168#true} assume !(0 == ~cond); {2168#true} is VALID [2022-04-27 12:15:56,528 INFO L290 TraceCheckUtils]: 17: Hoare triple {2168#true} assume true; {2168#true} is VALID [2022-04-27 12:15:56,528 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2168#true} {2205#(<= 1 main_~y~0)} #79#return; {2205#(<= 1 main_~y~0)} is VALID [2022-04-27 12:15:56,528 INFO L272 TraceCheckUtils]: 19: Hoare triple {2205#(<= 1 main_~y~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2168#true} is VALID [2022-04-27 12:15:56,528 INFO L290 TraceCheckUtils]: 20: Hoare triple {2168#true} ~cond := #in~cond; {2168#true} is VALID [2022-04-27 12:15:56,528 INFO L290 TraceCheckUtils]: 21: Hoare triple {2168#true} assume !(0 == ~cond); {2168#true} is VALID [2022-04-27 12:15:56,528 INFO L290 TraceCheckUtils]: 22: Hoare triple {2168#true} assume true; {2168#true} is VALID [2022-04-27 12:15:56,529 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2168#true} {2205#(<= 1 main_~y~0)} #81#return; {2205#(<= 1 main_~y~0)} is VALID [2022-04-27 12:15:56,529 INFO L290 TraceCheckUtils]: 24: Hoare triple {2205#(<= 1 main_~y~0)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {2248#(<= 1 main_~r~0)} is VALID [2022-04-27 12:15:56,529 INFO L290 TraceCheckUtils]: 25: Hoare triple {2248#(<= 1 main_~r~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2248#(<= 1 main_~r~0)} is VALID [2022-04-27 12:15:56,530 INFO L290 TraceCheckUtils]: 26: Hoare triple {2248#(<= 1 main_~r~0)} assume !!(#t~post7 < 20);havoc #t~post7; {2248#(<= 1 main_~r~0)} is VALID [2022-04-27 12:15:56,530 INFO L272 TraceCheckUtils]: 27: Hoare triple {2248#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2168#true} is VALID [2022-04-27 12:15:56,530 INFO L290 TraceCheckUtils]: 28: Hoare triple {2168#true} ~cond := #in~cond; {2168#true} is VALID [2022-04-27 12:15:56,530 INFO L290 TraceCheckUtils]: 29: Hoare triple {2168#true} assume !(0 == ~cond); {2168#true} is VALID [2022-04-27 12:15:56,530 INFO L290 TraceCheckUtils]: 30: Hoare triple {2168#true} assume true; {2168#true} is VALID [2022-04-27 12:15:56,530 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2168#true} {2248#(<= 1 main_~r~0)} #83#return; {2248#(<= 1 main_~r~0)} is VALID [2022-04-27 12:15:56,531 INFO L272 TraceCheckUtils]: 32: Hoare triple {2248#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2168#true} is VALID [2022-04-27 12:15:56,531 INFO L290 TraceCheckUtils]: 33: Hoare triple {2168#true} ~cond := #in~cond; {2168#true} is VALID [2022-04-27 12:15:56,531 INFO L290 TraceCheckUtils]: 34: Hoare triple {2168#true} assume !(0 == ~cond); {2168#true} is VALID [2022-04-27 12:15:56,531 INFO L290 TraceCheckUtils]: 35: Hoare triple {2168#true} assume true; {2168#true} is VALID [2022-04-27 12:15:56,531 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {2168#true} {2248#(<= 1 main_~r~0)} #85#return; {2248#(<= 1 main_~r~0)} is VALID [2022-04-27 12:15:56,532 INFO L272 TraceCheckUtils]: 37: Hoare triple {2248#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {2288#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:15:56,532 INFO L290 TraceCheckUtils]: 38: Hoare triple {2288#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2292#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:15:56,532 INFO L290 TraceCheckUtils]: 39: Hoare triple {2292#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2169#false} is VALID [2022-04-27 12:15:56,532 INFO L290 TraceCheckUtils]: 40: Hoare triple {2169#false} assume !false; {2169#false} is VALID [2022-04-27 12:15:56,532 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 8 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-27 12:15:56,533 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 12:15:56,533 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:15:56,533 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [35966704] [2022-04-27 12:15:56,533 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:15:56,533 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [235547174] [2022-04-27 12:15:56,533 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [235547174] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:15:56,533 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:15:56,533 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-27 12:15:56,533 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [322237010] [2022-04-27 12:15:56,533 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:15:56,533 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.25) internal successors, (18), 7 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) Word has length 41 [2022-04-27 12:15:56,534 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:15:56,534 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.25) internal successors, (18), 7 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 12:15:56,552 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:15:56,552 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-27 12:15:56,552 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:15:56,553 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-27 12:15:56,553 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-27 12:15:56,553 INFO L87 Difference]: Start difference. First operand 78 states and 102 transitions. Second operand has 8 states, 8 states have (on average 2.25) internal successors, (18), 7 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 12:15:56,821 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:15:56,822 INFO L93 Difference]: Finished difference Result 84 states and 107 transitions. [2022-04-27 12:15:56,822 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-27 12:15:56,822 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.25) internal successors, (18), 7 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) Word has length 41 [2022-04-27 12:15:56,822 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:15:56,822 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.25) internal successors, (18), 7 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 12:15:56,823 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-27 12:15:56,823 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.25) internal successors, (18), 7 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 12:15:56,824 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-27 12:15:56,824 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 47 transitions. [2022-04-27 12:15:56,855 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:15:56,856 INFO L225 Difference]: With dead ends: 84 [2022-04-27 12:15:56,857 INFO L226 Difference]: Without dead ends: 82 [2022-04-27 12:15:56,857 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 43 GetRequests, 34 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=25, Invalid=85, Unknown=0, NotChecked=0, Total=110 [2022-04-27 12:15:56,857 INFO L413 NwaCegarLoop]: 35 mSDtfsCounter, 20 mSDsluCounter, 132 mSDsCounter, 0 mSdLazyCounter, 105 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 20 SdHoareTripleChecker+Valid, 167 SdHoareTripleChecker+Invalid, 112 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 105 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 12:15:56,857 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [20 Valid, 167 Invalid, 112 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 105 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 12:15:56,858 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 82 states. [2022-04-27 12:15:56,894 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 82 to 82. [2022-04-27 12:15:56,895 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:15:56,895 INFO L82 GeneralOperation]: Start isEquivalent. First operand 82 states. Second operand has 82 states, 50 states have (on average 1.22) internal successors, (61), 52 states have internal predecessors, (61), 23 states have call successors, (23), 9 states have call predecessors, (23), 8 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-27 12:15:56,895 INFO L74 IsIncluded]: Start isIncluded. First operand 82 states. Second operand has 82 states, 50 states have (on average 1.22) internal successors, (61), 52 states have internal predecessors, (61), 23 states have call successors, (23), 9 states have call predecessors, (23), 8 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-27 12:15:56,895 INFO L87 Difference]: Start difference. First operand 82 states. Second operand has 82 states, 50 states have (on average 1.22) internal successors, (61), 52 states have internal predecessors, (61), 23 states have call successors, (23), 9 states have call predecessors, (23), 8 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-27 12:15:56,897 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:15:56,897 INFO L93 Difference]: Finished difference Result 82 states and 105 transitions. [2022-04-27 12:15:56,897 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 105 transitions. [2022-04-27 12:15:56,898 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:15:56,898 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:15:56,898 INFO L74 IsIncluded]: Start isIncluded. First operand has 82 states, 50 states have (on average 1.22) internal successors, (61), 52 states have internal predecessors, (61), 23 states have call successors, (23), 9 states have call predecessors, (23), 8 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 82 states. [2022-04-27 12:15:56,898 INFO L87 Difference]: Start difference. First operand has 82 states, 50 states have (on average 1.22) internal successors, (61), 52 states have internal predecessors, (61), 23 states have call successors, (23), 9 states have call predecessors, (23), 8 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 82 states. [2022-04-27 12:15:56,902 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:15:56,902 INFO L93 Difference]: Finished difference Result 82 states and 105 transitions. [2022-04-27 12:15:56,902 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 105 transitions. [2022-04-27 12:15:56,903 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:15:56,903 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:15:56,903 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:15:56,903 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:15:56,904 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 82 states, 50 states have (on average 1.22) internal successors, (61), 52 states have internal predecessors, (61), 23 states have call successors, (23), 9 states have call predecessors, (23), 8 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-27 12:15:56,907 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 82 states to 82 states and 105 transitions. [2022-04-27 12:15:56,907 INFO L78 Accepts]: Start accepts. Automaton has 82 states and 105 transitions. Word has length 41 [2022-04-27 12:15:56,907 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:15:56,907 INFO L495 AbstractCegarLoop]: Abstraction has 82 states and 105 transitions. [2022-04-27 12:15:56,907 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.25) internal successors, (18), 7 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 12:15:56,907 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 105 transitions. [2022-04-27 12:15:56,909 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-27 12:15:56,909 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:15:56,909 INFO L195 NwaCegarLoop]: trace histogram [6, 5, 5, 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, 1, 1] [2022-04-27 12:15:56,927 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:15:57,119 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:15:57,119 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:15:57,120 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:15:57,120 INFO L85 PathProgramCache]: Analyzing trace with hash -683043127, now seen corresponding path program 1 times [2022-04-27 12:15:57,120 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:15:57,120 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1030752339] [2022-04-27 12:15:57,120 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:15:57,120 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:15:57,132 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:15:57,132 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1427511300] [2022-04-27 12:15:57,132 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:15:57,132 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:15:57,132 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:15:57,133 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:15:57,134 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:15:57,168 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:15:57,168 INFO L263 TraceCheckSpWp]: Trace formula consists of 142 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 12:15:57,176 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:15:57,177 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:15:57,347 INFO L272 TraceCheckUtils]: 0: Hoare triple {2712#true} call ULTIMATE.init(); {2712#true} is VALID [2022-04-27 12:15:57,348 INFO L290 TraceCheckUtils]: 1: Hoare triple {2712#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(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2712#true} is VALID [2022-04-27 12:15:57,348 INFO L290 TraceCheckUtils]: 2: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-27 12:15:57,348 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2712#true} {2712#true} #93#return; {2712#true} is VALID [2022-04-27 12:15:57,348 INFO L272 TraceCheckUtils]: 4: Hoare triple {2712#true} call #t~ret8 := main(); {2712#true} is VALID [2022-04-27 12:15:57,348 INFO L290 TraceCheckUtils]: 5: Hoare triple {2712#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2712#true} is VALID [2022-04-27 12:15:57,348 INFO L272 TraceCheckUtils]: 6: Hoare triple {2712#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2712#true} is VALID [2022-04-27 12:15:57,348 INFO L290 TraceCheckUtils]: 7: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-27 12:15:57,348 INFO L290 TraceCheckUtils]: 8: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-27 12:15:57,348 INFO L290 TraceCheckUtils]: 9: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-27 12:15:57,348 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2712#true} {2712#true} #77#return; {2712#true} is VALID [2022-04-27 12:15:57,348 INFO L290 TraceCheckUtils]: 11: Hoare triple {2712#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {2712#true} is VALID [2022-04-27 12:15:57,348 INFO L290 TraceCheckUtils]: 12: Hoare triple {2712#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2712#true} is VALID [2022-04-27 12:15:57,349 INFO L290 TraceCheckUtils]: 13: Hoare triple {2712#true} assume !!(#t~post6 < 20);havoc #t~post6; {2712#true} is VALID [2022-04-27 12:15:57,349 INFO L272 TraceCheckUtils]: 14: Hoare triple {2712#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2712#true} is VALID [2022-04-27 12:15:57,349 INFO L290 TraceCheckUtils]: 15: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-27 12:15:57,349 INFO L290 TraceCheckUtils]: 16: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-27 12:15:57,349 INFO L290 TraceCheckUtils]: 17: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-27 12:15:57,349 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2712#true} {2712#true} #79#return; {2712#true} is VALID [2022-04-27 12:15:57,349 INFO L272 TraceCheckUtils]: 19: Hoare triple {2712#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2712#true} is VALID [2022-04-27 12:15:57,349 INFO L290 TraceCheckUtils]: 20: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-27 12:15:57,349 INFO L290 TraceCheckUtils]: 21: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-27 12:15:57,349 INFO L290 TraceCheckUtils]: 22: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-27 12:15:57,349 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2712#true} {2712#true} #81#return; {2712#true} is VALID [2022-04-27 12:15:57,349 INFO L290 TraceCheckUtils]: 24: Hoare triple {2712#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {2712#true} is VALID [2022-04-27 12:15:57,349 INFO L290 TraceCheckUtils]: 25: Hoare triple {2712#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2712#true} is VALID [2022-04-27 12:15:57,349 INFO L290 TraceCheckUtils]: 26: Hoare triple {2712#true} assume !!(#t~post7 < 20);havoc #t~post7; {2712#true} is VALID [2022-04-27 12:15:57,350 INFO L272 TraceCheckUtils]: 27: Hoare triple {2712#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2712#true} is VALID [2022-04-27 12:15:57,361 INFO L290 TraceCheckUtils]: 28: Hoare triple {2712#true} ~cond := #in~cond; {2801#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:15:57,361 INFO L290 TraceCheckUtils]: 29: Hoare triple {2801#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {2805#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:15:57,361 INFO L290 TraceCheckUtils]: 30: Hoare triple {2805#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2805#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:15:57,362 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2805#(not (= |__VERIFIER_assert_#in~cond| 0))} {2712#true} #83#return; {2812#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-27 12:15:57,362 INFO L272 TraceCheckUtils]: 32: Hoare triple {2812#(= main_~b~0 (* main_~a~0 main_~y~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2712#true} is VALID [2022-04-27 12:15:57,363 INFO L290 TraceCheckUtils]: 33: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-27 12:15:57,363 INFO L290 TraceCheckUtils]: 34: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-27 12:15:57,363 INFO L290 TraceCheckUtils]: 35: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-27 12:15:57,363 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {2712#true} {2812#(= main_~b~0 (* main_~a~0 main_~y~0))} #85#return; {2812#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-27 12:15:57,363 INFO L272 TraceCheckUtils]: 37: Hoare triple {2812#(= main_~b~0 (* main_~a~0 main_~y~0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {2712#true} is VALID [2022-04-27 12:15:57,363 INFO L290 TraceCheckUtils]: 38: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-27 12:15:57,363 INFO L290 TraceCheckUtils]: 39: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-27 12:15:57,364 INFO L290 TraceCheckUtils]: 40: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-27 12:15:57,365 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2712#true} {2812#(= main_~b~0 (* main_~a~0 main_~y~0))} #87#return; {2812#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-27 12:15:57,365 INFO L290 TraceCheckUtils]: 42: Hoare triple {2812#(= main_~b~0 (* main_~a~0 main_~y~0))} assume !!(~r~0 >= 2 * ~b~0); {2846#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} is VALID [2022-04-27 12:15:57,366 INFO L272 TraceCheckUtils]: 43: Hoare triple {2846#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {2850#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:15:57,366 INFO L290 TraceCheckUtils]: 44: Hoare triple {2850#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2854#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:15:57,366 INFO L290 TraceCheckUtils]: 45: Hoare triple {2854#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2713#false} is VALID [2022-04-27 12:15:57,366 INFO L290 TraceCheckUtils]: 46: Hoare triple {2713#false} assume !false; {2713#false} is VALID [2022-04-27 12:15:57,366 INFO L134 CoverageAnalysis]: Checked inductivity of 50 backedges. 15 proven. 7 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-27 12:15:57,367 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:16:01,756 INFO L290 TraceCheckUtils]: 46: Hoare triple {2713#false} assume !false; {2713#false} is VALID [2022-04-27 12:16:01,757 INFO L290 TraceCheckUtils]: 45: Hoare triple {2854#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2713#false} is VALID [2022-04-27 12:16:01,757 INFO L290 TraceCheckUtils]: 44: Hoare triple {2850#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2854#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:16:01,758 INFO L272 TraceCheckUtils]: 43: Hoare triple {2846#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {2850#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:16:01,758 INFO L290 TraceCheckUtils]: 42: Hoare triple {2873#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} assume !!(~r~0 >= 2 * ~b~0); {2846#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} is VALID [2022-04-27 12:16:01,759 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2712#true} {2873#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} #87#return; {2873#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-27 12:16:01,759 INFO L290 TraceCheckUtils]: 40: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-27 12:16:01,759 INFO L290 TraceCheckUtils]: 39: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-27 12:16:01,759 INFO L290 TraceCheckUtils]: 38: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-27 12:16:01,759 INFO L272 TraceCheckUtils]: 37: Hoare triple {2873#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {2712#true} is VALID [2022-04-27 12:16:01,760 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {2712#true} {2873#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} #85#return; {2873#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-27 12:16:01,760 INFO L290 TraceCheckUtils]: 35: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-27 12:16:01,760 INFO L290 TraceCheckUtils]: 34: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-27 12:16:01,760 INFO L290 TraceCheckUtils]: 33: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-27 12:16:01,760 INFO L272 TraceCheckUtils]: 32: Hoare triple {2873#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2712#true} is VALID [2022-04-27 12:16:01,761 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2805#(not (= |__VERIFIER_assert_#in~cond| 0))} {2712#true} #83#return; {2873#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-27 12:16:01,761 INFO L290 TraceCheckUtils]: 30: Hoare triple {2805#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2805#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:16:01,762 INFO L290 TraceCheckUtils]: 29: Hoare triple {2916#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {2805#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:16:01,762 INFO L290 TraceCheckUtils]: 28: Hoare triple {2712#true} ~cond := #in~cond; {2916#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 12:16:01,762 INFO L272 TraceCheckUtils]: 27: Hoare triple {2712#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2712#true} is VALID [2022-04-27 12:16:01,762 INFO L290 TraceCheckUtils]: 26: Hoare triple {2712#true} assume !!(#t~post7 < 20);havoc #t~post7; {2712#true} is VALID [2022-04-27 12:16:01,762 INFO L290 TraceCheckUtils]: 25: Hoare triple {2712#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2712#true} is VALID [2022-04-27 12:16:01,762 INFO L290 TraceCheckUtils]: 24: Hoare triple {2712#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {2712#true} is VALID [2022-04-27 12:16:01,763 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2712#true} {2712#true} #81#return; {2712#true} is VALID [2022-04-27 12:16:01,763 INFO L290 TraceCheckUtils]: 22: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-27 12:16:01,763 INFO L290 TraceCheckUtils]: 21: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-27 12:16:01,763 INFO L290 TraceCheckUtils]: 20: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-27 12:16:01,763 INFO L272 TraceCheckUtils]: 19: Hoare triple {2712#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2712#true} is VALID [2022-04-27 12:16:01,763 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2712#true} {2712#true} #79#return; {2712#true} is VALID [2022-04-27 12:16:01,763 INFO L290 TraceCheckUtils]: 17: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-27 12:16:01,763 INFO L290 TraceCheckUtils]: 16: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-27 12:16:01,763 INFO L290 TraceCheckUtils]: 15: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-27 12:16:01,763 INFO L272 TraceCheckUtils]: 14: Hoare triple {2712#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2712#true} is VALID [2022-04-27 12:16:01,763 INFO L290 TraceCheckUtils]: 13: Hoare triple {2712#true} assume !!(#t~post6 < 20);havoc #t~post6; {2712#true} is VALID [2022-04-27 12:16:01,763 INFO L290 TraceCheckUtils]: 12: Hoare triple {2712#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2712#true} is VALID [2022-04-27 12:16:01,763 INFO L290 TraceCheckUtils]: 11: Hoare triple {2712#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {2712#true} is VALID [2022-04-27 12:16:01,763 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2712#true} {2712#true} #77#return; {2712#true} is VALID [2022-04-27 12:16:01,763 INFO L290 TraceCheckUtils]: 9: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-27 12:16:01,764 INFO L290 TraceCheckUtils]: 8: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-27 12:16:01,764 INFO L290 TraceCheckUtils]: 7: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-27 12:16:01,764 INFO L272 TraceCheckUtils]: 6: Hoare triple {2712#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2712#true} is VALID [2022-04-27 12:16:01,764 INFO L290 TraceCheckUtils]: 5: Hoare triple {2712#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2712#true} is VALID [2022-04-27 12:16:01,764 INFO L272 TraceCheckUtils]: 4: Hoare triple {2712#true} call #t~ret8 := main(); {2712#true} is VALID [2022-04-27 12:16:01,764 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2712#true} {2712#true} #93#return; {2712#true} is VALID [2022-04-27 12:16:01,764 INFO L290 TraceCheckUtils]: 2: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-27 12:16:01,764 INFO L290 TraceCheckUtils]: 1: Hoare triple {2712#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(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2712#true} is VALID [2022-04-27 12:16:01,764 INFO L272 TraceCheckUtils]: 0: Hoare triple {2712#true} call ULTIMATE.init(); {2712#true} is VALID [2022-04-27 12:16:01,764 INFO L134 CoverageAnalysis]: Checked inductivity of 50 backedges. 15 proven. 7 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-27 12:16:01,764 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:16:01,764 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1030752339] [2022-04-27 12:16:01,764 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:16:01,764 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1427511300] [2022-04-27 12:16:01,765 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1427511300] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 12:16:01,765 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 12:16:01,765 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-27 12:16:01,765 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1273809616] [2022-04-27 12:16:01,765 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 12:16:01,765 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 3 states have call predecessors, (10), 3 states have call successors, (10) Word has length 47 [2022-04-27 12:16:01,765 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:16:01,766 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 3 states have call predecessors, (10), 3 states have call successors, (10) [2022-04-27 12:16:01,795 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:16:01,796 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-27 12:16:01,796 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:16:01,796 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-27 12:16:01,796 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=68, Unknown=0, NotChecked=0, Total=90 [2022-04-27 12:16:01,796 INFO L87 Difference]: Start difference. First operand 82 states and 105 transitions. Second operand has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 3 states have call predecessors, (10), 3 states have call successors, (10) [2022-04-27 12:16:02,125 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:16:02,125 INFO L93 Difference]: Finished difference Result 88 states and 110 transitions. [2022-04-27 12:16:02,125 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-27 12:16:02,125 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 3 states have call predecessors, (10), 3 states have call successors, (10) Word has length 47 [2022-04-27 12:16:02,126 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:16:02,126 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 3 states have call predecessors, (10), 3 states have call successors, (10) [2022-04-27 12:16:02,127 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-27 12:16:02,127 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 3 states have call predecessors, (10), 3 states have call successors, (10) [2022-04-27 12:16:02,128 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-27 12:16:02,128 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 47 transitions. [2022-04-27 12:16:02,162 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:16:02,164 INFO L225 Difference]: With dead ends: 88 [2022-04-27 12:16:02,164 INFO L226 Difference]: Without dead ends: 86 [2022-04-27 12:16:02,164 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 96 GetRequests, 84 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=40, Invalid=116, Unknown=0, NotChecked=0, Total=156 [2022-04-27 12:16:02,165 INFO L413 NwaCegarLoop]: 27 mSDtfsCounter, 32 mSDsluCounter, 106 mSDsCounter, 0 mSdLazyCounter, 124 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 34 SdHoareTripleChecker+Valid, 133 SdHoareTripleChecker+Invalid, 140 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 124 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 12:16:02,165 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [34 Valid, 133 Invalid, 140 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 124 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 12:16:02,165 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 86 states. [2022-04-27 12:16:02,199 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 86 to 86. [2022-04-27 12:16:02,199 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:16:02,199 INFO L82 GeneralOperation]: Start isEquivalent. First operand 86 states. Second operand has 86 states, 53 states have (on average 1.2075471698113207) internal successors, (64), 55 states have internal predecessors, (64), 23 states have call successors, (23), 10 states have call predecessors, (23), 9 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-27 12:16:02,199 INFO L74 IsIncluded]: Start isIncluded. First operand 86 states. Second operand has 86 states, 53 states have (on average 1.2075471698113207) internal successors, (64), 55 states have internal predecessors, (64), 23 states have call successors, (23), 10 states have call predecessors, (23), 9 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-27 12:16:02,200 INFO L87 Difference]: Start difference. First operand 86 states. Second operand has 86 states, 53 states have (on average 1.2075471698113207) internal successors, (64), 55 states have internal predecessors, (64), 23 states have call successors, (23), 10 states have call predecessors, (23), 9 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-27 12:16:02,202 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:16:02,202 INFO L93 Difference]: Finished difference Result 86 states and 108 transitions. [2022-04-27 12:16:02,202 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 108 transitions. [2022-04-27 12:16:02,202 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:16:02,202 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:16:02,203 INFO L74 IsIncluded]: Start isIncluded. First operand has 86 states, 53 states have (on average 1.2075471698113207) internal successors, (64), 55 states have internal predecessors, (64), 23 states have call successors, (23), 10 states have call predecessors, (23), 9 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 86 states. [2022-04-27 12:16:02,203 INFO L87 Difference]: Start difference. First operand has 86 states, 53 states have (on average 1.2075471698113207) internal successors, (64), 55 states have internal predecessors, (64), 23 states have call successors, (23), 10 states have call predecessors, (23), 9 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 86 states. [2022-04-27 12:16:02,205 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:16:02,205 INFO L93 Difference]: Finished difference Result 86 states and 108 transitions. [2022-04-27 12:16:02,205 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 108 transitions. [2022-04-27 12:16:02,205 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:16:02,205 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:16:02,205 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:16:02,205 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:16:02,206 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 86 states, 53 states have (on average 1.2075471698113207) internal successors, (64), 55 states have internal predecessors, (64), 23 states have call successors, (23), 10 states have call predecessors, (23), 9 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-27 12:16:02,208 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 86 states to 86 states and 108 transitions. [2022-04-27 12:16:02,208 INFO L78 Accepts]: Start accepts. Automaton has 86 states and 108 transitions. Word has length 47 [2022-04-27 12:16:02,208 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:16:02,208 INFO L495 AbstractCegarLoop]: Abstraction has 86 states and 108 transitions. [2022-04-27 12:16:02,208 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 3 states have call predecessors, (10), 3 states have call successors, (10) [2022-04-27 12:16:02,208 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 108 transitions. [2022-04-27 12:16:02,209 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-04-27 12:16:02,209 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:16:02,209 INFO L195 NwaCegarLoop]: trace histogram [6, 5, 5, 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, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:16:02,231 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:16:02,429 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:16:02,431 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:16:02,431 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:16:02,431 INFO L85 PathProgramCache]: Analyzing trace with hash -589126939, now seen corresponding path program 1 times [2022-04-27 12:16:02,432 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:16:02,432 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2111230386] [2022-04-27 12:16:02,432 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:16:02,432 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:16:02,441 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:16:02,441 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1572329618] [2022-04-27 12:16:02,441 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:16:02,441 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:16:02,441 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:16:02,442 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:16:02,443 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:16:02,485 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:16:02,486 INFO L263 TraceCheckSpWp]: Trace formula consists of 151 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 12:16:02,494 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:16:02,495 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:16:02,689 INFO L272 TraceCheckUtils]: 0: Hoare triple {3435#true} call ULTIMATE.init(); {3435#true} is VALID [2022-04-27 12:16:02,690 INFO L290 TraceCheckUtils]: 1: Hoare triple {3435#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(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3443#(<= ~counter~0 0)} is VALID [2022-04-27 12:16:02,690 INFO L290 TraceCheckUtils]: 2: Hoare triple {3443#(<= ~counter~0 0)} assume true; {3443#(<= ~counter~0 0)} is VALID [2022-04-27 12:16:02,691 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3443#(<= ~counter~0 0)} {3435#true} #93#return; {3443#(<= ~counter~0 0)} is VALID [2022-04-27 12:16:02,691 INFO L272 TraceCheckUtils]: 4: Hoare triple {3443#(<= ~counter~0 0)} call #t~ret8 := main(); {3443#(<= ~counter~0 0)} is VALID [2022-04-27 12:16:02,691 INFO L290 TraceCheckUtils]: 5: Hoare triple {3443#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3443#(<= ~counter~0 0)} is VALID [2022-04-27 12:16:02,692 INFO L272 TraceCheckUtils]: 6: Hoare triple {3443#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3443#(<= ~counter~0 0)} is VALID [2022-04-27 12:16:02,692 INFO L290 TraceCheckUtils]: 7: Hoare triple {3443#(<= ~counter~0 0)} ~cond := #in~cond; {3443#(<= ~counter~0 0)} is VALID [2022-04-27 12:16:02,692 INFO L290 TraceCheckUtils]: 8: Hoare triple {3443#(<= ~counter~0 0)} assume !(0 == ~cond); {3443#(<= ~counter~0 0)} is VALID [2022-04-27 12:16:02,692 INFO L290 TraceCheckUtils]: 9: Hoare triple {3443#(<= ~counter~0 0)} assume true; {3443#(<= ~counter~0 0)} is VALID [2022-04-27 12:16:02,693 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3443#(<= ~counter~0 0)} {3443#(<= ~counter~0 0)} #77#return; {3443#(<= ~counter~0 0)} is VALID [2022-04-27 12:16:02,693 INFO L290 TraceCheckUtils]: 11: Hoare triple {3443#(<= ~counter~0 0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {3443#(<= ~counter~0 0)} is VALID [2022-04-27 12:16:02,693 INFO L290 TraceCheckUtils]: 12: Hoare triple {3443#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3477#(<= ~counter~0 1)} is VALID [2022-04-27 12:16:02,694 INFO L290 TraceCheckUtils]: 13: Hoare triple {3477#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {3477#(<= ~counter~0 1)} is VALID [2022-04-27 12:16:02,694 INFO L272 TraceCheckUtils]: 14: Hoare triple {3477#(<= ~counter~0 1)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3477#(<= ~counter~0 1)} is VALID [2022-04-27 12:16:02,695 INFO L290 TraceCheckUtils]: 15: Hoare triple {3477#(<= ~counter~0 1)} ~cond := #in~cond; {3477#(<= ~counter~0 1)} is VALID [2022-04-27 12:16:02,695 INFO L290 TraceCheckUtils]: 16: Hoare triple {3477#(<= ~counter~0 1)} assume !(0 == ~cond); {3477#(<= ~counter~0 1)} is VALID [2022-04-27 12:16:02,695 INFO L290 TraceCheckUtils]: 17: Hoare triple {3477#(<= ~counter~0 1)} assume true; {3477#(<= ~counter~0 1)} is VALID [2022-04-27 12:16:02,696 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3477#(<= ~counter~0 1)} {3477#(<= ~counter~0 1)} #79#return; {3477#(<= ~counter~0 1)} is VALID [2022-04-27 12:16:02,696 INFO L272 TraceCheckUtils]: 19: Hoare triple {3477#(<= ~counter~0 1)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3477#(<= ~counter~0 1)} is VALID [2022-04-27 12:16:02,697 INFO L290 TraceCheckUtils]: 20: Hoare triple {3477#(<= ~counter~0 1)} ~cond := #in~cond; {3477#(<= ~counter~0 1)} is VALID [2022-04-27 12:16:02,697 INFO L290 TraceCheckUtils]: 21: Hoare triple {3477#(<= ~counter~0 1)} assume !(0 == ~cond); {3477#(<= ~counter~0 1)} is VALID [2022-04-27 12:16:02,697 INFO L290 TraceCheckUtils]: 22: Hoare triple {3477#(<= ~counter~0 1)} assume true; {3477#(<= ~counter~0 1)} is VALID [2022-04-27 12:16:02,698 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3477#(<= ~counter~0 1)} {3477#(<= ~counter~0 1)} #81#return; {3477#(<= ~counter~0 1)} is VALID [2022-04-27 12:16:02,698 INFO L290 TraceCheckUtils]: 24: Hoare triple {3477#(<= ~counter~0 1)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {3477#(<= ~counter~0 1)} is VALID [2022-04-27 12:16:02,698 INFO L290 TraceCheckUtils]: 25: Hoare triple {3477#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3517#(<= ~counter~0 2)} is VALID [2022-04-27 12:16:02,698 INFO L290 TraceCheckUtils]: 26: Hoare triple {3517#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {3517#(<= ~counter~0 2)} is VALID [2022-04-27 12:16:02,699 INFO L272 TraceCheckUtils]: 27: Hoare triple {3517#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3517#(<= ~counter~0 2)} is VALID [2022-04-27 12:16:02,699 INFO L290 TraceCheckUtils]: 28: Hoare triple {3517#(<= ~counter~0 2)} ~cond := #in~cond; {3517#(<= ~counter~0 2)} is VALID [2022-04-27 12:16:02,699 INFO L290 TraceCheckUtils]: 29: Hoare triple {3517#(<= ~counter~0 2)} assume !(0 == ~cond); {3517#(<= ~counter~0 2)} is VALID [2022-04-27 12:16:02,700 INFO L290 TraceCheckUtils]: 30: Hoare triple {3517#(<= ~counter~0 2)} assume true; {3517#(<= ~counter~0 2)} is VALID [2022-04-27 12:16:02,700 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {3517#(<= ~counter~0 2)} {3517#(<= ~counter~0 2)} #83#return; {3517#(<= ~counter~0 2)} is VALID [2022-04-27 12:16:02,701 INFO L272 TraceCheckUtils]: 32: Hoare triple {3517#(<= ~counter~0 2)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3517#(<= ~counter~0 2)} is VALID [2022-04-27 12:16:02,701 INFO L290 TraceCheckUtils]: 33: Hoare triple {3517#(<= ~counter~0 2)} ~cond := #in~cond; {3517#(<= ~counter~0 2)} is VALID [2022-04-27 12:16:02,701 INFO L290 TraceCheckUtils]: 34: Hoare triple {3517#(<= ~counter~0 2)} assume !(0 == ~cond); {3517#(<= ~counter~0 2)} is VALID [2022-04-27 12:16:02,701 INFO L290 TraceCheckUtils]: 35: Hoare triple {3517#(<= ~counter~0 2)} assume true; {3517#(<= ~counter~0 2)} is VALID [2022-04-27 12:16:02,702 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {3517#(<= ~counter~0 2)} {3517#(<= ~counter~0 2)} #85#return; {3517#(<= ~counter~0 2)} is VALID [2022-04-27 12:16:02,702 INFO L272 TraceCheckUtils]: 37: Hoare triple {3517#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {3517#(<= ~counter~0 2)} is VALID [2022-04-27 12:16:02,702 INFO L290 TraceCheckUtils]: 38: Hoare triple {3517#(<= ~counter~0 2)} ~cond := #in~cond; {3517#(<= ~counter~0 2)} is VALID [2022-04-27 12:16:02,703 INFO L290 TraceCheckUtils]: 39: Hoare triple {3517#(<= ~counter~0 2)} assume !(0 == ~cond); {3517#(<= ~counter~0 2)} is VALID [2022-04-27 12:16:02,703 INFO L290 TraceCheckUtils]: 40: Hoare triple {3517#(<= ~counter~0 2)} assume true; {3517#(<= ~counter~0 2)} is VALID [2022-04-27 12:16:02,703 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3517#(<= ~counter~0 2)} {3517#(<= ~counter~0 2)} #87#return; {3517#(<= ~counter~0 2)} is VALID [2022-04-27 12:16:02,704 INFO L290 TraceCheckUtils]: 42: Hoare triple {3517#(<= ~counter~0 2)} assume !(~r~0 >= 2 * ~b~0); {3517#(<= ~counter~0 2)} is VALID [2022-04-27 12:16:02,704 INFO L290 TraceCheckUtils]: 43: Hoare triple {3517#(<= ~counter~0 2)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {3517#(<= ~counter~0 2)} is VALID [2022-04-27 12:16:02,704 INFO L290 TraceCheckUtils]: 44: Hoare triple {3517#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3575#(<= |main_#t~post6| 2)} is VALID [2022-04-27 12:16:02,704 INFO L290 TraceCheckUtils]: 45: Hoare triple {3575#(<= |main_#t~post6| 2)} assume !(#t~post6 < 20);havoc #t~post6; {3436#false} is VALID [2022-04-27 12:16:02,705 INFO L272 TraceCheckUtils]: 46: Hoare triple {3436#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3436#false} is VALID [2022-04-27 12:16:02,705 INFO L290 TraceCheckUtils]: 47: Hoare triple {3436#false} ~cond := #in~cond; {3436#false} is VALID [2022-04-27 12:16:02,705 INFO L290 TraceCheckUtils]: 48: Hoare triple {3436#false} assume 0 == ~cond; {3436#false} is VALID [2022-04-27 12:16:02,705 INFO L290 TraceCheckUtils]: 49: Hoare triple {3436#false} assume !false; {3436#false} is VALID [2022-04-27 12:16:02,705 INFO L134 CoverageAnalysis]: Checked inductivity of 52 backedges. 10 proven. 26 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-27 12:16:02,705 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:16:02,941 INFO L290 TraceCheckUtils]: 49: Hoare triple {3436#false} assume !false; {3436#false} is VALID [2022-04-27 12:16:02,941 INFO L290 TraceCheckUtils]: 48: Hoare triple {3436#false} assume 0 == ~cond; {3436#false} is VALID [2022-04-27 12:16:02,941 INFO L290 TraceCheckUtils]: 47: Hoare triple {3436#false} ~cond := #in~cond; {3436#false} is VALID [2022-04-27 12:16:02,941 INFO L272 TraceCheckUtils]: 46: Hoare triple {3436#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3436#false} is VALID [2022-04-27 12:16:02,941 INFO L290 TraceCheckUtils]: 45: Hoare triple {3603#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {3436#false} is VALID [2022-04-27 12:16:02,942 INFO L290 TraceCheckUtils]: 44: Hoare triple {3607#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3603#(< |main_#t~post6| 20)} is VALID [2022-04-27 12:16:02,942 INFO L290 TraceCheckUtils]: 43: Hoare triple {3607#(< ~counter~0 20)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {3607#(< ~counter~0 20)} is VALID [2022-04-27 12:16:02,942 INFO L290 TraceCheckUtils]: 42: Hoare triple {3607#(< ~counter~0 20)} assume !(~r~0 >= 2 * ~b~0); {3607#(< ~counter~0 20)} is VALID [2022-04-27 12:16:02,943 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3435#true} {3607#(< ~counter~0 20)} #87#return; {3607#(< ~counter~0 20)} is VALID [2022-04-27 12:16:02,943 INFO L290 TraceCheckUtils]: 40: Hoare triple {3435#true} assume true; {3435#true} is VALID [2022-04-27 12:16:02,943 INFO L290 TraceCheckUtils]: 39: Hoare triple {3435#true} assume !(0 == ~cond); {3435#true} is VALID [2022-04-27 12:16:02,943 INFO L290 TraceCheckUtils]: 38: Hoare triple {3435#true} ~cond := #in~cond; {3435#true} is VALID [2022-04-27 12:16:02,943 INFO L272 TraceCheckUtils]: 37: Hoare triple {3607#(< ~counter~0 20)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {3435#true} is VALID [2022-04-27 12:16:02,947 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {3435#true} {3607#(< ~counter~0 20)} #85#return; {3607#(< ~counter~0 20)} is VALID [2022-04-27 12:16:02,947 INFO L290 TraceCheckUtils]: 35: Hoare triple {3435#true} assume true; {3435#true} is VALID [2022-04-27 12:16:02,947 INFO L290 TraceCheckUtils]: 34: Hoare triple {3435#true} assume !(0 == ~cond); {3435#true} is VALID [2022-04-27 12:16:02,948 INFO L290 TraceCheckUtils]: 33: Hoare triple {3435#true} ~cond := #in~cond; {3435#true} is VALID [2022-04-27 12:16:02,948 INFO L272 TraceCheckUtils]: 32: Hoare triple {3607#(< ~counter~0 20)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3435#true} is VALID [2022-04-27 12:16:02,948 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {3435#true} {3607#(< ~counter~0 20)} #83#return; {3607#(< ~counter~0 20)} is VALID [2022-04-27 12:16:02,948 INFO L290 TraceCheckUtils]: 30: Hoare triple {3435#true} assume true; {3435#true} is VALID [2022-04-27 12:16:02,948 INFO L290 TraceCheckUtils]: 29: Hoare triple {3435#true} assume !(0 == ~cond); {3435#true} is VALID [2022-04-27 12:16:02,948 INFO L290 TraceCheckUtils]: 28: Hoare triple {3435#true} ~cond := #in~cond; {3435#true} is VALID [2022-04-27 12:16:02,948 INFO L272 TraceCheckUtils]: 27: Hoare triple {3607#(< ~counter~0 20)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3435#true} is VALID [2022-04-27 12:16:02,949 INFO L290 TraceCheckUtils]: 26: Hoare triple {3607#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {3607#(< ~counter~0 20)} is VALID [2022-04-27 12:16:02,949 INFO L290 TraceCheckUtils]: 25: Hoare triple {3665#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3607#(< ~counter~0 20)} is VALID [2022-04-27 12:16:02,949 INFO L290 TraceCheckUtils]: 24: Hoare triple {3665#(< ~counter~0 19)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {3665#(< ~counter~0 19)} is VALID [2022-04-27 12:16:02,950 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3435#true} {3665#(< ~counter~0 19)} #81#return; {3665#(< ~counter~0 19)} is VALID [2022-04-27 12:16:02,950 INFO L290 TraceCheckUtils]: 22: Hoare triple {3435#true} assume true; {3435#true} is VALID [2022-04-27 12:16:02,950 INFO L290 TraceCheckUtils]: 21: Hoare triple {3435#true} assume !(0 == ~cond); {3435#true} is VALID [2022-04-27 12:16:02,950 INFO L290 TraceCheckUtils]: 20: Hoare triple {3435#true} ~cond := #in~cond; {3435#true} is VALID [2022-04-27 12:16:02,950 INFO L272 TraceCheckUtils]: 19: Hoare triple {3665#(< ~counter~0 19)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3435#true} is VALID [2022-04-27 12:16:02,951 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3435#true} {3665#(< ~counter~0 19)} #79#return; {3665#(< ~counter~0 19)} is VALID [2022-04-27 12:16:02,951 INFO L290 TraceCheckUtils]: 17: Hoare triple {3435#true} assume true; {3435#true} is VALID [2022-04-27 12:16:02,951 INFO L290 TraceCheckUtils]: 16: Hoare triple {3435#true} assume !(0 == ~cond); {3435#true} is VALID [2022-04-27 12:16:02,951 INFO L290 TraceCheckUtils]: 15: Hoare triple {3435#true} ~cond := #in~cond; {3435#true} is VALID [2022-04-27 12:16:02,951 INFO L272 TraceCheckUtils]: 14: Hoare triple {3665#(< ~counter~0 19)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3435#true} is VALID [2022-04-27 12:16:02,951 INFO L290 TraceCheckUtils]: 13: Hoare triple {3665#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {3665#(< ~counter~0 19)} is VALID [2022-04-27 12:16:02,952 INFO L290 TraceCheckUtils]: 12: Hoare triple {3705#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3665#(< ~counter~0 19)} is VALID [2022-04-27 12:16:02,952 INFO L290 TraceCheckUtils]: 11: Hoare triple {3705#(< ~counter~0 18)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {3705#(< ~counter~0 18)} is VALID [2022-04-27 12:16:02,952 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3435#true} {3705#(< ~counter~0 18)} #77#return; {3705#(< ~counter~0 18)} is VALID [2022-04-27 12:16:02,952 INFO L290 TraceCheckUtils]: 9: Hoare triple {3435#true} assume true; {3435#true} is VALID [2022-04-27 12:16:02,953 INFO L290 TraceCheckUtils]: 8: Hoare triple {3435#true} assume !(0 == ~cond); {3435#true} is VALID [2022-04-27 12:16:02,953 INFO L290 TraceCheckUtils]: 7: Hoare triple {3435#true} ~cond := #in~cond; {3435#true} is VALID [2022-04-27 12:16:02,953 INFO L272 TraceCheckUtils]: 6: Hoare triple {3705#(< ~counter~0 18)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3435#true} is VALID [2022-04-27 12:16:02,956 INFO L290 TraceCheckUtils]: 5: Hoare triple {3705#(< ~counter~0 18)} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3705#(< ~counter~0 18)} is VALID [2022-04-27 12:16:02,957 INFO L272 TraceCheckUtils]: 4: Hoare triple {3705#(< ~counter~0 18)} call #t~ret8 := main(); {3705#(< ~counter~0 18)} is VALID [2022-04-27 12:16:02,958 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3705#(< ~counter~0 18)} {3435#true} #93#return; {3705#(< ~counter~0 18)} is VALID [2022-04-27 12:16:02,958 INFO L290 TraceCheckUtils]: 2: Hoare triple {3705#(< ~counter~0 18)} assume true; {3705#(< ~counter~0 18)} is VALID [2022-04-27 12:16:02,959 INFO L290 TraceCheckUtils]: 1: Hoare triple {3435#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(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3705#(< ~counter~0 18)} is VALID [2022-04-27 12:16:02,959 INFO L272 TraceCheckUtils]: 0: Hoare triple {3435#true} call ULTIMATE.init(); {3435#true} is VALID [2022-04-27 12:16:02,959 INFO L134 CoverageAnalysis]: Checked inductivity of 52 backedges. 10 proven. 2 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-27 12:16:02,959 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:16:02,959 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2111230386] [2022-04-27 12:16:02,959 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:16:02,959 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1572329618] [2022-04-27 12:16:02,959 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1572329618] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 12:16:02,960 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 12:16:02,960 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-27 12:16:02,960 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1336261432] [2022-04-27 12:16:02,960 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 12:16:02,961 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.4) internal successors, (44), 10 states have internal predecessors, (44), 8 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 6 states have call predecessors, (14), 7 states have call successors, (14) Word has length 50 [2022-04-27 12:16:02,961 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:16:02,961 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 4.4) internal successors, (44), 10 states have internal predecessors, (44), 8 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 6 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-27 12:16:03,008 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:16:03,008 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-27 12:16:03,008 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:16:03,008 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-27 12:16:03,009 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-27 12:16:03,009 INFO L87 Difference]: Start difference. First operand 86 states and 108 transitions. Second operand has 10 states, 10 states have (on average 4.4) internal successors, (44), 10 states have internal predecessors, (44), 8 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 6 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-27 12:16:03,524 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:16:03,524 INFO L93 Difference]: Finished difference Result 257 states and 311 transitions. [2022-04-27 12:16:03,524 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-27 12:16:03,524 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.4) internal successors, (44), 10 states have internal predecessors, (44), 8 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 6 states have call predecessors, (14), 7 states have call successors, (14) Word has length 50 [2022-04-27 12:16:03,525 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:16:03,525 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.4) internal successors, (44), 10 states have internal predecessors, (44), 8 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 6 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-27 12:16:03,534 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 169 transitions. [2022-04-27 12:16:03,535 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.4) internal successors, (44), 10 states have internal predecessors, (44), 8 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 6 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-27 12:16:03,538 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 169 transitions. [2022-04-27 12:16:03,538 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 169 transitions. [2022-04-27 12:16:03,652 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 169 edges. 169 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:16:03,657 INFO L225 Difference]: With dead ends: 257 [2022-04-27 12:16:03,657 INFO L226 Difference]: Without dead ends: 250 [2022-04-27 12:16:03,657 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 103 GetRequests, 91 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=64, Invalid=118, Unknown=0, NotChecked=0, Total=182 [2022-04-27 12:16:03,657 INFO L413 NwaCegarLoop]: 63 mSDtfsCounter, 96 mSDsluCounter, 170 mSDsCounter, 0 mSdLazyCounter, 101 mSolverCounterSat, 33 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 96 SdHoareTripleChecker+Valid, 233 SdHoareTripleChecker+Invalid, 134 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 33 IncrementalHoareTripleChecker+Valid, 101 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 12:16:03,658 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [96 Valid, 233 Invalid, 134 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [33 Valid, 101 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 12:16:03,658 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 250 states. [2022-04-27 12:16:03,755 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 250 to 239. [2022-04-27 12:16:03,755 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:16:03,755 INFO L82 GeneralOperation]: Start isEquivalent. First operand 250 states. Second operand has 239 states, 153 states have (on average 1.1895424836601307) internal successors, (182), 161 states have internal predecessors, (182), 57 states have call successors, (57), 29 states have call predecessors, (57), 28 states have return successors, (52), 48 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-27 12:16:03,756 INFO L74 IsIncluded]: Start isIncluded. First operand 250 states. Second operand has 239 states, 153 states have (on average 1.1895424836601307) internal successors, (182), 161 states have internal predecessors, (182), 57 states have call successors, (57), 29 states have call predecessors, (57), 28 states have return successors, (52), 48 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-27 12:16:03,756 INFO L87 Difference]: Start difference. First operand 250 states. Second operand has 239 states, 153 states have (on average 1.1895424836601307) internal successors, (182), 161 states have internal predecessors, (182), 57 states have call successors, (57), 29 states have call predecessors, (57), 28 states have return successors, (52), 48 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-27 12:16:03,761 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:16:03,761 INFO L93 Difference]: Finished difference Result 250 states and 299 transitions. [2022-04-27 12:16:03,761 INFO L276 IsEmpty]: Start isEmpty. Operand 250 states and 299 transitions. [2022-04-27 12:16:03,762 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:16:03,762 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:16:03,762 INFO L74 IsIncluded]: Start isIncluded. First operand has 239 states, 153 states have (on average 1.1895424836601307) internal successors, (182), 161 states have internal predecessors, (182), 57 states have call successors, (57), 29 states have call predecessors, (57), 28 states have return successors, (52), 48 states have call predecessors, (52), 52 states have call successors, (52) Second operand 250 states. [2022-04-27 12:16:03,762 INFO L87 Difference]: Start difference. First operand has 239 states, 153 states have (on average 1.1895424836601307) internal successors, (182), 161 states have internal predecessors, (182), 57 states have call successors, (57), 29 states have call predecessors, (57), 28 states have return successors, (52), 48 states have call predecessors, (52), 52 states have call successors, (52) Second operand 250 states. [2022-04-27 12:16:03,767 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:16:03,767 INFO L93 Difference]: Finished difference Result 250 states and 299 transitions. [2022-04-27 12:16:03,767 INFO L276 IsEmpty]: Start isEmpty. Operand 250 states and 299 transitions. [2022-04-27 12:16:03,768 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:16:03,768 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:16:03,768 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:16:03,768 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:16:03,769 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 239 states, 153 states have (on average 1.1895424836601307) internal successors, (182), 161 states have internal predecessors, (182), 57 states have call successors, (57), 29 states have call predecessors, (57), 28 states have return successors, (52), 48 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-27 12:16:03,773 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 239 states to 239 states and 291 transitions. [2022-04-27 12:16:03,773 INFO L78 Accepts]: Start accepts. Automaton has 239 states and 291 transitions. Word has length 50 [2022-04-27 12:16:03,774 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:16:03,774 INFO L495 AbstractCegarLoop]: Abstraction has 239 states and 291 transitions. [2022-04-27 12:16:03,774 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 4.4) internal successors, (44), 10 states have internal predecessors, (44), 8 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 6 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-27 12:16:03,774 INFO L276 IsEmpty]: Start isEmpty. Operand 239 states and 291 transitions. [2022-04-27 12:16:03,774 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-27 12:16:03,774 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:16:03,774 INFO L195 NwaCegarLoop]: trace histogram [7, 6, 6, 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, 1, 1, 1, 1, 1, 1] [2022-04-27 12:16:03,791 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:16:03,991 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:16:03,991 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:16:03,991 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:16:03,992 INFO L85 PathProgramCache]: Analyzing trace with hash -484699953, now seen corresponding path program 1 times [2022-04-27 12:16:03,992 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:16:03,992 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1526981657] [2022-04-27 12:16:03,992 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:16:03,992 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:16:04,009 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:16:04,010 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2083756037] [2022-04-27 12:16:04,010 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:16:04,010 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:16:04,010 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:16:04,011 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:16:04,011 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-04-27 12:16:04,046 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:16:04,047 INFO L263 TraceCheckSpWp]: Trace formula consists of 160 conjuncts, 22 conjunts are in the unsatisfiable core [2022-04-27 12:16:04,055 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:16:04,056 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:16:04,515 INFO L272 TraceCheckUtils]: 0: Hoare triple {4963#true} call ULTIMATE.init(); {4963#true} is VALID [2022-04-27 12:16:04,515 INFO L290 TraceCheckUtils]: 1: Hoare triple {4963#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(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4963#true} is VALID [2022-04-27 12:16:04,515 INFO L290 TraceCheckUtils]: 2: Hoare triple {4963#true} assume true; {4963#true} is VALID [2022-04-27 12:16:04,515 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4963#true} {4963#true} #93#return; {4963#true} is VALID [2022-04-27 12:16:04,515 INFO L272 TraceCheckUtils]: 4: Hoare triple {4963#true} call #t~ret8 := main(); {4963#true} is VALID [2022-04-27 12:16:04,515 INFO L290 TraceCheckUtils]: 5: Hoare triple {4963#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4963#true} is VALID [2022-04-27 12:16:04,515 INFO L272 TraceCheckUtils]: 6: Hoare triple {4963#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4963#true} is VALID [2022-04-27 12:16:04,515 INFO L290 TraceCheckUtils]: 7: Hoare triple {4963#true} ~cond := #in~cond; {4963#true} is VALID [2022-04-27 12:16:04,515 INFO L290 TraceCheckUtils]: 8: Hoare triple {4963#true} assume !(0 == ~cond); {4963#true} is VALID [2022-04-27 12:16:04,515 INFO L290 TraceCheckUtils]: 9: Hoare triple {4963#true} assume true; {4963#true} is VALID [2022-04-27 12:16:04,515 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4963#true} {4963#true} #77#return; {4963#true} is VALID [2022-04-27 12:16:04,516 INFO L290 TraceCheckUtils]: 11: Hoare triple {4963#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {5001#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-27 12:16:04,516 INFO L290 TraceCheckUtils]: 12: Hoare triple {5001#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5001#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-27 12:16:04,517 INFO L290 TraceCheckUtils]: 13: Hoare triple {5001#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 20);havoc #t~post6; {5001#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-27 12:16:04,517 INFO L272 TraceCheckUtils]: 14: Hoare triple {5001#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {4963#true} is VALID [2022-04-27 12:16:04,517 INFO L290 TraceCheckUtils]: 15: Hoare triple {4963#true} ~cond := #in~cond; {4963#true} is VALID [2022-04-27 12:16:04,517 INFO L290 TraceCheckUtils]: 16: Hoare triple {4963#true} assume !(0 == ~cond); {4963#true} is VALID [2022-04-27 12:16:04,517 INFO L290 TraceCheckUtils]: 17: Hoare triple {4963#true} assume true; {4963#true} is VALID [2022-04-27 12:16:04,518 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4963#true} {5001#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #79#return; {5001#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-27 12:16:04,518 INFO L272 TraceCheckUtils]: 19: Hoare triple {5001#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {4963#true} is VALID [2022-04-27 12:16:04,518 INFO L290 TraceCheckUtils]: 20: Hoare triple {4963#true} ~cond := #in~cond; {4963#true} is VALID [2022-04-27 12:16:04,518 INFO L290 TraceCheckUtils]: 21: Hoare triple {4963#true} assume !(0 == ~cond); {4963#true} is VALID [2022-04-27 12:16:04,518 INFO L290 TraceCheckUtils]: 22: Hoare triple {4963#true} assume true; {4963#true} is VALID [2022-04-27 12:16:04,518 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4963#true} {5001#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #81#return; {5001#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-27 12:16:04,519 INFO L290 TraceCheckUtils]: 24: Hoare triple {5001#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {5041#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:16:04,519 INFO L290 TraceCheckUtils]: 25: Hoare triple {5041#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5041#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:16:04,520 INFO L290 TraceCheckUtils]: 26: Hoare triple {5041#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 20);havoc #t~post7; {5041#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:16:04,520 INFO L272 TraceCheckUtils]: 27: Hoare triple {5041#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {4963#true} is VALID [2022-04-27 12:16:04,520 INFO L290 TraceCheckUtils]: 28: Hoare triple {4963#true} ~cond := #in~cond; {4963#true} is VALID [2022-04-27 12:16:04,520 INFO L290 TraceCheckUtils]: 29: Hoare triple {4963#true} assume !(0 == ~cond); {4963#true} is VALID [2022-04-27 12:16:04,520 INFO L290 TraceCheckUtils]: 30: Hoare triple {4963#true} assume true; {4963#true} is VALID [2022-04-27 12:16:04,520 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {4963#true} {5041#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #83#return; {5041#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:16:04,521 INFO L272 TraceCheckUtils]: 32: Hoare triple {5041#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {4963#true} is VALID [2022-04-27 12:16:04,521 INFO L290 TraceCheckUtils]: 33: Hoare triple {4963#true} ~cond := #in~cond; {4963#true} is VALID [2022-04-27 12:16:04,521 INFO L290 TraceCheckUtils]: 34: Hoare triple {4963#true} assume !(0 == ~cond); {4963#true} is VALID [2022-04-27 12:16:04,521 INFO L290 TraceCheckUtils]: 35: Hoare triple {4963#true} assume true; {4963#true} is VALID [2022-04-27 12:16:04,521 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {4963#true} {5041#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #85#return; {5041#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:16:04,521 INFO L272 TraceCheckUtils]: 37: Hoare triple {5041#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {4963#true} is VALID [2022-04-27 12:16:04,521 INFO L290 TraceCheckUtils]: 38: Hoare triple {4963#true} ~cond := #in~cond; {4963#true} is VALID [2022-04-27 12:16:04,522 INFO L290 TraceCheckUtils]: 39: Hoare triple {4963#true} assume !(0 == ~cond); {4963#true} is VALID [2022-04-27 12:16:04,522 INFO L290 TraceCheckUtils]: 40: Hoare triple {4963#true} assume true; {4963#true} is VALID [2022-04-27 12:16:04,522 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {4963#true} {5041#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #87#return; {5041#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:16:04,523 INFO L290 TraceCheckUtils]: 42: Hoare triple {5041#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !(~r~0 >= 2 * ~b~0); {5096#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (not (<= (* main_~b~0 2) main_~r~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:16:04,524 INFO L290 TraceCheckUtils]: 43: Hoare triple {5096#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (not (<= (* main_~b~0 2) main_~r~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {5100#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= main_~a~0 1) (not (<= (* main_~b~0 2) main_~x~0)) (= main_~b~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0) (<= main_~y~0 main_~x~0))} is VALID [2022-04-27 12:16:04,524 INFO L290 TraceCheckUtils]: 44: Hoare triple {5100#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= main_~a~0 1) (not (<= (* main_~b~0 2) main_~x~0)) (= main_~b~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0) (<= main_~y~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5100#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= main_~a~0 1) (not (<= (* main_~b~0 2) main_~x~0)) (= main_~b~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0) (<= main_~y~0 main_~x~0))} is VALID [2022-04-27 12:16:04,525 INFO L290 TraceCheckUtils]: 45: Hoare triple {5100#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= main_~a~0 1) (not (<= (* main_~b~0 2) main_~x~0)) (= main_~b~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0) (<= main_~y~0 main_~x~0))} assume !!(#t~post6 < 20);havoc #t~post6; {5100#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= main_~a~0 1) (not (<= (* main_~b~0 2) main_~x~0)) (= main_~b~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0) (<= main_~y~0 main_~x~0))} is VALID [2022-04-27 12:16:04,525 INFO L272 TraceCheckUtils]: 46: Hoare triple {5100#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= main_~a~0 1) (not (<= (* main_~b~0 2) main_~x~0)) (= main_~b~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0) (<= main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {4963#true} is VALID [2022-04-27 12:16:04,525 INFO L290 TraceCheckUtils]: 47: Hoare triple {4963#true} ~cond := #in~cond; {5113#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:16:04,525 INFO L290 TraceCheckUtils]: 48: Hoare triple {5113#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {5117#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:16:04,526 INFO L290 TraceCheckUtils]: 49: Hoare triple {5117#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {5117#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:16:04,526 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {5117#(not (= |__VERIFIER_assert_#in~cond| 0))} {5100#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= main_~a~0 1) (not (<= (* main_~b~0 2) main_~x~0)) (= main_~b~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0) (<= main_~y~0 main_~x~0))} #79#return; {5124#(and (< main_~x~0 (* main_~y~0 2)) (= main_~x~0 (+ main_~y~0 main_~r~0)) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} is VALID [2022-04-27 12:16:04,527 INFO L272 TraceCheckUtils]: 51: Hoare triple {5124#(and (< main_~x~0 (* main_~y~0 2)) (= main_~x~0 (+ main_~y~0 main_~r~0)) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {5128#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:16:04,527 INFO L290 TraceCheckUtils]: 52: Hoare triple {5128#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {5132#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:16:04,528 INFO L290 TraceCheckUtils]: 53: Hoare triple {5132#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4964#false} is VALID [2022-04-27 12:16:04,528 INFO L290 TraceCheckUtils]: 54: Hoare triple {4964#false} assume !false; {4964#false} is VALID [2022-04-27 12:16:04,528 INFO L134 CoverageAnalysis]: Checked inductivity of 76 backedges. 26 proven. 5 refuted. 0 times theorem prover too weak. 45 trivial. 0 not checked. [2022-04-27 12:16:04,528 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:17:10,230 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:17:10,230 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1526981657] [2022-04-27 12:17:10,230 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:17:10,230 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2083756037] [2022-04-27 12:17:10,231 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2083756037] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 12:17:10,231 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-27 12:17:10,231 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11] total 11 [2022-04-27 12:17:10,231 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [544309229] [2022-04-27 12:17:10,231 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-27 12:17:10,232 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) Word has length 55 [2022-04-27 12:17:10,249 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:17:10,249 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-27 12:17:10,290 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:17:10,290 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-27 12:17:10,290 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:17:10,290 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-27 12:17:10,290 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=58, Invalid=182, Unknown=0, NotChecked=0, Total=240 [2022-04-27 12:17:10,291 INFO L87 Difference]: Start difference. First operand 239 states and 291 transitions. Second operand has 11 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-27 12:17:11,042 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:17:11,042 INFO L93 Difference]: Finished difference Result 318 states and 381 transitions. [2022-04-27 12:17:11,042 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-27 12:17:11,042 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) Word has length 55 [2022-04-27 12:17:11,042 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:17:11,043 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-27 12:17:11,044 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 121 transitions. [2022-04-27 12:17:11,044 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-27 12:17:11,045 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 121 transitions. [2022-04-27 12:17:11,045 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 121 transitions. [2022-04-27 12:17:11,136 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 121 edges. 121 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:17:11,139 INFO L225 Difference]: With dead ends: 318 [2022-04-27 12:17:11,139 INFO L226 Difference]: Without dead ends: 203 [2022-04-27 12:17:11,140 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 88 GetRequests, 70 SyntacticMatches, 2 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 62 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=71, Invalid=235, Unknown=0, NotChecked=0, Total=306 [2022-04-27 12:17:11,140 INFO L413 NwaCegarLoop]: 33 mSDtfsCounter, 24 mSDsluCounter, 150 mSDsCounter, 0 mSdLazyCounter, 269 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 183 SdHoareTripleChecker+Invalid, 283 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 269 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-27 12:17:11,141 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [31 Valid, 183 Invalid, 283 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 269 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-27 12:17:11,141 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 203 states. [2022-04-27 12:17:11,244 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 203 to 202. [2022-04-27 12:17:11,245 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:17:11,245 INFO L82 GeneralOperation]: Start isEquivalent. First operand 203 states. Second operand has 202 states, 130 states have (on average 1.1692307692307693) internal successors, (152), 136 states have internal predecessors, (152), 46 states have call successors, (46), 26 states have call predecessors, (46), 25 states have return successors, (42), 39 states have call predecessors, (42), 42 states have call successors, (42) [2022-04-27 12:17:11,245 INFO L74 IsIncluded]: Start isIncluded. First operand 203 states. Second operand has 202 states, 130 states have (on average 1.1692307692307693) internal successors, (152), 136 states have internal predecessors, (152), 46 states have call successors, (46), 26 states have call predecessors, (46), 25 states have return successors, (42), 39 states have call predecessors, (42), 42 states have call successors, (42) [2022-04-27 12:17:11,246 INFO L87 Difference]: Start difference. First operand 203 states. Second operand has 202 states, 130 states have (on average 1.1692307692307693) internal successors, (152), 136 states have internal predecessors, (152), 46 states have call successors, (46), 26 states have call predecessors, (46), 25 states have return successors, (42), 39 states have call predecessors, (42), 42 states have call successors, (42) [2022-04-27 12:17:11,252 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:17:11,252 INFO L93 Difference]: Finished difference Result 203 states and 241 transitions. [2022-04-27 12:17:11,252 INFO L276 IsEmpty]: Start isEmpty. Operand 203 states and 241 transitions. [2022-04-27 12:17:11,252 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:17:11,252 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:17:11,253 INFO L74 IsIncluded]: Start isIncluded. First operand has 202 states, 130 states have (on average 1.1692307692307693) internal successors, (152), 136 states have internal predecessors, (152), 46 states have call successors, (46), 26 states have call predecessors, (46), 25 states have return successors, (42), 39 states have call predecessors, (42), 42 states have call successors, (42) Second operand 203 states. [2022-04-27 12:17:11,253 INFO L87 Difference]: Start difference. First operand has 202 states, 130 states have (on average 1.1692307692307693) internal successors, (152), 136 states have internal predecessors, (152), 46 states have call successors, (46), 26 states have call predecessors, (46), 25 states have return successors, (42), 39 states have call predecessors, (42), 42 states have call successors, (42) Second operand 203 states. [2022-04-27 12:17:11,257 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:17:11,257 INFO L93 Difference]: Finished difference Result 203 states and 241 transitions. [2022-04-27 12:17:11,257 INFO L276 IsEmpty]: Start isEmpty. Operand 203 states and 241 transitions. [2022-04-27 12:17:11,257 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:17:11,257 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:17:11,258 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:17:11,258 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:17:11,258 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 202 states, 130 states have (on average 1.1692307692307693) internal successors, (152), 136 states have internal predecessors, (152), 46 states have call successors, (46), 26 states have call predecessors, (46), 25 states have return successors, (42), 39 states have call predecessors, (42), 42 states have call successors, (42) [2022-04-27 12:17:11,262 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 202 states to 202 states and 240 transitions. [2022-04-27 12:17:11,262 INFO L78 Accepts]: Start accepts. Automaton has 202 states and 240 transitions. Word has length 55 [2022-04-27 12:17:11,262 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:17:11,262 INFO L495 AbstractCegarLoop]: Abstraction has 202 states and 240 transitions. [2022-04-27 12:17:11,262 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-27 12:17:11,262 INFO L276 IsEmpty]: Start isEmpty. Operand 202 states and 240 transitions. [2022-04-27 12:17:11,263 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-27 12:17:11,263 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:17:11,263 INFO L195 NwaCegarLoop]: trace histogram [8, 7, 7, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:17:11,280 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-04-27 12:17:11,480 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-04-27 12:17:11,480 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:17:11,481 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:17:11,481 INFO L85 PathProgramCache]: Analyzing trace with hash 611309655, now seen corresponding path program 1 times [2022-04-27 12:17:11,481 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:17:11,481 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1118064070] [2022-04-27 12:17:11,481 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:17:11,481 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:17:11,491 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:17:11,491 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [638344984] [2022-04-27 12:17:11,491 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:17:11,491 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:17:11,492 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:17:11,492 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:17:11,497 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-04-27 12:17:11,534 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:17:11,535 INFO L263 TraceCheckSpWp]: Trace formula consists of 178 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 12:17:11,546 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:17:11,547 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:17:11,801 INFO L272 TraceCheckUtils]: 0: Hoare triple {6391#true} call ULTIMATE.init(); {6391#true} is VALID [2022-04-27 12:17:11,802 INFO L290 TraceCheckUtils]: 1: Hoare triple {6391#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(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {6399#(<= ~counter~0 0)} is VALID [2022-04-27 12:17:11,802 INFO L290 TraceCheckUtils]: 2: Hoare triple {6399#(<= ~counter~0 0)} assume true; {6399#(<= ~counter~0 0)} is VALID [2022-04-27 12:17:11,803 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6399#(<= ~counter~0 0)} {6391#true} #93#return; {6399#(<= ~counter~0 0)} is VALID [2022-04-27 12:17:11,803 INFO L272 TraceCheckUtils]: 4: Hoare triple {6399#(<= ~counter~0 0)} call #t~ret8 := main(); {6399#(<= ~counter~0 0)} is VALID [2022-04-27 12:17:11,803 INFO L290 TraceCheckUtils]: 5: Hoare triple {6399#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {6399#(<= ~counter~0 0)} is VALID [2022-04-27 12:17:11,804 INFO L272 TraceCheckUtils]: 6: Hoare triple {6399#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6399#(<= ~counter~0 0)} is VALID [2022-04-27 12:17:11,804 INFO L290 TraceCheckUtils]: 7: Hoare triple {6399#(<= ~counter~0 0)} ~cond := #in~cond; {6399#(<= ~counter~0 0)} is VALID [2022-04-27 12:17:11,804 INFO L290 TraceCheckUtils]: 8: Hoare triple {6399#(<= ~counter~0 0)} assume !(0 == ~cond); {6399#(<= ~counter~0 0)} is VALID [2022-04-27 12:17:11,805 INFO L290 TraceCheckUtils]: 9: Hoare triple {6399#(<= ~counter~0 0)} assume true; {6399#(<= ~counter~0 0)} is VALID [2022-04-27 12:17:11,805 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6399#(<= ~counter~0 0)} {6399#(<= ~counter~0 0)} #77#return; {6399#(<= ~counter~0 0)} is VALID [2022-04-27 12:17:11,805 INFO L290 TraceCheckUtils]: 11: Hoare triple {6399#(<= ~counter~0 0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {6399#(<= ~counter~0 0)} is VALID [2022-04-27 12:17:11,806 INFO L290 TraceCheckUtils]: 12: Hoare triple {6399#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6433#(<= ~counter~0 1)} is VALID [2022-04-27 12:17:11,806 INFO L290 TraceCheckUtils]: 13: Hoare triple {6433#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {6433#(<= ~counter~0 1)} is VALID [2022-04-27 12:17:11,807 INFO L272 TraceCheckUtils]: 14: Hoare triple {6433#(<= ~counter~0 1)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {6433#(<= ~counter~0 1)} is VALID [2022-04-27 12:17:11,807 INFO L290 TraceCheckUtils]: 15: Hoare triple {6433#(<= ~counter~0 1)} ~cond := #in~cond; {6433#(<= ~counter~0 1)} is VALID [2022-04-27 12:17:11,807 INFO L290 TraceCheckUtils]: 16: Hoare triple {6433#(<= ~counter~0 1)} assume !(0 == ~cond); {6433#(<= ~counter~0 1)} is VALID [2022-04-27 12:17:11,808 INFO L290 TraceCheckUtils]: 17: Hoare triple {6433#(<= ~counter~0 1)} assume true; {6433#(<= ~counter~0 1)} is VALID [2022-04-27 12:17:11,808 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {6433#(<= ~counter~0 1)} {6433#(<= ~counter~0 1)} #79#return; {6433#(<= ~counter~0 1)} is VALID [2022-04-27 12:17:11,809 INFO L272 TraceCheckUtils]: 19: Hoare triple {6433#(<= ~counter~0 1)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6433#(<= ~counter~0 1)} is VALID [2022-04-27 12:17:11,809 INFO L290 TraceCheckUtils]: 20: Hoare triple {6433#(<= ~counter~0 1)} ~cond := #in~cond; {6433#(<= ~counter~0 1)} is VALID [2022-04-27 12:17:11,809 INFO L290 TraceCheckUtils]: 21: Hoare triple {6433#(<= ~counter~0 1)} assume !(0 == ~cond); {6433#(<= ~counter~0 1)} is VALID [2022-04-27 12:17:11,810 INFO L290 TraceCheckUtils]: 22: Hoare triple {6433#(<= ~counter~0 1)} assume true; {6433#(<= ~counter~0 1)} is VALID [2022-04-27 12:17:11,810 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {6433#(<= ~counter~0 1)} {6433#(<= ~counter~0 1)} #81#return; {6433#(<= ~counter~0 1)} is VALID [2022-04-27 12:17:11,811 INFO L290 TraceCheckUtils]: 24: Hoare triple {6433#(<= ~counter~0 1)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {6433#(<= ~counter~0 1)} is VALID [2022-04-27 12:17:11,811 INFO L290 TraceCheckUtils]: 25: Hoare triple {6433#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6473#(<= ~counter~0 2)} is VALID [2022-04-27 12:17:11,812 INFO L290 TraceCheckUtils]: 26: Hoare triple {6473#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {6473#(<= ~counter~0 2)} is VALID [2022-04-27 12:17:11,812 INFO L272 TraceCheckUtils]: 27: Hoare triple {6473#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {6473#(<= ~counter~0 2)} is VALID [2022-04-27 12:17:11,812 INFO L290 TraceCheckUtils]: 28: Hoare triple {6473#(<= ~counter~0 2)} ~cond := #in~cond; {6473#(<= ~counter~0 2)} is VALID [2022-04-27 12:17:11,813 INFO L290 TraceCheckUtils]: 29: Hoare triple {6473#(<= ~counter~0 2)} assume !(0 == ~cond); {6473#(<= ~counter~0 2)} is VALID [2022-04-27 12:17:11,813 INFO L290 TraceCheckUtils]: 30: Hoare triple {6473#(<= ~counter~0 2)} assume true; {6473#(<= ~counter~0 2)} is VALID [2022-04-27 12:17:11,813 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {6473#(<= ~counter~0 2)} {6473#(<= ~counter~0 2)} #83#return; {6473#(<= ~counter~0 2)} is VALID [2022-04-27 12:17:11,814 INFO L272 TraceCheckUtils]: 32: Hoare triple {6473#(<= ~counter~0 2)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6473#(<= ~counter~0 2)} is VALID [2022-04-27 12:17:11,814 INFO L290 TraceCheckUtils]: 33: Hoare triple {6473#(<= ~counter~0 2)} ~cond := #in~cond; {6473#(<= ~counter~0 2)} is VALID [2022-04-27 12:17:11,815 INFO L290 TraceCheckUtils]: 34: Hoare triple {6473#(<= ~counter~0 2)} assume !(0 == ~cond); {6473#(<= ~counter~0 2)} is VALID [2022-04-27 12:17:11,815 INFO L290 TraceCheckUtils]: 35: Hoare triple {6473#(<= ~counter~0 2)} assume true; {6473#(<= ~counter~0 2)} is VALID [2022-04-27 12:17:11,815 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {6473#(<= ~counter~0 2)} {6473#(<= ~counter~0 2)} #85#return; {6473#(<= ~counter~0 2)} is VALID [2022-04-27 12:17:11,816 INFO L272 TraceCheckUtils]: 37: Hoare triple {6473#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {6473#(<= ~counter~0 2)} is VALID [2022-04-27 12:17:11,816 INFO L290 TraceCheckUtils]: 38: Hoare triple {6473#(<= ~counter~0 2)} ~cond := #in~cond; {6473#(<= ~counter~0 2)} is VALID [2022-04-27 12:17:11,816 INFO L290 TraceCheckUtils]: 39: Hoare triple {6473#(<= ~counter~0 2)} assume !(0 == ~cond); {6473#(<= ~counter~0 2)} is VALID [2022-04-27 12:17:11,817 INFO L290 TraceCheckUtils]: 40: Hoare triple {6473#(<= ~counter~0 2)} assume true; {6473#(<= ~counter~0 2)} is VALID [2022-04-27 12:17:11,817 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {6473#(<= ~counter~0 2)} {6473#(<= ~counter~0 2)} #87#return; {6473#(<= ~counter~0 2)} is VALID [2022-04-27 12:17:11,817 INFO L290 TraceCheckUtils]: 42: Hoare triple {6473#(<= ~counter~0 2)} assume !!(~r~0 >= 2 * ~b~0); {6473#(<= ~counter~0 2)} is VALID [2022-04-27 12:17:11,818 INFO L272 TraceCheckUtils]: 43: Hoare triple {6473#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {6473#(<= ~counter~0 2)} is VALID [2022-04-27 12:17:11,818 INFO L290 TraceCheckUtils]: 44: Hoare triple {6473#(<= ~counter~0 2)} ~cond := #in~cond; {6473#(<= ~counter~0 2)} is VALID [2022-04-27 12:17:11,818 INFO L290 TraceCheckUtils]: 45: Hoare triple {6473#(<= ~counter~0 2)} assume !(0 == ~cond); {6473#(<= ~counter~0 2)} is VALID [2022-04-27 12:17:11,819 INFO L290 TraceCheckUtils]: 46: Hoare triple {6473#(<= ~counter~0 2)} assume true; {6473#(<= ~counter~0 2)} is VALID [2022-04-27 12:17:11,819 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {6473#(<= ~counter~0 2)} {6473#(<= ~counter~0 2)} #89#return; {6473#(<= ~counter~0 2)} is VALID [2022-04-27 12:17:11,820 INFO L290 TraceCheckUtils]: 48: Hoare triple {6473#(<= ~counter~0 2)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {6473#(<= ~counter~0 2)} is VALID [2022-04-27 12:17:11,820 INFO L290 TraceCheckUtils]: 49: Hoare triple {6473#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6546#(<= |main_#t~post7| 2)} is VALID [2022-04-27 12:17:11,820 INFO L290 TraceCheckUtils]: 50: Hoare triple {6546#(<= |main_#t~post7| 2)} assume !(#t~post7 < 20);havoc #t~post7; {6392#false} is VALID [2022-04-27 12:17:11,820 INFO L290 TraceCheckUtils]: 51: Hoare triple {6392#false} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {6392#false} is VALID [2022-04-27 12:17:11,820 INFO L290 TraceCheckUtils]: 52: Hoare triple {6392#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6392#false} is VALID [2022-04-27 12:17:11,821 INFO L290 TraceCheckUtils]: 53: Hoare triple {6392#false} assume !!(#t~post6 < 20);havoc #t~post6; {6392#false} is VALID [2022-04-27 12:17:11,821 INFO L272 TraceCheckUtils]: 54: Hoare triple {6392#false} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {6392#false} is VALID [2022-04-27 12:17:11,821 INFO L290 TraceCheckUtils]: 55: Hoare triple {6392#false} ~cond := #in~cond; {6392#false} is VALID [2022-04-27 12:17:11,821 INFO L290 TraceCheckUtils]: 56: Hoare triple {6392#false} assume !(0 == ~cond); {6392#false} is VALID [2022-04-27 12:17:11,821 INFO L290 TraceCheckUtils]: 57: Hoare triple {6392#false} assume true; {6392#false} is VALID [2022-04-27 12:17:11,821 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {6392#false} {6392#false} #79#return; {6392#false} is VALID [2022-04-27 12:17:11,821 INFO L272 TraceCheckUtils]: 59: Hoare triple {6392#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6392#false} is VALID [2022-04-27 12:17:11,821 INFO L290 TraceCheckUtils]: 60: Hoare triple {6392#false} ~cond := #in~cond; {6392#false} is VALID [2022-04-27 12:17:11,821 INFO L290 TraceCheckUtils]: 61: Hoare triple {6392#false} assume 0 == ~cond; {6392#false} is VALID [2022-04-27 12:17:11,821 INFO L290 TraceCheckUtils]: 62: Hoare triple {6392#false} assume !false; {6392#false} is VALID [2022-04-27 12:17:11,821 INFO L134 CoverageAnalysis]: Checked inductivity of 104 backedges. 40 proven. 34 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-04-27 12:17:11,821 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:17:12,104 INFO L290 TraceCheckUtils]: 62: Hoare triple {6392#false} assume !false; {6392#false} is VALID [2022-04-27 12:17:12,104 INFO L290 TraceCheckUtils]: 61: Hoare triple {6392#false} assume 0 == ~cond; {6392#false} is VALID [2022-04-27 12:17:12,104 INFO L290 TraceCheckUtils]: 60: Hoare triple {6392#false} ~cond := #in~cond; {6392#false} is VALID [2022-04-27 12:17:12,105 INFO L272 TraceCheckUtils]: 59: Hoare triple {6392#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6392#false} is VALID [2022-04-27 12:17:12,105 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {6391#true} {6392#false} #79#return; {6392#false} is VALID [2022-04-27 12:17:12,105 INFO L290 TraceCheckUtils]: 57: Hoare triple {6391#true} assume true; {6391#true} is VALID [2022-04-27 12:17:12,105 INFO L290 TraceCheckUtils]: 56: Hoare triple {6391#true} assume !(0 == ~cond); {6391#true} is VALID [2022-04-27 12:17:12,105 INFO L290 TraceCheckUtils]: 55: Hoare triple {6391#true} ~cond := #in~cond; {6391#true} is VALID [2022-04-27 12:17:12,105 INFO L272 TraceCheckUtils]: 54: Hoare triple {6392#false} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {6391#true} is VALID [2022-04-27 12:17:12,105 INFO L290 TraceCheckUtils]: 53: Hoare triple {6392#false} assume !!(#t~post6 < 20);havoc #t~post6; {6392#false} is VALID [2022-04-27 12:17:12,105 INFO L290 TraceCheckUtils]: 52: Hoare triple {6392#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6392#false} is VALID [2022-04-27 12:17:12,105 INFO L290 TraceCheckUtils]: 51: Hoare triple {6392#false} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {6392#false} is VALID [2022-04-27 12:17:12,111 INFO L290 TraceCheckUtils]: 50: Hoare triple {6622#(< |main_#t~post7| 20)} assume !(#t~post7 < 20);havoc #t~post7; {6392#false} is VALID [2022-04-27 12:17:12,111 INFO L290 TraceCheckUtils]: 49: Hoare triple {6626#(< ~counter~0 20)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6622#(< |main_#t~post7| 20)} is VALID [2022-04-27 12:17:12,112 INFO L290 TraceCheckUtils]: 48: Hoare triple {6626#(< ~counter~0 20)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {6626#(< ~counter~0 20)} is VALID [2022-04-27 12:17:12,112 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {6391#true} {6626#(< ~counter~0 20)} #89#return; {6626#(< ~counter~0 20)} is VALID [2022-04-27 12:17:12,112 INFO L290 TraceCheckUtils]: 46: Hoare triple {6391#true} assume true; {6391#true} is VALID [2022-04-27 12:17:12,112 INFO L290 TraceCheckUtils]: 45: Hoare triple {6391#true} assume !(0 == ~cond); {6391#true} is VALID [2022-04-27 12:17:12,112 INFO L290 TraceCheckUtils]: 44: Hoare triple {6391#true} ~cond := #in~cond; {6391#true} is VALID [2022-04-27 12:17:12,112 INFO L272 TraceCheckUtils]: 43: Hoare triple {6626#(< ~counter~0 20)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {6391#true} is VALID [2022-04-27 12:17:12,113 INFO L290 TraceCheckUtils]: 42: Hoare triple {6626#(< ~counter~0 20)} assume !!(~r~0 >= 2 * ~b~0); {6626#(< ~counter~0 20)} is VALID [2022-04-27 12:17:12,113 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {6391#true} {6626#(< ~counter~0 20)} #87#return; {6626#(< ~counter~0 20)} is VALID [2022-04-27 12:17:12,113 INFO L290 TraceCheckUtils]: 40: Hoare triple {6391#true} assume true; {6391#true} is VALID [2022-04-27 12:17:12,113 INFO L290 TraceCheckUtils]: 39: Hoare triple {6391#true} assume !(0 == ~cond); {6391#true} is VALID [2022-04-27 12:17:12,113 INFO L290 TraceCheckUtils]: 38: Hoare triple {6391#true} ~cond := #in~cond; {6391#true} is VALID [2022-04-27 12:17:12,113 INFO L272 TraceCheckUtils]: 37: Hoare triple {6626#(< ~counter~0 20)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {6391#true} is VALID [2022-04-27 12:17:12,114 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {6391#true} {6626#(< ~counter~0 20)} #85#return; {6626#(< ~counter~0 20)} is VALID [2022-04-27 12:17:12,114 INFO L290 TraceCheckUtils]: 35: Hoare triple {6391#true} assume true; {6391#true} is VALID [2022-04-27 12:17:12,114 INFO L290 TraceCheckUtils]: 34: Hoare triple {6391#true} assume !(0 == ~cond); {6391#true} is VALID [2022-04-27 12:17:12,114 INFO L290 TraceCheckUtils]: 33: Hoare triple {6391#true} ~cond := #in~cond; {6391#true} is VALID [2022-04-27 12:17:12,114 INFO L272 TraceCheckUtils]: 32: Hoare triple {6626#(< ~counter~0 20)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6391#true} is VALID [2022-04-27 12:17:12,114 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {6391#true} {6626#(< ~counter~0 20)} #83#return; {6626#(< ~counter~0 20)} is VALID [2022-04-27 12:17:12,114 INFO L290 TraceCheckUtils]: 30: Hoare triple {6391#true} assume true; {6391#true} is VALID [2022-04-27 12:17:12,114 INFO L290 TraceCheckUtils]: 29: Hoare triple {6391#true} assume !(0 == ~cond); {6391#true} is VALID [2022-04-27 12:17:12,114 INFO L290 TraceCheckUtils]: 28: Hoare triple {6391#true} ~cond := #in~cond; {6391#true} is VALID [2022-04-27 12:17:12,114 INFO L272 TraceCheckUtils]: 27: Hoare triple {6626#(< ~counter~0 20)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {6391#true} is VALID [2022-04-27 12:17:12,115 INFO L290 TraceCheckUtils]: 26: Hoare triple {6626#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {6626#(< ~counter~0 20)} is VALID [2022-04-27 12:17:12,115 INFO L290 TraceCheckUtils]: 25: Hoare triple {6699#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6626#(< ~counter~0 20)} is VALID [2022-04-27 12:17:12,116 INFO L290 TraceCheckUtils]: 24: Hoare triple {6699#(< ~counter~0 19)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {6699#(< ~counter~0 19)} is VALID [2022-04-27 12:17:12,116 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {6391#true} {6699#(< ~counter~0 19)} #81#return; {6699#(< ~counter~0 19)} is VALID [2022-04-27 12:17:12,116 INFO L290 TraceCheckUtils]: 22: Hoare triple {6391#true} assume true; {6391#true} is VALID [2022-04-27 12:17:12,116 INFO L290 TraceCheckUtils]: 21: Hoare triple {6391#true} assume !(0 == ~cond); {6391#true} is VALID [2022-04-27 12:17:12,116 INFO L290 TraceCheckUtils]: 20: Hoare triple {6391#true} ~cond := #in~cond; {6391#true} is VALID [2022-04-27 12:17:12,116 INFO L272 TraceCheckUtils]: 19: Hoare triple {6699#(< ~counter~0 19)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6391#true} is VALID [2022-04-27 12:17:12,117 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {6391#true} {6699#(< ~counter~0 19)} #79#return; {6699#(< ~counter~0 19)} is VALID [2022-04-27 12:17:12,117 INFO L290 TraceCheckUtils]: 17: Hoare triple {6391#true} assume true; {6391#true} is VALID [2022-04-27 12:17:12,117 INFO L290 TraceCheckUtils]: 16: Hoare triple {6391#true} assume !(0 == ~cond); {6391#true} is VALID [2022-04-27 12:17:12,117 INFO L290 TraceCheckUtils]: 15: Hoare triple {6391#true} ~cond := #in~cond; {6391#true} is VALID [2022-04-27 12:17:12,117 INFO L272 TraceCheckUtils]: 14: Hoare triple {6699#(< ~counter~0 19)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {6391#true} is VALID [2022-04-27 12:17:12,117 INFO L290 TraceCheckUtils]: 13: Hoare triple {6699#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {6699#(< ~counter~0 19)} is VALID [2022-04-27 12:17:12,118 INFO L290 TraceCheckUtils]: 12: Hoare triple {6739#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6699#(< ~counter~0 19)} is VALID [2022-04-27 12:17:12,118 INFO L290 TraceCheckUtils]: 11: Hoare triple {6739#(< ~counter~0 18)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {6739#(< ~counter~0 18)} is VALID [2022-04-27 12:17:12,118 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6391#true} {6739#(< ~counter~0 18)} #77#return; {6739#(< ~counter~0 18)} is VALID [2022-04-27 12:17:12,118 INFO L290 TraceCheckUtils]: 9: Hoare triple {6391#true} assume true; {6391#true} is VALID [2022-04-27 12:17:12,118 INFO L290 TraceCheckUtils]: 8: Hoare triple {6391#true} assume !(0 == ~cond); {6391#true} is VALID [2022-04-27 12:17:12,118 INFO L290 TraceCheckUtils]: 7: Hoare triple {6391#true} ~cond := #in~cond; {6391#true} is VALID [2022-04-27 12:17:12,118 INFO L272 TraceCheckUtils]: 6: Hoare triple {6739#(< ~counter~0 18)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6391#true} is VALID [2022-04-27 12:17:12,119 INFO L290 TraceCheckUtils]: 5: Hoare triple {6739#(< ~counter~0 18)} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {6739#(< ~counter~0 18)} is VALID [2022-04-27 12:17:12,119 INFO L272 TraceCheckUtils]: 4: Hoare triple {6739#(< ~counter~0 18)} call #t~ret8 := main(); {6739#(< ~counter~0 18)} is VALID [2022-04-27 12:17:12,119 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6739#(< ~counter~0 18)} {6391#true} #93#return; {6739#(< ~counter~0 18)} is VALID [2022-04-27 12:17:12,120 INFO L290 TraceCheckUtils]: 2: Hoare triple {6739#(< ~counter~0 18)} assume true; {6739#(< ~counter~0 18)} is VALID [2022-04-27 12:17:12,120 INFO L290 TraceCheckUtils]: 1: Hoare triple {6391#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(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {6739#(< ~counter~0 18)} is VALID [2022-04-27 12:17:12,120 INFO L272 TraceCheckUtils]: 0: Hoare triple {6391#true} call ULTIMATE.init(); {6391#true} is VALID [2022-04-27 12:17:12,120 INFO L134 CoverageAnalysis]: Checked inductivity of 104 backedges. 18 proven. 2 refuted. 0 times theorem prover too weak. 84 trivial. 0 not checked. [2022-04-27 12:17:12,120 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:17:12,120 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1118064070] [2022-04-27 12:17:12,121 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:17:12,121 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [638344984] [2022-04-27 12:17:12,121 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [638344984] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 12:17:12,121 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 12:17:12,121 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-27 12:17:12,121 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1543207389] [2022-04-27 12:17:12,121 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 12:17:12,121 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.9) internal successors, (49), 10 states have internal predecessors, (49), 8 states have call successors, (20), 6 states have call predecessors, (20), 6 states have return successors, (18), 7 states have call predecessors, (18), 8 states have call successors, (18) Word has length 63 [2022-04-27 12:17:12,122 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:17:12,122 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 4.9) internal successors, (49), 10 states have internal predecessors, (49), 8 states have call successors, (20), 6 states have call predecessors, (20), 6 states have return successors, (18), 7 states have call predecessors, (18), 8 states have call successors, (18) [2022-04-27 12:17:12,175 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 87 edges. 87 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:17:12,176 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-27 12:17:12,176 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:17:12,176 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-27 12:17:12,176 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-27 12:17:12,176 INFO L87 Difference]: Start difference. First operand 202 states and 240 transitions. Second operand has 10 states, 10 states have (on average 4.9) internal successors, (49), 10 states have internal predecessors, (49), 8 states have call successors, (20), 6 states have call predecessors, (20), 6 states have return successors, (18), 7 states have call predecessors, (18), 8 states have call successors, (18) [2022-04-27 12:17:12,703 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:17:12,703 INFO L93 Difference]: Finished difference Result 308 states and 368 transitions. [2022-04-27 12:17:12,703 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-27 12:17:12,704 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.9) internal successors, (49), 10 states have internal predecessors, (49), 8 states have call successors, (20), 6 states have call predecessors, (20), 6 states have return successors, (18), 7 states have call predecessors, (18), 8 states have call successors, (18) Word has length 63 [2022-04-27 12:17:12,704 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:17:12,704 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.9) internal successors, (49), 10 states have internal predecessors, (49), 8 states have call successors, (20), 6 states have call predecessors, (20), 6 states have return successors, (18), 7 states have call predecessors, (18), 8 states have call successors, (18) [2022-04-27 12:17:12,706 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 177 transitions. [2022-04-27 12:17:12,706 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.9) internal successors, (49), 10 states have internal predecessors, (49), 8 states have call successors, (20), 6 states have call predecessors, (20), 6 states have return successors, (18), 7 states have call predecessors, (18), 8 states have call successors, (18) [2022-04-27 12:17:12,707 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 177 transitions. [2022-04-27 12:17:12,708 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 177 transitions. [2022-04-27 12:17:12,826 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 177 edges. 177 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:17:12,829 INFO L225 Difference]: With dead ends: 308 [2022-04-27 12:17:12,830 INFO L226 Difference]: Without dead ends: 214 [2022-04-27 12:17:12,830 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 129 GetRequests, 117 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=63, Invalid=119, Unknown=0, NotChecked=0, Total=182 [2022-04-27 12:17:12,831 INFO L413 NwaCegarLoop]: 61 mSDtfsCounter, 85 mSDsluCounter, 219 mSDsCounter, 0 mSdLazyCounter, 110 mSolverCounterSat, 36 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 85 SdHoareTripleChecker+Valid, 280 SdHoareTripleChecker+Invalid, 146 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 36 IncrementalHoareTripleChecker+Valid, 110 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 12:17:12,831 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [85 Valid, 280 Invalid, 146 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [36 Valid, 110 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 12:17:12,831 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 214 states. [2022-04-27 12:17:12,916 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 214 to 210. [2022-04-27 12:17:12,916 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:17:12,916 INFO L82 GeneralOperation]: Start isEquivalent. First operand 214 states. Second operand has 210 states, 138 states have (on average 1.1304347826086956) internal successors, (156), 142 states have internal predecessors, (156), 46 states have call successors, (46), 26 states have call predecessors, (46), 25 states have return successors, (42), 41 states have call predecessors, (42), 42 states have call successors, (42) [2022-04-27 12:17:12,917 INFO L74 IsIncluded]: Start isIncluded. First operand 214 states. Second operand has 210 states, 138 states have (on average 1.1304347826086956) internal successors, (156), 142 states have internal predecessors, (156), 46 states have call successors, (46), 26 states have call predecessors, (46), 25 states have return successors, (42), 41 states have call predecessors, (42), 42 states have call successors, (42) [2022-04-27 12:17:12,917 INFO L87 Difference]: Start difference. First operand 214 states. Second operand has 210 states, 138 states have (on average 1.1304347826086956) internal successors, (156), 142 states have internal predecessors, (156), 46 states have call successors, (46), 26 states have call predecessors, (46), 25 states have return successors, (42), 41 states have call predecessors, (42), 42 states have call successors, (42) [2022-04-27 12:17:12,921 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:17:12,921 INFO L93 Difference]: Finished difference Result 214 states and 246 transitions. [2022-04-27 12:17:12,921 INFO L276 IsEmpty]: Start isEmpty. Operand 214 states and 246 transitions. [2022-04-27 12:17:12,922 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:17:12,922 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:17:12,922 INFO L74 IsIncluded]: Start isIncluded. First operand has 210 states, 138 states have (on average 1.1304347826086956) internal successors, (156), 142 states have internal predecessors, (156), 46 states have call successors, (46), 26 states have call predecessors, (46), 25 states have return successors, (42), 41 states have call predecessors, (42), 42 states have call successors, (42) Second operand 214 states. [2022-04-27 12:17:12,922 INFO L87 Difference]: Start difference. First operand has 210 states, 138 states have (on average 1.1304347826086956) internal successors, (156), 142 states have internal predecessors, (156), 46 states have call successors, (46), 26 states have call predecessors, (46), 25 states have return successors, (42), 41 states have call predecessors, (42), 42 states have call successors, (42) Second operand 214 states. [2022-04-27 12:17:12,928 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:17:12,928 INFO L93 Difference]: Finished difference Result 214 states and 246 transitions. [2022-04-27 12:17:12,928 INFO L276 IsEmpty]: Start isEmpty. Operand 214 states and 246 transitions. [2022-04-27 12:17:12,928 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:17:12,928 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:17:12,928 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:17:12,928 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:17:12,929 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 210 states, 138 states have (on average 1.1304347826086956) internal successors, (156), 142 states have internal predecessors, (156), 46 states have call successors, (46), 26 states have call predecessors, (46), 25 states have return successors, (42), 41 states have call predecessors, (42), 42 states have call successors, (42) [2022-04-27 12:17:12,932 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 210 states to 210 states and 244 transitions. [2022-04-27 12:17:12,933 INFO L78 Accepts]: Start accepts. Automaton has 210 states and 244 transitions. Word has length 63 [2022-04-27 12:17:12,933 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:17:12,933 INFO L495 AbstractCegarLoop]: Abstraction has 210 states and 244 transitions. [2022-04-27 12:17:12,933 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 4.9) internal successors, (49), 10 states have internal predecessors, (49), 8 states have call successors, (20), 6 states have call predecessors, (20), 6 states have return successors, (18), 7 states have call predecessors, (18), 8 states have call successors, (18) [2022-04-27 12:17:12,933 INFO L276 IsEmpty]: Start isEmpty. Operand 210 states and 244 transitions. [2022-04-27 12:17:12,933 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 80 [2022-04-27 12:17:12,934 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:17:12,934 INFO L195 NwaCegarLoop]: trace histogram [11, 10, 10, 2, 2, 2, 2, 2, 2, 2, 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, 1, 1] [2022-04-27 12:17:12,955 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2022-04-27 12:17:13,144 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable10 [2022-04-27 12:17:13,144 INFO L420 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:17:13,144 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:17:13,145 INFO L85 PathProgramCache]: Analyzing trace with hash 1777426592, now seen corresponding path program 1 times [2022-04-27 12:17:13,145 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:17:13,145 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1317253449] [2022-04-27 12:17:13,145 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:17:13,145 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:17:13,156 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:17:13,156 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1572483107] [2022-04-27 12:17:13,156 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:17:13,156 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:17:13,156 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:17:13,157 INFO L229 MonitoredProcess]: Starting monitored process 12 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:17:13,158 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Waiting until timeout for monitored process [2022-04-27 12:17:13,201 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:17:13,202 INFO L263 TraceCheckSpWp]: Trace formula consists of 206 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-27 12:17:13,213 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:17:13,214 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:17:13,616 INFO L272 TraceCheckUtils]: 0: Hoare triple {7952#true} call ULTIMATE.init(); {7952#true} is VALID [2022-04-27 12:17:13,616 INFO L290 TraceCheckUtils]: 1: Hoare triple {7952#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(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {7952#true} is VALID [2022-04-27 12:17:13,616 INFO L290 TraceCheckUtils]: 2: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-27 12:17:13,616 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7952#true} {7952#true} #93#return; {7952#true} is VALID [2022-04-27 12:17:13,616 INFO L272 TraceCheckUtils]: 4: Hoare triple {7952#true} call #t~ret8 := main(); {7952#true} is VALID [2022-04-27 12:17:13,616 INFO L290 TraceCheckUtils]: 5: Hoare triple {7952#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {7952#true} is VALID [2022-04-27 12:17:13,616 INFO L272 TraceCheckUtils]: 6: Hoare triple {7952#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7952#true} is VALID [2022-04-27 12:17:13,616 INFO L290 TraceCheckUtils]: 7: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-27 12:17:13,616 INFO L290 TraceCheckUtils]: 8: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-27 12:17:13,616 INFO L290 TraceCheckUtils]: 9: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-27 12:17:13,616 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7952#true} {7952#true} #77#return; {7952#true} is VALID [2022-04-27 12:17:13,617 INFO L290 TraceCheckUtils]: 11: Hoare triple {7952#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {7990#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-27 12:17:13,617 INFO L290 TraceCheckUtils]: 12: Hoare triple {7990#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7990#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-27 12:17:13,617 INFO L290 TraceCheckUtils]: 13: Hoare triple {7990#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 20);havoc #t~post6; {7990#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-27 12:17:13,617 INFO L272 TraceCheckUtils]: 14: Hoare triple {7990#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {7952#true} is VALID [2022-04-27 12:17:13,618 INFO L290 TraceCheckUtils]: 15: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-27 12:17:13,618 INFO L290 TraceCheckUtils]: 16: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-27 12:17:13,618 INFO L290 TraceCheckUtils]: 17: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-27 12:17:13,618 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {7952#true} {7990#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #79#return; {7990#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-27 12:17:13,618 INFO L272 TraceCheckUtils]: 19: Hoare triple {7990#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {7952#true} is VALID [2022-04-27 12:17:13,618 INFO L290 TraceCheckUtils]: 20: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-27 12:17:13,618 INFO L290 TraceCheckUtils]: 21: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-27 12:17:13,618 INFO L290 TraceCheckUtils]: 22: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-27 12:17:13,619 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {7952#true} {7990#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #81#return; {7990#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-27 12:17:13,619 INFO L290 TraceCheckUtils]: 24: Hoare triple {7990#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:17:13,620 INFO L290 TraceCheckUtils]: 25: Hoare triple {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:17:13,620 INFO L290 TraceCheckUtils]: 26: Hoare triple {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 20);havoc #t~post7; {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:17:13,620 INFO L272 TraceCheckUtils]: 27: Hoare triple {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {7952#true} is VALID [2022-04-27 12:17:13,620 INFO L290 TraceCheckUtils]: 28: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-27 12:17:13,620 INFO L290 TraceCheckUtils]: 29: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-27 12:17:13,620 INFO L290 TraceCheckUtils]: 30: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-27 12:17:13,621 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {7952#true} {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #83#return; {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:17:13,621 INFO L272 TraceCheckUtils]: 32: Hoare triple {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {7952#true} is VALID [2022-04-27 12:17:13,621 INFO L290 TraceCheckUtils]: 33: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-27 12:17:13,621 INFO L290 TraceCheckUtils]: 34: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-27 12:17:13,621 INFO L290 TraceCheckUtils]: 35: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-27 12:17:13,621 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {7952#true} {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #85#return; {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:17:13,621 INFO L272 TraceCheckUtils]: 37: Hoare triple {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {7952#true} is VALID [2022-04-27 12:17:13,621 INFO L290 TraceCheckUtils]: 38: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-27 12:17:13,621 INFO L290 TraceCheckUtils]: 39: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-27 12:17:13,621 INFO L290 TraceCheckUtils]: 40: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-27 12:17:13,622 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {7952#true} {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #87#return; {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:17:13,622 INFO L290 TraceCheckUtils]: 42: Hoare triple {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(~r~0 >= 2 * ~b~0); {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:17:13,622 INFO L272 TraceCheckUtils]: 43: Hoare triple {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {7952#true} is VALID [2022-04-27 12:17:13,622 INFO L290 TraceCheckUtils]: 44: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-27 12:17:13,622 INFO L290 TraceCheckUtils]: 45: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-27 12:17:13,622 INFO L290 TraceCheckUtils]: 46: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-27 12:17:13,623 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {7952#true} {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #89#return; {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:17:13,623 INFO L290 TraceCheckUtils]: 48: Hoare triple {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-27 12:17:13,624 INFO L290 TraceCheckUtils]: 49: Hoare triple {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-27 12:17:13,624 INFO L290 TraceCheckUtils]: 50: Hoare triple {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} assume !!(#t~post7 < 20);havoc #t~post7; {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-27 12:17:13,624 INFO L272 TraceCheckUtils]: 51: Hoare triple {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {7952#true} is VALID [2022-04-27 12:17:13,624 INFO L290 TraceCheckUtils]: 52: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-27 12:17:13,624 INFO L290 TraceCheckUtils]: 53: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-27 12:17:13,624 INFO L290 TraceCheckUtils]: 54: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-27 12:17:13,624 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {7952#true} {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} #83#return; {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-27 12:17:13,625 INFO L272 TraceCheckUtils]: 56: Hoare triple {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {7952#true} is VALID [2022-04-27 12:17:13,625 INFO L290 TraceCheckUtils]: 57: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-27 12:17:13,625 INFO L290 TraceCheckUtils]: 58: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-27 12:17:13,625 INFO L290 TraceCheckUtils]: 59: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-27 12:17:13,625 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {7952#true} {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} #85#return; {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-27 12:17:13,625 INFO L272 TraceCheckUtils]: 61: Hoare triple {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {7952#true} is VALID [2022-04-27 12:17:13,625 INFO L290 TraceCheckUtils]: 62: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-27 12:17:13,625 INFO L290 TraceCheckUtils]: 63: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-27 12:17:13,625 INFO L290 TraceCheckUtils]: 64: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-27 12:17:13,626 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {7952#true} {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} #87#return; {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-27 12:17:13,626 INFO L290 TraceCheckUtils]: 66: Hoare triple {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} assume !(~r~0 >= 2 * ~b~0); {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-27 12:17:13,627 INFO L290 TraceCheckUtils]: 67: Hoare triple {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {8161#(and (= main_~q~0 2) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))))} is VALID [2022-04-27 12:17:13,628 INFO L290 TraceCheckUtils]: 68: Hoare triple {8161#(and (= main_~q~0 2) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8161#(and (= main_~q~0 2) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))))} is VALID [2022-04-27 12:17:13,629 INFO L290 TraceCheckUtils]: 69: Hoare triple {8161#(and (= main_~q~0 2) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))))} assume !!(#t~post6 < 20);havoc #t~post6; {8161#(and (= main_~q~0 2) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))))} is VALID [2022-04-27 12:17:13,629 INFO L272 TraceCheckUtils]: 70: Hoare triple {8161#(and (= main_~q~0 2) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {7952#true} is VALID [2022-04-27 12:17:13,629 INFO L290 TraceCheckUtils]: 71: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-27 12:17:13,629 INFO L290 TraceCheckUtils]: 72: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-27 12:17:13,629 INFO L290 TraceCheckUtils]: 73: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-27 12:17:13,629 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {7952#true} {8161#(and (= main_~q~0 2) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))))} #79#return; {8161#(and (= main_~q~0 2) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))))} is VALID [2022-04-27 12:17:13,630 INFO L272 TraceCheckUtils]: 75: Hoare triple {8161#(and (= main_~q~0 2) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8186#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:17:13,630 INFO L290 TraceCheckUtils]: 76: Hoare triple {8186#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8190#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:17:13,630 INFO L290 TraceCheckUtils]: 77: Hoare triple {8190#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7953#false} is VALID [2022-04-27 12:17:13,630 INFO L290 TraceCheckUtils]: 78: Hoare triple {7953#false} assume !false; {7953#false} is VALID [2022-04-27 12:17:13,631 INFO L134 CoverageAnalysis]: Checked inductivity of 210 backedges. 20 proven. 10 refuted. 0 times theorem prover too weak. 180 trivial. 0 not checked. [2022-04-27 12:17:13,631 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:17:13,915 INFO L290 TraceCheckUtils]: 78: Hoare triple {7953#false} assume !false; {7953#false} is VALID [2022-04-27 12:17:13,915 INFO L290 TraceCheckUtils]: 77: Hoare triple {8190#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7953#false} is VALID [2022-04-27 12:17:13,916 INFO L290 TraceCheckUtils]: 76: Hoare triple {8186#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8190#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:17:13,916 INFO L272 TraceCheckUtils]: 75: Hoare triple {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8186#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:17:13,917 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {7952#true} {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #79#return; {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-27 12:17:13,917 INFO L290 TraceCheckUtils]: 73: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-27 12:17:13,917 INFO L290 TraceCheckUtils]: 72: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-27 12:17:13,917 INFO L290 TraceCheckUtils]: 71: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-27 12:17:13,917 INFO L272 TraceCheckUtils]: 70: Hoare triple {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {7952#true} is VALID [2022-04-27 12:17:13,917 INFO L290 TraceCheckUtils]: 69: Hoare triple {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(#t~post6 < 20);havoc #t~post6; {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-27 12:17:13,918 INFO L290 TraceCheckUtils]: 68: Hoare triple {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-27 12:17:13,925 INFO L290 TraceCheckUtils]: 67: Hoare triple {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-27 12:17:13,925 INFO L290 TraceCheckUtils]: 66: Hoare triple {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} assume !(~r~0 >= 2 * ~b~0); {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-27 12:17:13,926 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {7952#true} {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #87#return; {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-27 12:17:13,926 INFO L290 TraceCheckUtils]: 64: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-27 12:17:13,926 INFO L290 TraceCheckUtils]: 63: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-27 12:17:13,926 INFO L290 TraceCheckUtils]: 62: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-27 12:17:13,926 INFO L272 TraceCheckUtils]: 61: Hoare triple {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {7952#true} is VALID [2022-04-27 12:17:13,927 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {7952#true} {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #85#return; {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-27 12:17:13,927 INFO L290 TraceCheckUtils]: 59: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-27 12:17:13,927 INFO L290 TraceCheckUtils]: 58: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-27 12:17:13,927 INFO L290 TraceCheckUtils]: 57: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-27 12:17:13,927 INFO L272 TraceCheckUtils]: 56: Hoare triple {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {7952#true} is VALID [2022-04-27 12:17:13,927 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {7952#true} {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #83#return; {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-27 12:17:13,927 INFO L290 TraceCheckUtils]: 54: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-27 12:17:13,927 INFO L290 TraceCheckUtils]: 53: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-27 12:17:13,927 INFO L290 TraceCheckUtils]: 52: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-27 12:17:13,928 INFO L272 TraceCheckUtils]: 51: Hoare triple {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {7952#true} is VALID [2022-04-27 12:17:13,928 INFO L290 TraceCheckUtils]: 50: Hoare triple {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} assume !!(#t~post7 < 20);havoc #t~post7; {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-27 12:17:13,928 INFO L290 TraceCheckUtils]: 49: Hoare triple {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-27 12:17:13,931 INFO L290 TraceCheckUtils]: 48: Hoare triple {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-27 12:17:13,932 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {7952#true} {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} #89#return; {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-27 12:17:13,932 INFO L290 TraceCheckUtils]: 46: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-27 12:17:13,932 INFO L290 TraceCheckUtils]: 45: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-27 12:17:13,932 INFO L290 TraceCheckUtils]: 44: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-27 12:17:13,932 INFO L272 TraceCheckUtils]: 43: Hoare triple {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {7952#true} is VALID [2022-04-27 12:17:13,932 INFO L290 TraceCheckUtils]: 42: Hoare triple {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} assume !!(~r~0 >= 2 * ~b~0); {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-27 12:17:13,933 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {7952#true} {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} #87#return; {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-27 12:17:13,933 INFO L290 TraceCheckUtils]: 40: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-27 12:17:13,933 INFO L290 TraceCheckUtils]: 39: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-27 12:17:13,933 INFO L290 TraceCheckUtils]: 38: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-27 12:17:13,933 INFO L272 TraceCheckUtils]: 37: Hoare triple {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {7952#true} is VALID [2022-04-27 12:17:13,933 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {7952#true} {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} #85#return; {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-27 12:17:13,934 INFO L290 TraceCheckUtils]: 35: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-27 12:17:13,934 INFO L290 TraceCheckUtils]: 34: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-27 12:17:13,934 INFO L290 TraceCheckUtils]: 33: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-27 12:17:13,934 INFO L272 TraceCheckUtils]: 32: Hoare triple {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {7952#true} is VALID [2022-04-27 12:17:13,934 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {7952#true} {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} #83#return; {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-27 12:17:13,934 INFO L290 TraceCheckUtils]: 30: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-27 12:17:13,934 INFO L290 TraceCheckUtils]: 29: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-27 12:17:13,934 INFO L290 TraceCheckUtils]: 28: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-27 12:17:13,934 INFO L272 TraceCheckUtils]: 27: Hoare triple {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {7952#true} is VALID [2022-04-27 12:17:13,935 INFO L290 TraceCheckUtils]: 26: Hoare triple {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} assume !!(#t~post7 < 20);havoc #t~post7; {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-27 12:17:13,935 INFO L290 TraceCheckUtils]: 25: Hoare triple {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-27 12:17:13,936 INFO L290 TraceCheckUtils]: 24: Hoare triple {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-27 12:17:13,936 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {7952#true} {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #81#return; {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-27 12:17:13,936 INFO L290 TraceCheckUtils]: 22: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-27 12:17:13,936 INFO L290 TraceCheckUtils]: 21: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-27 12:17:13,936 INFO L290 TraceCheckUtils]: 20: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-27 12:17:13,936 INFO L272 TraceCheckUtils]: 19: Hoare triple {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {7952#true} is VALID [2022-04-27 12:17:13,937 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {7952#true} {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #79#return; {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-27 12:17:13,937 INFO L290 TraceCheckUtils]: 17: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-27 12:17:13,937 INFO L290 TraceCheckUtils]: 16: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-27 12:17:13,937 INFO L290 TraceCheckUtils]: 15: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-27 12:17:13,937 INFO L272 TraceCheckUtils]: 14: Hoare triple {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {7952#true} is VALID [2022-04-27 12:17:13,937 INFO L290 TraceCheckUtils]: 13: Hoare triple {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(#t~post6 < 20);havoc #t~post6; {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-27 12:17:13,937 INFO L290 TraceCheckUtils]: 12: Hoare triple {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-27 12:17:13,938 INFO L290 TraceCheckUtils]: 11: Hoare triple {7952#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-27 12:17:13,938 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7952#true} {7952#true} #77#return; {7952#true} is VALID [2022-04-27 12:17:13,938 INFO L290 TraceCheckUtils]: 9: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-27 12:17:13,938 INFO L290 TraceCheckUtils]: 8: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-27 12:17:13,938 INFO L290 TraceCheckUtils]: 7: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-27 12:17:13,938 INFO L272 TraceCheckUtils]: 6: Hoare triple {7952#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7952#true} is VALID [2022-04-27 12:17:13,938 INFO L290 TraceCheckUtils]: 5: Hoare triple {7952#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {7952#true} is VALID [2022-04-27 12:17:13,938 INFO L272 TraceCheckUtils]: 4: Hoare triple {7952#true} call #t~ret8 := main(); {7952#true} is VALID [2022-04-27 12:17:13,938 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7952#true} {7952#true} #93#return; {7952#true} is VALID [2022-04-27 12:17:13,938 INFO L290 TraceCheckUtils]: 2: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-27 12:17:13,938 INFO L290 TraceCheckUtils]: 1: Hoare triple {7952#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(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {7952#true} is VALID [2022-04-27 12:17:13,938 INFO L272 TraceCheckUtils]: 0: Hoare triple {7952#true} call ULTIMATE.init(); {7952#true} is VALID [2022-04-27 12:17:13,939 INFO L134 CoverageAnalysis]: Checked inductivity of 210 backedges. 20 proven. 6 refuted. 0 times theorem prover too weak. 184 trivial. 0 not checked. [2022-04-27 12:17:13,939 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:17:13,939 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1317253449] [2022-04-27 12:17:13,939 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:17:13,939 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1572483107] [2022-04-27 12:17:13,939 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1572483107] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 12:17:13,939 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 12:17:13,939 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7] total 11 [2022-04-27 12:17:13,939 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [852576088] [2022-04-27 12:17:13,939 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 12:17:13,940 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.4545454545454546) internal successors, (38), 10 states have internal predecessors, (38), 8 states have call successors, (24), 2 states have call predecessors, (24), 1 states have return successors, (21), 8 states have call predecessors, (21), 8 states have call successors, (21) Word has length 79 [2022-04-27 12:17:13,940 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:17:13,940 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 3.4545454545454546) internal successors, (38), 10 states have internal predecessors, (38), 8 states have call successors, (24), 2 states have call predecessors, (24), 1 states have return successors, (21), 8 states have call predecessors, (21), 8 states have call successors, (21) [2022-04-27 12:17:14,014 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 83 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:17:14,014 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-27 12:17:14,014 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:17:14,015 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-27 12:17:14,015 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=29, Invalid=81, Unknown=0, NotChecked=0, Total=110 [2022-04-27 12:17:14,015 INFO L87 Difference]: Start difference. First operand 210 states and 244 transitions. Second operand has 11 states, 11 states have (on average 3.4545454545454546) internal successors, (38), 10 states have internal predecessors, (38), 8 states have call successors, (24), 2 states have call predecessors, (24), 1 states have return successors, (21), 8 states have call predecessors, (21), 8 states have call successors, (21) [2022-04-27 12:17:15,331 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:17:15,331 INFO L93 Difference]: Finished difference Result 236 states and 272 transitions. [2022-04-27 12:17:15,331 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-27 12:17:15,332 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.4545454545454546) internal successors, (38), 10 states have internal predecessors, (38), 8 states have call successors, (24), 2 states have call predecessors, (24), 1 states have return successors, (21), 8 states have call predecessors, (21), 8 states have call successors, (21) Word has length 79 [2022-04-27 12:17:15,332 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:17:15,332 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.4545454545454546) internal successors, (38), 10 states have internal predecessors, (38), 8 states have call successors, (24), 2 states have call predecessors, (24), 1 states have return successors, (21), 8 states have call predecessors, (21), 8 states have call successors, (21) [2022-04-27 12:17:15,334 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 117 transitions. [2022-04-27 12:17:15,334 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.4545454545454546) internal successors, (38), 10 states have internal predecessors, (38), 8 states have call successors, (24), 2 states have call predecessors, (24), 1 states have return successors, (21), 8 states have call predecessors, (21), 8 states have call successors, (21) [2022-04-27 12:17:15,335 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 117 transitions. [2022-04-27 12:17:15,335 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 117 transitions. [2022-04-27 12:17:15,458 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 117 edges. 117 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:17:15,458 INFO L225 Difference]: With dead ends: 236 [2022-04-27 12:17:15,458 INFO L226 Difference]: Without dead ends: 0 [2022-04-27 12:17:15,459 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 161 GetRequests, 146 SyntacticMatches, 2 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 34 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=56, Invalid=154, Unknown=0, NotChecked=0, Total=210 [2022-04-27 12:17:15,459 INFO L413 NwaCegarLoop]: 54 mSDtfsCounter, 59 mSDsluCounter, 152 mSDsCounter, 0 mSdLazyCounter, 298 mSolverCounterSat, 76 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 60 SdHoareTripleChecker+Valid, 206 SdHoareTripleChecker+Invalid, 374 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 76 IncrementalHoareTripleChecker+Valid, 298 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-27 12:17:15,459 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [60 Valid, 206 Invalid, 374 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [76 Valid, 298 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-27 12:17:15,459 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-27 12:17:15,460 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-27 12:17:15,460 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:17:15,460 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:17:15,460 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:17:15,460 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:17:15,460 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:17:15,460 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-27 12:17:15,460 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-27 12:17:15,460 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:17:15,460 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:17:15,460 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:17:15,460 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:17:15,460 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:17:15,460 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-27 12:17:15,460 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-27 12:17:15,460 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:17:15,460 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:17:15,460 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:17:15,460 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:17:15,460 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:17:15,460 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-27 12:17:15,461 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 79 [2022-04-27 12:17:15,461 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:17:15,461 INFO L495 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-27 12:17:15,461 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 3.4545454545454546) internal successors, (38), 10 states have internal predecessors, (38), 8 states have call successors, (24), 2 states have call predecessors, (24), 1 states have return successors, (21), 8 states have call predecessors, (21), 8 states have call successors, (21) [2022-04-27 12:17:15,461 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-27 12:17:15,461 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:17:15,463 INFO L805 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-27 12:17:15,480 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Forceful destruction successful, exit code 0 [2022-04-27 12:17:15,667 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable11 [2022-04-27 12:17:15,669 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-04-27 12:17:16,410 INFO L899 garLoopResultBuilder]: For program point reach_errorEXIT(line 8) no Hoare annotation was computed. [2022-04-27 12:17:16,410 INFO L899 garLoopResultBuilder]: For program point reach_errorENTRY(line 8) no Hoare annotation was computed. [2022-04-27 12:17:16,410 INFO L899 garLoopResultBuilder]: For program point reach_errorFINAL(line 8) no Hoare annotation was computed. [2022-04-27 12:17:16,410 INFO L902 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 11 13) the Hoare annotation is: true [2022-04-27 12:17:16,410 INFO L899 garLoopResultBuilder]: For program point L12(line 12) no Hoare annotation was computed. [2022-04-27 12:17:16,410 INFO L899 garLoopResultBuilder]: For program point L12-2(lines 11 13) no Hoare annotation was computed. [2022-04-27 12:17:16,411 INFO L899 garLoopResultBuilder]: For program point assume_abort_if_notEXIT(lines 11 13) no Hoare annotation was computed. [2022-04-27 12:17:16,411 INFO L895 garLoopResultBuilder]: At program point L37-4(lines 37 61) the Hoare annotation is: (or (not (<= |old(~counter~0)| 0)) (and (= main_~x~0 main_~r~0) (= main_~q~0 0)) (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0)))) [2022-04-27 12:17:16,411 INFO L899 garLoopResultBuilder]: For program point mainEXIT(lines 23 65) no Hoare annotation was computed. [2022-04-27 12:17:16,411 INFO L895 garLoopResultBuilder]: At program point L54(line 54) the Hoare annotation is: (or (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= (* 2 .cse0) main_~r~0) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 .cse0))) (not (<= |old(~counter~0)| 0))) [2022-04-27 12:17:16,411 INFO L899 garLoopResultBuilder]: For program point L54-1(line 54) no Hoare annotation was computed. [2022-04-27 12:17:16,411 INFO L895 garLoopResultBuilder]: At program point L48(line 48) the Hoare annotation is: (or (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0))) (not (<= |old(~counter~0)| 0))) [2022-04-27 12:17:16,411 INFO L899 garLoopResultBuilder]: For program point L46-1(lines 46 58) no Hoare annotation was computed. [2022-04-27 12:17:16,411 INFO L899 garLoopResultBuilder]: For program point mainFINAL(lines 23 65) no Hoare annotation was computed. [2022-04-27 12:17:16,411 INFO L895 garLoopResultBuilder]: At program point L46-3(lines 46 58) the Hoare annotation is: (or (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0))) (not (<= |old(~counter~0)| 0))) [2022-04-27 12:17:16,411 INFO L899 garLoopResultBuilder]: For program point L46-4(lines 46 58) no Hoare annotation was computed. [2022-04-27 12:17:16,411 INFO L895 garLoopResultBuilder]: At program point L38(line 38) the Hoare annotation is: (or (not (<= |old(~counter~0)| 0)) (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0)))) [2022-04-27 12:17:16,411 INFO L895 garLoopResultBuilder]: At program point L38-1(line 38) the Hoare annotation is: (or (not (<= |old(~counter~0)| 0)) (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0)))) [2022-04-27 12:17:16,411 INFO L899 garLoopResultBuilder]: For program point L63(line 63) no Hoare annotation was computed. [2022-04-27 12:17:16,411 INFO L895 garLoopResultBuilder]: At program point L30(line 30) the Hoare annotation is: (or (= ~counter~0 |old(~counter~0)|) (not (<= |old(~counter~0)| 0))) [2022-04-27 12:17:16,411 INFO L895 garLoopResultBuilder]: At program point mainENTRY(lines 23 65) the Hoare annotation is: (or (= ~counter~0 |old(~counter~0)|) (not (<= |old(~counter~0)| 0))) [2022-04-27 12:17:16,411 INFO L899 garLoopResultBuilder]: For program point L30-1(line 30) no Hoare annotation was computed. [2022-04-27 12:17:16,411 INFO L899 garLoopResultBuilder]: For program point L49(lines 46 58) no Hoare annotation was computed. [2022-04-27 12:17:16,411 INFO L895 garLoopResultBuilder]: At program point L47(line 47) the Hoare annotation is: (or (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0))) (not (<= |old(~counter~0)| 0))) [2022-04-27 12:17:16,411 INFO L895 garLoopResultBuilder]: At program point L47-1(line 47) the Hoare annotation is: (or (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0))) (not (<= |old(~counter~0)| 0))) [2022-04-27 12:17:16,412 INFO L899 garLoopResultBuilder]: For program point L39(lines 37 61) no Hoare annotation was computed. [2022-04-27 12:17:16,412 INFO L899 garLoopResultBuilder]: For program point L37-1(lines 37 61) no Hoare annotation was computed. [2022-04-27 12:17:16,412 INFO L895 garLoopResultBuilder]: At program point L37-3(lines 37 61) the Hoare annotation is: (or (not (<= |old(~counter~0)| 0)) (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0)))) [2022-04-27 12:17:16,412 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.initFINAL(line -1) no Hoare annotation was computed. [2022-04-27 12:17:16,412 INFO L895 garLoopResultBuilder]: At program point ULTIMATE.initENTRY(line -1) the Hoare annotation is: (and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|)) [2022-04-27 12:17:16,412 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.initEXIT(line -1) no Hoare annotation was computed. [2022-04-27 12:17:16,412 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.startEXIT(line -1) no Hoare annotation was computed. [2022-04-27 12:17:16,412 INFO L895 garLoopResultBuilder]: At program point L-1(line -1) the Hoare annotation is: (<= ~counter~0 0) [2022-04-27 12:17:16,412 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2022-04-27 12:17:16,412 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.startFINAL(line -1) no Hoare annotation was computed. [2022-04-27 12:17:16,412 INFO L899 garLoopResultBuilder]: For program point L16(lines 16 17) no Hoare annotation was computed. [2022-04-27 12:17:16,412 INFO L899 garLoopResultBuilder]: For program point L15(lines 15 18) no Hoare annotation was computed. [2022-04-27 12:17:16,412 INFO L902 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 14 20) the Hoare annotation is: true [2022-04-27 12:17:16,412 INFO L899 garLoopResultBuilder]: For program point L15-2(lines 14 20) no Hoare annotation was computed. [2022-04-27 12:17:16,412 INFO L899 garLoopResultBuilder]: For program point __VERIFIER_assertEXIT(lines 14 20) no Hoare annotation was computed. [2022-04-27 12:17:16,412 INFO L899 garLoopResultBuilder]: For program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 17) no Hoare annotation was computed. [2022-04-27 12:17:16,414 INFO L356 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:17:16,416 INFO L176 ceAbstractionStarter]: Computing trace abstraction results [2022-04-27 12:17:16,418 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-27 12:17:16,418 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-27 12:17:16,427 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-27 12:17:16,428 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-27 12:17:16,428 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-27 12:17:16,428 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-27 12:17:16,428 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-27 12:17:16,428 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-27 12:17:16,428 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-27 12:17:16,428 WARN L170 areAnnotationChecker]: L30-1 has no Hoare annotation [2022-04-27 12:17:16,428 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-27 12:17:16,428 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-27 12:17:16,428 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-27 12:17:16,428 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-27 12:17:16,428 WARN L170 areAnnotationChecker]: L12-2 has no Hoare annotation [2022-04-27 12:17:16,429 WARN L170 areAnnotationChecker]: L30-1 has no Hoare annotation [2022-04-27 12:17:16,429 WARN L170 areAnnotationChecker]: L16 has no Hoare annotation [2022-04-27 12:17:16,429 WARN L170 areAnnotationChecker]: L16 has no Hoare annotation [2022-04-27 12:17:16,429 WARN L170 areAnnotationChecker]: L15-2 has no Hoare annotation [2022-04-27 12:17:16,429 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-27 12:17:16,429 WARN L170 areAnnotationChecker]: L37-1 has no Hoare annotation [2022-04-27 12:17:16,429 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:17:16,429 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:17:16,429 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:17:16,429 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:17:16,429 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:17:16,429 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:17:16,430 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:17:16,430 WARN L170 areAnnotationChecker]: L63 has no Hoare annotation [2022-04-27 12:17:16,430 WARN L170 areAnnotationChecker]: L37-1 has no Hoare annotation [2022-04-27 12:17:16,430 WARN L170 areAnnotationChecker]: L37-1 has no Hoare annotation [2022-04-27 12:17:16,430 WARN L170 areAnnotationChecker]: L39 has no Hoare annotation [2022-04-27 12:17:16,430 WARN L170 areAnnotationChecker]: L39 has no Hoare annotation [2022-04-27 12:17:16,430 WARN L170 areAnnotationChecker]: L39 has no Hoare annotation [2022-04-27 12:17:16,430 WARN L170 areAnnotationChecker]: L49 has no Hoare annotation [2022-04-27 12:17:16,430 WARN L170 areAnnotationChecker]: L49 has no Hoare annotation [2022-04-27 12:17:16,430 WARN L170 areAnnotationChecker]: L49 has no Hoare annotation [2022-04-27 12:17:16,430 WARN L170 areAnnotationChecker]: L54-1 has no Hoare annotation [2022-04-27 12:17:16,430 WARN L170 areAnnotationChecker]: L63 has no Hoare annotation [2022-04-27 12:17:16,430 WARN L170 areAnnotationChecker]: L46-4 has no Hoare annotation [2022-04-27 12:17:16,430 WARN L170 areAnnotationChecker]: L46-1 has no Hoare annotation [2022-04-27 12:17:16,430 WARN L170 areAnnotationChecker]: L46-4 has no Hoare annotation [2022-04-27 12:17:16,430 WARN L170 areAnnotationChecker]: L54-1 has no Hoare annotation [2022-04-27 12:17:16,430 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-27 12:17:16,430 WARN L170 areAnnotationChecker]: L46-1 has no Hoare annotation [2022-04-27 12:17:16,430 WARN L170 areAnnotationChecker]: L46-1 has no Hoare annotation [2022-04-27 12:17:16,430 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-27 12:17:16,430 INFO L163 areAnnotationChecker]: CFG has 12 edges. 12 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-27 12:17:16,437 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 27.04 12:17:16 BoogieIcfgContainer [2022-04-27 12:17:16,437 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-27 12:17:16,438 INFO L158 Benchmark]: Toolchain (without parser) took 86495.80ms. Allocated memory was 209.7MB in the beginning and 277.9MB in the end (delta: 68.2MB). Free memory was 158.1MB in the beginning and 207.7MB in the end (delta: -49.6MB). Peak memory consumption was 132.2MB. Max. memory is 8.0GB. [2022-04-27 12:17:16,438 INFO L158 Benchmark]: CDTParser took 0.24ms. Allocated memory is still 209.7MB. Free memory was 174.3MB in the beginning and 174.2MB in the end (delta: 150.5kB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-27 12:17:16,438 INFO L158 Benchmark]: CACSL2BoogieTranslator took 183.28ms. Allocated memory is still 209.7MB. Free memory was 157.9MB in the beginning and 185.0MB in the end (delta: -27.1MB). Peak memory consumption was 12.5MB. Max. memory is 8.0GB. [2022-04-27 12:17:16,438 INFO L158 Benchmark]: Boogie Preprocessor took 24.55ms. Allocated memory is still 209.7MB. Free memory was 184.6MB in the beginning and 183.3MB in the end (delta: 1.3MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-27 12:17:16,438 INFO L158 Benchmark]: RCFGBuilder took 213.93ms. Allocated memory is still 209.7MB. Free memory was 183.3MB in the beginning and 170.9MB in the end (delta: 12.4MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-27 12:17:16,439 INFO L158 Benchmark]: TraceAbstraction took 86070.70ms. Allocated memory was 209.7MB in the beginning and 277.9MB in the end (delta: 68.2MB). Free memory was 170.3MB in the beginning and 207.7MB in the end (delta: -37.4MB). Peak memory consumption was 143.9MB. Max. memory is 8.0GB. [2022-04-27 12:17:16,440 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.24ms. Allocated memory is still 209.7MB. Free memory was 174.3MB in the beginning and 174.2MB in the end (delta: 150.5kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 183.28ms. Allocated memory is still 209.7MB. Free memory was 157.9MB in the beginning and 185.0MB in the end (delta: -27.1MB). Peak memory consumption was 12.5MB. Max. memory is 8.0GB. * Boogie Preprocessor took 24.55ms. Allocated memory is still 209.7MB. Free memory was 184.6MB in the beginning and 183.3MB in the end (delta: 1.3MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 213.93ms. Allocated memory is still 209.7MB. Free memory was 183.3MB in the beginning and 170.9MB in the end (delta: 12.4MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * TraceAbstraction took 86070.70ms. Allocated memory was 209.7MB in the beginning and 277.9MB in the end (delta: 68.2MB). Free memory was 170.3MB in the beginning and 207.7MB in the end (delta: -37.4MB). Peak memory consumption was 143.9MB. 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: 17]: 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, 41 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 86.0s, OverallIterations: 12, TraceHistogramMax: 11, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 5.6s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.7s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 388 SdHoareTripleChecker+Valid, 1.3s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 364 mSDsluCounter, 1922 SdHoareTripleChecker+Invalid, 1.3s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 1394 mSDsCounter, 199 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 1198 IncrementalHoareTripleChecker+Invalid, 1397 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 199 mSolverCounterUnsat, 528 mSDtfsCounter, 1198 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 749 GetRequests, 653 SyntacticMatches, 5 SemanticMatches, 91 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 137 ImplicationChecksByTransitivity, 0.5s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=239occurred in iteration=9, InterpolantAutomatonStates: 88, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.5s AutomataMinimizationTime, 12 MinimizatonAttempts, 28 StatesRemovedByMinimization, 7 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 16 LocationsWithAnnotation, 129 PreInvPairs, 200 NumberOfFragments, 250 HoareAnnotationTreeSize, 129 FomulaSimplifications, 0 FormulaSimplificationTreeSizeReduction, 0.1s HoareSimplificationTime, 16 FomulaSimplificationsInter, 2803 FormulaSimplificationTreeSizeReductionInter, 0.6s HoareSimplificationTimeInter, RefinementEngineStatistics: TRACE_CHECK: 0.1s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 75.7s InterpolantComputationTime, 476 NumberOfCodeBlocks, 476 NumberOfCodeBlocksAsserted, 12 NumberOfCheckSat, 699 ConstructedInterpolants, 0 QuantifiedInterpolants, 1996 SizeOfPredicates, 29 NumberOfNonLiveVariables, 1473 ConjunctsInSsa, 112 ConjunctsInUnsatCore, 16 InterpolantComputations, 7 PerfectInterpolantSequences, 861/960 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: 46]: Loop Invariant Derived loop invariant: (((q * y + r == x && 1 <= r) && 1 <= y) && b == a * y) || !(\old(counter) <= 0) - InvariantResult [Line: 37]: Loop Invariant Derived loop invariant: !(\old(counter) <= 0) || ((q * y + r == x && 1 <= y) && b == a * y) RESULT: Ultimate proved your program to be correct! [2022-04-27 12:17:16,462 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request...