/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_unwindbound50.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-07 13:01:19,931 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-07 13:01:19,933 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-07 13:01:19,965 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-07 13:01:19,966 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-07 13:01:19,966 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-07 13:01:19,970 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-07 13:01:19,974 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-07 13:01:19,975 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-07 13:01:19,979 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-07 13:01:19,980 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-07 13:01:19,980 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-07 13:01:19,981 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-07 13:01:19,981 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-07 13:01:19,982 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-07 13:01:19,982 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-07 13:01:19,983 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-07 13:01:19,983 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-07 13:01:19,984 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-07 13:01:19,985 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-07 13:01:19,986 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-07 13:01:19,988 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-07 13:01:19,989 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-07 13:01:19,992 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-07 13:01:19,993 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-07 13:01:20,001 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-07 13:01:20,001 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-07 13:01:20,002 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-07 13:01:20,002 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-07 13:01:20,002 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-07 13:01:20,003 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-07 13:01:20,003 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-07 13:01:20,003 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-07 13:01:20,004 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-07 13:01:20,004 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-07 13:01:20,005 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-07 13:01:20,005 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-07 13:01:20,005 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-07 13:01:20,005 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-07 13:01:20,006 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-07 13:01:20,006 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-07 13:01:20,008 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-07 13:01:20,009 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf [2022-04-07 13:01:20,025 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-07 13:01:20,025 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-07 13:01:20,025 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-04-07 13:01:20,025 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-04-07 13:01:20,026 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-07 13:01:20,026 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-07 13:01:20,026 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-07 13:01:20,026 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-07 13:01:20,026 INFO L138 SettingsManager]: * Use SBE=true [2022-04-07 13:01:20,026 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-07 13:01:20,027 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-07 13:01:20,027 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-07 13:01:20,027 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-07 13:01:20,033 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-07 13:01:20,033 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-07 13:01:20,033 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-07 13:01:20,034 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-07 13:01:20,034 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-07 13:01:20,034 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-07 13:01:20,034 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-07 13:01:20,034 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-07 13:01:20,034 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-07 13:01:20,034 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-07 13:01:20,034 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-07 13:01:20,034 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 13:01:20,035 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-07 13:01:20,035 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-07 13:01:20,035 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-07 13:01:20,035 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-07 13:01:20,035 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-07 13:01:20,035 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-04-07 13:01:20,036 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-04-07 13:01:20,036 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-07 13:01:20,036 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-07 13:01:20,223 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-07 13:01:20,241 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-07 13:01:20,242 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-07 13:01:20,243 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-07 13:01:20,243 INFO L275 PluginConnector]: CDTParser initialized [2022-04-07 13:01:20,244 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_unwindbound50.c [2022-04-07 13:01:20,283 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/7b7163dbf/f48cdec46222487c959c8e6dde09de76/FLAG609d325c2 [2022-04-07 13:01:20,697 INFO L306 CDTParser]: Found 1 translation units. [2022-04-07 13:01:20,697 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_unwindbound50.c [2022-04-07 13:01:20,701 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/7b7163dbf/f48cdec46222487c959c8e6dde09de76/FLAG609d325c2 [2022-04-07 13:01:20,709 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/7b7163dbf/f48cdec46222487c959c8e6dde09de76 [2022-04-07 13:01:20,711 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-07 13:01:20,711 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-07 13:01:20,715 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-07 13:01:20,715 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-07 13:01:20,717 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-07 13:01:20,718 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 01:01:20" (1/1) ... [2022-04-07 13:01:20,718 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5284faf2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:20, skipping insertion in model container [2022-04-07 13:01:20,718 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 01:01:20" (1/1) ... [2022-04-07 13:01:20,723 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-07 13:01:20,731 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-07 13:01:20,846 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_unwindbound50.c[576,589] [2022-04-07 13:01:20,857 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 13:01:20,863 INFO L203 MainTranslator]: Completed pre-run [2022-04-07 13:01:20,870 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_unwindbound50.c[576,589] [2022-04-07 13:01:20,875 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 13:01:20,883 INFO L208 MainTranslator]: Completed translation [2022-04-07 13:01:20,883 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:20 WrapperNode [2022-04-07 13:01:20,884 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-07 13:01:20,884 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-07 13:01:20,884 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-07 13:01:20,884 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-07 13:01:20,890 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:20" (1/1) ... [2022-04-07 13:01:20,891 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:20" (1/1) ... [2022-04-07 13:01:20,894 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:20" (1/1) ... [2022-04-07 13:01:20,894 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:20" (1/1) ... [2022-04-07 13:01:20,898 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:20" (1/1) ... [2022-04-07 13:01:20,901 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:20" (1/1) ... [2022-04-07 13:01:20,902 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:20" (1/1) ... [2022-04-07 13:01:20,903 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-07 13:01:20,903 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-07 13:01:20,903 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-07 13:01:20,903 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-07 13:01:20,916 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:20" (1/1) ... [2022-04-07 13:01:20,920 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 13:01:20,926 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 13:01:20,935 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-07 13:01:20,960 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-07 13:01:20,989 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-07 13:01:20,990 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-07 13:01:20,990 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-07 13:01:20,990 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-07 13:01:20,992 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-07 13:01:20,992 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-07 13:01:20,992 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-07 13:01:20,992 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-07 13:01:20,993 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-07 13:01:20,993 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-07 13:01:20,993 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-07 13:01:20,993 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-07 13:01:20,993 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-07 13:01:20,993 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-07 13:01:20,993 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-07 13:01:20,993 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-07 13:01:20,994 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-07 13:01:20,994 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-07 13:01:20,994 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-07 13:01:20,994 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-07 13:01:21,038 INFO L234 CfgBuilder]: Building ICFG [2022-04-07 13:01:21,039 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-07 13:01:21,169 INFO L275 CfgBuilder]: Performing block encoding [2022-04-07 13:01:21,174 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-07 13:01:21,174 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-07 13:01:21,175 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 01:01:21 BoogieIcfgContainer [2022-04-07 13:01:21,175 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-07 13:01:21,176 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-07 13:01:21,176 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-07 13:01:21,178 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-07 13:01:21,179 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 07.04 01:01:20" (1/3) ... [2022-04-07 13:01:21,179 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@67585781 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 01:01:21, skipping insertion in model container [2022-04-07 13:01:21,179 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:20" (2/3) ... [2022-04-07 13:01:21,179 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@67585781 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 01:01:21, skipping insertion in model container [2022-04-07 13:01:21,179 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 01:01:21" (3/3) ... [2022-04-07 13:01:21,180 INFO L111 eAbstractionObserver]: Analyzing ICFG cohendiv-ll_unwindbound50.c [2022-04-07 13:01:21,183 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-07 13:01:21,184 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-07 13:01:21,212 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-07 13:01:21,216 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-07 13:01:21,217 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-07 13:01:21,230 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-07 13:01:21,233 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-07 13:01:21,233 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 13:01:21,234 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 13:01:21,234 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 13:01:21,237 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 13:01:21,237 INFO L85 PathProgramCache]: Analyzing trace with hash -1588022502, now seen corresponding path program 1 times [2022-04-07 13:01:21,243 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 13:01:21,244 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1315318720] [2022-04-07 13:01:21,244 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:21,245 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 13:01:21,345 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:21,400 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-07 13:01:21,407 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:21,418 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-07 13:01:21,419 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume true; {41#true} is VALID [2022-04-07 13:01:21,419 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {41#true} {41#true} #93#return; {41#true} is VALID [2022-04-07 13:01:21,420 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-07 13:01:21,422 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:21,428 INFO L290 TraceCheckUtils]: 0: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-07 13:01:21,429 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-07 13:01:21,429 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-07 13:01:21,429 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#false} {41#true} #77#return; {42#false} is VALID [2022-04-07 13:01:21,430 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-07 13:01:21,430 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-07 13:01:21,430 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#true} assume true; {41#true} is VALID [2022-04-07 13:01:21,431 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#true} {41#true} #93#return; {41#true} is VALID [2022-04-07 13:01:21,431 INFO L272 TraceCheckUtils]: 4: Hoare triple {41#true} call #t~ret8 := main(); {41#true} is VALID [2022-04-07 13:01:21,431 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-07 13:01:21,431 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-07 13:01:21,436 INFO L290 TraceCheckUtils]: 7: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-07 13:01:21,437 INFO L290 TraceCheckUtils]: 8: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-07 13:01:21,437 INFO L290 TraceCheckUtils]: 9: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-07 13:01:21,437 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {42#false} {41#true} #77#return; {42#false} is VALID [2022-04-07 13:01:21,437 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-07 13:01:21,438 INFO L290 TraceCheckUtils]: 12: Hoare triple {42#false} assume !true; {42#false} is VALID [2022-04-07 13:01:21,438 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-07 13:01:21,438 INFO L290 TraceCheckUtils]: 14: Hoare triple {42#false} ~cond := #in~cond; {42#false} is VALID [2022-04-07 13:01:21,438 INFO L290 TraceCheckUtils]: 15: Hoare triple {42#false} assume 0 == ~cond; {42#false} is VALID [2022-04-07 13:01:21,438 INFO L290 TraceCheckUtils]: 16: Hoare triple {42#false} assume !false; {42#false} is VALID [2022-04-07 13:01:21,439 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-07 13:01:21,439 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 13:01:21,439 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1315318720] [2022-04-07 13:01:21,440 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1315318720] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 13:01:21,440 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 13:01:21,440 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-07 13:01:21,441 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1216429451] [2022-04-07 13:01:21,441 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 13:01:21,445 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-07 13:01:21,446 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 13:01:21,448 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-07 13:01:21,465 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 13:01:21,466 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-07 13:01:21,466 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 13:01:21,494 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-07 13:01:21,494 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-07 13:01:21,496 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-07 13:01:21,690 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:21,690 INFO L93 Difference]: Finished difference Result 68 states and 101 transitions. [2022-04-07 13:01:21,690 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-07 13:01:21,690 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-07 13:01:21,691 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 13:01:21,692 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-07 13:01:21,698 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 101 transitions. [2022-04-07 13:01:21,698 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-07 13:01:21,703 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 101 transitions. [2022-04-07 13:01:21,703 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 101 transitions. [2022-04-07 13:01:21,815 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-07 13:01:21,825 INFO L225 Difference]: With dead ends: 68 [2022-04-07 13:01:21,825 INFO L226 Difference]: Without dead ends: 34 [2022-04-07 13:01:21,827 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-07 13:01:21,829 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 24 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s 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.1s IncrementalHoareTripleChecker+Time [2022-04-07 13:01:21,830 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [11 Valid, 49 Invalid, 33 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 24 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-07 13:01:21,840 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-07 13:01:21,853 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 33. [2022-04-07 13:01:21,853 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 13:01:21,854 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-07 13:01:21,855 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-07 13:01:21,855 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-07 13:01:21,859 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:21,859 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-07 13:01:21,859 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-07 13:01:21,860 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:21,860 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:21,860 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-07 13:01:21,860 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-07 13:01:21,863 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:21,863 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-07 13:01:21,863 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-07 13:01:21,864 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:21,864 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:21,864 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 13:01:21,864 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 13:01:21,864 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-07 13:01:21,867 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 42 transitions. [2022-04-07 13:01:21,868 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 42 transitions. Word has length 17 [2022-04-07 13:01:21,868 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 13:01:21,868 INFO L478 AbstractCegarLoop]: Abstraction has 33 states and 42 transitions. [2022-04-07 13:01:21,868 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-07 13:01:21,868 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 42 transitions. [2022-04-07 13:01:21,869 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-07 13:01:21,869 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 13:01:21,869 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 13:01:21,869 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-07 13:01:21,869 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 13:01:21,870 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 13:01:21,870 INFO L85 PathProgramCache]: Analyzing trace with hash 766070672, now seen corresponding path program 1 times [2022-04-07 13:01:21,870 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 13:01:21,870 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [698309845] [2022-04-07 13:01:21,871 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:21,871 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 13:01:21,900 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 13:01:21,900 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1112161121] [2022-04-07 13:01:21,901 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:21,901 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:01:21,901 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 13:01:21,902 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 13:01:21,927 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-07 13:01:21,955 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:21,957 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-07 13:01:21,965 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:21,968 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 13:01:22,132 INFO L272 TraceCheckUtils]: 0: Hoare triple {265#true} call ULTIMATE.init(); {265#true} is VALID [2022-04-07 13:01:22,134 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-07 13:01:22,134 INFO L290 TraceCheckUtils]: 2: Hoare triple {273#(<= ~counter~0 0)} assume true; {273#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:22,134 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {273#(<= ~counter~0 0)} {265#true} #93#return; {273#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:22,135 INFO L272 TraceCheckUtils]: 4: Hoare triple {273#(<= ~counter~0 0)} call #t~ret8 := main(); {273#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:22,135 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-07 13:01:22,136 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-07 13:01:22,136 INFO L290 TraceCheckUtils]: 7: Hoare triple {273#(<= ~counter~0 0)} ~cond := #in~cond; {273#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:22,137 INFO L290 TraceCheckUtils]: 8: Hoare triple {273#(<= ~counter~0 0)} assume !(0 == ~cond); {273#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:22,137 INFO L290 TraceCheckUtils]: 9: Hoare triple {273#(<= ~counter~0 0)} assume true; {273#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:22,138 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {273#(<= ~counter~0 0)} {273#(<= ~counter~0 0)} #77#return; {273#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:22,138 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-07 13:01:22,139 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-07 13:01:22,139 INFO L290 TraceCheckUtils]: 13: Hoare triple {307#(<= |main_#t~post6| 0)} assume !(#t~post6 < 50);havoc #t~post6; {266#false} is VALID [2022-04-07 13:01:22,140 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-07 13:01:22,140 INFO L290 TraceCheckUtils]: 15: Hoare triple {266#false} ~cond := #in~cond; {266#false} is VALID [2022-04-07 13:01:22,140 INFO L290 TraceCheckUtils]: 16: Hoare triple {266#false} assume 0 == ~cond; {266#false} is VALID [2022-04-07 13:01:22,140 INFO L290 TraceCheckUtils]: 17: Hoare triple {266#false} assume !false; {266#false} is VALID [2022-04-07 13:01:22,141 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-07 13:01:22,141 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 13:01:22,141 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 13:01:22,141 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [698309845] [2022-04-07 13:01:22,141 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 13:01:22,142 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1112161121] [2022-04-07 13:01:22,145 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1112161121] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 13:01:22,145 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 13:01:22,145 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-07 13:01:22,146 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1192970445] [2022-04-07 13:01:22,146 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 13:01:22,147 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-04-07 13:01:22,147 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 13:01:22,147 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-07 13:01:22,162 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 13:01:22,162 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-07 13:01:22,163 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 13:01:22,164 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-07 13:01:22,164 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-07 13:01:22,164 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-07 13:01:22,246 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:22,247 INFO L93 Difference]: Finished difference Result 42 states and 51 transitions. [2022-04-07 13:01:22,247 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-07 13:01:22,247 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-04-07 13:01:22,248 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 13:01:22,248 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-07 13:01:22,252 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 51 transitions. [2022-04-07 13:01:22,252 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-07 13:01:22,256 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 51 transitions. [2022-04-07 13:01:22,256 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 51 transitions. [2022-04-07 13:01:22,291 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 13:01:22,293 INFO L225 Difference]: With dead ends: 42 [2022-04-07 13:01:22,294 INFO L226 Difference]: Without dead ends: 35 [2022-04-07 13:01:22,294 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-07 13:01:22,296 INFO L913 BasicCegarLoop]: 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-07 13:01:22,297 INFO L914 BasicCegarLoop]: 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-07 13:01:22,298 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-07 13:01:22,317 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 35. [2022-04-07 13:01:22,317 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 13:01:22,318 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-07 13:01:22,319 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-07 13:01:22,320 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-07 13:01:22,323 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:22,323 INFO L93 Difference]: Finished difference Result 35 states and 44 transitions. [2022-04-07 13:01:22,323 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-07 13:01:22,323 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:22,323 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:22,324 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-07 13:01:22,324 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-07 13:01:22,326 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:22,326 INFO L93 Difference]: Finished difference Result 35 states and 44 transitions. [2022-04-07 13:01:22,326 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-07 13:01:22,327 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:22,327 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:22,327 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 13:01:22,327 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 13:01:22,327 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-07 13:01:22,329 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 44 transitions. [2022-04-07 13:01:22,329 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 44 transitions. Word has length 18 [2022-04-07 13:01:22,329 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 13:01:22,329 INFO L478 AbstractCegarLoop]: Abstraction has 35 states and 44 transitions. [2022-04-07 13:01:22,329 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-07 13:01:22,329 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-07 13:01:22,330 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-07 13:01:22,330 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 13:01:22,330 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 13:01:22,362 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-07 13:01:22,530 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:01:22,531 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 13:01:22,531 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 13:01:22,532 INFO L85 PathProgramCache]: Analyzing trace with hash 767560222, now seen corresponding path program 1 times [2022-04-07 13:01:22,532 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 13:01:22,532 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [870303249] [2022-04-07 13:01:22,532 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:22,532 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 13:01:22,545 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 13:01:22,545 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [405247734] [2022-04-07 13:01:22,545 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:22,546 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:01:22,546 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 13:01:22,568 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 13:01:22,570 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-07 13:01:22,605 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:22,607 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-07 13:01:22,618 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:22,619 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 13:01:22,691 INFO L272 TraceCheckUtils]: 0: Hoare triple {505#true} call ULTIMATE.init(); {505#true} is VALID [2022-04-07 13:01:22,691 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-07 13:01:22,691 INFO L290 TraceCheckUtils]: 2: Hoare triple {505#true} assume true; {505#true} is VALID [2022-04-07 13:01:22,691 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {505#true} {505#true} #93#return; {505#true} is VALID [2022-04-07 13:01:22,691 INFO L272 TraceCheckUtils]: 4: Hoare triple {505#true} call #t~ret8 := main(); {505#true} is VALID [2022-04-07 13:01:22,692 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-07 13:01:22,692 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-07 13:01:22,692 INFO L290 TraceCheckUtils]: 7: Hoare triple {505#true} ~cond := #in~cond; {505#true} is VALID [2022-04-07 13:01:22,692 INFO L290 TraceCheckUtils]: 8: Hoare triple {505#true} assume !(0 == ~cond); {505#true} is VALID [2022-04-07 13:01:22,692 INFO L290 TraceCheckUtils]: 9: Hoare triple {505#true} assume true; {505#true} is VALID [2022-04-07 13:01:22,692 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {505#true} {505#true} #77#return; {505#true} is VALID [2022-04-07 13:01:22,693 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-07 13:01:22,693 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-07 13:01:22,694 INFO L290 TraceCheckUtils]: 13: Hoare triple {543#(and (= main_~a~0 0) (= main_~b~0 0))} assume !!(#t~post6 < 50);havoc #t~post6; {543#(and (= main_~a~0 0) (= main_~b~0 0))} is VALID [2022-04-07 13:01:22,694 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-07 13:01:22,695 INFO L290 TraceCheckUtils]: 15: Hoare triple {553#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {557#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 13:01:22,695 INFO L290 TraceCheckUtils]: 16: Hoare triple {557#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {506#false} is VALID [2022-04-07 13:01:22,695 INFO L290 TraceCheckUtils]: 17: Hoare triple {506#false} assume !false; {506#false} is VALID [2022-04-07 13:01:22,696 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-07 13:01:22,696 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 13:01:22,696 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 13:01:22,696 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [870303249] [2022-04-07 13:01:22,696 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 13:01:22,696 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [405247734] [2022-04-07 13:01:22,696 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [405247734] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 13:01:22,696 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 13:01:22,696 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-07 13:01:22,697 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [77489562] [2022-04-07 13:01:22,697 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 13:01:22,697 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-07 13:01:22,697 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 13:01:22,697 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-07 13:01:22,709 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 13:01:22,709 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-07 13:01:22,709 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 13:01:22,710 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-07 13:01:22,710 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-07 13:01:22,710 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-07 13:01:22,841 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:22,841 INFO L93 Difference]: Finished difference Result 45 states and 56 transitions. [2022-04-07 13:01:22,841 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-07 13:01:22,841 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-07 13:01:22,842 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 13:01:22,842 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-07 13:01:22,843 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-07 13:01:22,843 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-07 13:01:22,844 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-07 13:01:22,844 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 56 transitions. [2022-04-07 13:01:22,882 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-07 13:01:22,884 INFO L225 Difference]: With dead ends: 45 [2022-04-07 13:01:22,884 INFO L226 Difference]: Without dead ends: 43 [2022-04-07 13:01:22,884 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 14 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-07 13:01:22,885 INFO L913 BasicCegarLoop]: 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-07 13:01:22,885 INFO L914 BasicCegarLoop]: 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-07 13:01:22,885 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states. [2022-04-07 13:01:22,897 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 40. [2022-04-07 13:01:22,897 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 13:01:22,898 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-07 13:01:22,898 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-07 13:01:22,898 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-07 13:01:22,900 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:22,900 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-07 13:01:22,900 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-07 13:01:22,901 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:22,901 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:22,901 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-07 13:01:22,902 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-07 13:01:22,903 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:22,904 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-07 13:01:22,904 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-07 13:01:22,904 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:22,904 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:22,905 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 13:01:22,905 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 13:01:22,905 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-07 13:01:22,920 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 49 transitions. [2022-04-07 13:01:22,921 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 49 transitions. Word has length 18 [2022-04-07 13:01:22,921 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 13:01:22,921 INFO L478 AbstractCegarLoop]: Abstraction has 40 states and 49 transitions. [2022-04-07 13:01:22,921 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-07 13:01:22,921 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 49 transitions. [2022-04-07 13:01:22,922 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-07 13:01:22,922 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 13:01:22,922 INFO L499 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 13:01:22,943 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2022-04-07 13:01:23,145 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-07 13:01:23,146 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 13:01:23,146 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 13:01:23,146 INFO L85 PathProgramCache]: Analyzing trace with hash -1016228092, now seen corresponding path program 1 times [2022-04-07 13:01:23,147 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 13:01:23,147 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [627627203] [2022-04-07 13:01:23,147 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:23,147 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 13:01:23,160 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 13:01:23,161 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1127163712] [2022-04-07 13:01:23,161 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:23,161 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:01:23,161 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 13:01:23,171 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 13:01:23,171 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-07 13:01:23,210 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:23,211 INFO L263 TraceCheckSpWp]: Trace formula consists of 95 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-07 13:01:23,218 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:23,219 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 13:01:23,333 INFO L272 TraceCheckUtils]: 0: Hoare triple {776#true} call ULTIMATE.init(); {776#true} is VALID [2022-04-07 13:01:23,334 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-07 13:01:23,334 INFO L290 TraceCheckUtils]: 2: Hoare triple {776#true} assume true; {776#true} is VALID [2022-04-07 13:01:23,334 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {776#true} {776#true} #93#return; {776#true} is VALID [2022-04-07 13:01:23,334 INFO L272 TraceCheckUtils]: 4: Hoare triple {776#true} call #t~ret8 := main(); {776#true} is VALID [2022-04-07 13:01:23,334 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-07 13:01:23,334 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-07 13:01:23,334 INFO L290 TraceCheckUtils]: 7: Hoare triple {776#true} ~cond := #in~cond; {776#true} is VALID [2022-04-07 13:01:23,335 INFO L290 TraceCheckUtils]: 8: Hoare triple {776#true} assume !(0 == ~cond); {776#true} is VALID [2022-04-07 13:01:23,335 INFO L290 TraceCheckUtils]: 9: Hoare triple {776#true} assume true; {776#true} is VALID [2022-04-07 13:01:23,335 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {776#true} {776#true} #77#return; {776#true} is VALID [2022-04-07 13:01:23,335 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-07 13:01:23,336 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-07 13:01:23,336 INFO L290 TraceCheckUtils]: 13: Hoare triple {814#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 50);havoc #t~post6; {814#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-07 13:01:23,337 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-07 13:01:23,339 INFO L290 TraceCheckUtils]: 15: Hoare triple {776#true} ~cond := #in~cond; {776#true} is VALID [2022-04-07 13:01:23,340 INFO L290 TraceCheckUtils]: 16: Hoare triple {776#true} assume !(0 == ~cond); {776#true} is VALID [2022-04-07 13:01:23,343 INFO L290 TraceCheckUtils]: 17: Hoare triple {776#true} assume true; {776#true} is VALID [2022-04-07 13:01:23,345 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-07 13:01:23,346 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-07 13:01:23,346 INFO L290 TraceCheckUtils]: 20: Hoare triple {839#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {843#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 13:01:23,347 INFO L290 TraceCheckUtils]: 21: Hoare triple {843#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {777#false} is VALID [2022-04-07 13:01:23,347 INFO L290 TraceCheckUtils]: 22: Hoare triple {777#false} assume !false; {777#false} is VALID [2022-04-07 13:01:23,347 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-07 13:01:23,347 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 13:01:23,347 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 13:01:23,347 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [627627203] [2022-04-07 13:01:23,348 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 13:01:23,348 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1127163712] [2022-04-07 13:01:23,348 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1127163712] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 13:01:23,348 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 13:01:23,348 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-07 13:01:23,348 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [804721987] [2022-04-07 13:01:23,348 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 13:01:23,348 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-07 13:01:23,349 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 13:01:23,349 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-07 13:01:23,372 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-07 13:01:23,373 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-07 13:01:23,373 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 13:01:23,373 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-07 13:01:23,373 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-07 13:01:23,374 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-07 13:01:23,540 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:23,541 INFO L93 Difference]: Finished difference Result 58 states and 74 transitions. [2022-04-07 13:01:23,541 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-07 13:01:23,541 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-07 13:01:23,541 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 13:01:23,541 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-07 13:01:23,543 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 71 transitions. [2022-04-07 13:01:23,543 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-07 13:01:23,544 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 71 transitions. [2022-04-07 13:01:23,544 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 71 transitions. [2022-04-07 13:01:23,595 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 71 edges. 71 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 13:01:23,596 INFO L225 Difference]: With dead ends: 58 [2022-04-07 13:01:23,596 INFO L226 Difference]: Without dead ends: 55 [2022-04-07 13:01:23,597 INFO L912 BasicCegarLoop]: 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-07 13:01:23,597 INFO L913 BasicCegarLoop]: 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-07 13:01:23,598 INFO L914 BasicCegarLoop]: 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-07 13:01:23,598 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2022-04-07 13:01:23,605 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 54. [2022-04-07 13:01:23,605 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 13:01:23,606 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-07 13:01:23,606 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-07 13:01:23,606 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-07 13:01:23,608 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:23,609 INFO L93 Difference]: Finished difference Result 55 states and 70 transitions. [2022-04-07 13:01:23,609 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 70 transitions. [2022-04-07 13:01:23,609 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:23,609 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:23,610 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-07 13:01:23,610 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-07 13:01:23,612 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:23,612 INFO L93 Difference]: Finished difference Result 55 states and 70 transitions. [2022-04-07 13:01:23,612 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 70 transitions. [2022-04-07 13:01:23,613 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:23,613 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:23,613 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 13:01:23,613 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 13:01:23,613 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-07 13:01:23,615 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 54 states to 54 states and 69 transitions. [2022-04-07 13:01:23,615 INFO L78 Accepts]: Start accepts. Automaton has 54 states and 69 transitions. Word has length 23 [2022-04-07 13:01:23,615 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 13:01:23,615 INFO L478 AbstractCegarLoop]: Abstraction has 54 states and 69 transitions. [2022-04-07 13:01:23,615 INFO L479 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-07 13:01:23,616 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 69 transitions. [2022-04-07 13:01:23,616 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-04-07 13:01:23,616 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 13:01:23,616 INFO L499 BasicCegarLoop]: trace histogram [3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 13:01:23,632 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-07 13:01:23,830 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:01:23,830 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 13:01:23,831 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 13:01:23,831 INFO L85 PathProgramCache]: Analyzing trace with hash 2019703110, now seen corresponding path program 1 times [2022-04-07 13:01:23,831 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 13:01:23,831 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1851013238] [2022-04-07 13:01:23,831 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:23,831 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 13:01:23,844 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 13:01:23,844 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1456226548] [2022-04-07 13:01:23,845 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:23,845 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:01:23,845 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 13:01:23,846 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 13:01:23,847 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-07 13:01:23,879 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:23,880 INFO L263 TraceCheckSpWp]: Trace formula consists of 114 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-07 13:01:23,893 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:23,894 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 13:01:24,004 INFO L272 TraceCheckUtils]: 0: Hoare triple {1126#true} call ULTIMATE.init(); {1126#true} is VALID [2022-04-07 13:01:24,005 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-07 13:01:24,005 INFO L290 TraceCheckUtils]: 2: Hoare triple {1126#true} assume true; {1126#true} is VALID [2022-04-07 13:01:24,005 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1126#true} {1126#true} #93#return; {1126#true} is VALID [2022-04-07 13:01:24,005 INFO L272 TraceCheckUtils]: 4: Hoare triple {1126#true} call #t~ret8 := main(); {1126#true} is VALID [2022-04-07 13:01:24,005 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-07 13:01:24,006 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-07 13:01:24,006 INFO L290 TraceCheckUtils]: 7: Hoare triple {1126#true} ~cond := #in~cond; {1126#true} is VALID [2022-04-07 13:01:24,006 INFO L290 TraceCheckUtils]: 8: Hoare triple {1126#true} assume !(0 == ~cond); {1126#true} is VALID [2022-04-07 13:01:24,006 INFO L290 TraceCheckUtils]: 9: Hoare triple {1126#true} assume true; {1126#true} is VALID [2022-04-07 13:01:24,006 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1126#true} {1126#true} #77#return; {1126#true} is VALID [2022-04-07 13:01:24,006 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-07 13:01:24,006 INFO L290 TraceCheckUtils]: 12: Hoare triple {1126#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1126#true} is VALID [2022-04-07 13:01:24,006 INFO L290 TraceCheckUtils]: 13: Hoare triple {1126#true} assume !!(#t~post6 < 50);havoc #t~post6; {1126#true} is VALID [2022-04-07 13:01:24,007 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-07 13:01:24,007 INFO L290 TraceCheckUtils]: 15: Hoare triple {1126#true} ~cond := #in~cond; {1126#true} is VALID [2022-04-07 13:01:24,007 INFO L290 TraceCheckUtils]: 16: Hoare triple {1126#true} assume !(0 == ~cond); {1126#true} is VALID [2022-04-07 13:01:24,007 INFO L290 TraceCheckUtils]: 17: Hoare triple {1126#true} assume true; {1126#true} is VALID [2022-04-07 13:01:24,007 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1126#true} {1126#true} #79#return; {1126#true} is VALID [2022-04-07 13:01:24,007 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-07 13:01:24,007 INFO L290 TraceCheckUtils]: 20: Hoare triple {1126#true} ~cond := #in~cond; {1126#true} is VALID [2022-04-07 13:01:24,007 INFO L290 TraceCheckUtils]: 21: Hoare triple {1126#true} assume !(0 == ~cond); {1126#true} is VALID [2022-04-07 13:01:24,008 INFO L290 TraceCheckUtils]: 22: Hoare triple {1126#true} assume true; {1126#true} is VALID [2022-04-07 13:01:24,008 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1126#true} {1126#true} #81#return; {1126#true} is VALID [2022-04-07 13:01:24,010 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-07 13:01:24,011 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-07 13:01:24,011 INFO L290 TraceCheckUtils]: 26: Hoare triple {1203#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} assume !!(#t~post7 < 50);havoc #t~post7; {1203#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} is VALID [2022-04-07 13:01:24,012 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-07 13:01:24,012 INFO L290 TraceCheckUtils]: 28: Hoare triple {1213#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1217#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 13:01:24,013 INFO L290 TraceCheckUtils]: 29: Hoare triple {1217#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1127#false} is VALID [2022-04-07 13:01:24,013 INFO L290 TraceCheckUtils]: 30: Hoare triple {1127#false} assume !false; {1127#false} is VALID [2022-04-07 13:01:24,013 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-07 13:01:24,013 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 13:01:24,013 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 13:01:24,014 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1851013238] [2022-04-07 13:01:24,014 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 13:01:24,014 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1456226548] [2022-04-07 13:01:24,014 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1456226548] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 13:01:24,014 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 13:01:24,014 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-07 13:01:24,014 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1632026706] [2022-04-07 13:01:24,014 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 13:01:24,015 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-07 13:01:24,015 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 13:01:24,015 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-07 13:01:24,037 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-07 13:01:24,037 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-07 13:01:24,037 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 13:01:24,038 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-07 13:01:24,038 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-07 13:01:24,038 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-07 13:01:24,230 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:24,230 INFO L93 Difference]: Finished difference Result 83 states and 113 transitions. [2022-04-07 13:01:24,230 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-07 13:01:24,230 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-07 13:01:24,230 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 13:01:24,231 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-07 13:01:24,232 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 72 transitions. [2022-04-07 13:01:24,232 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-07 13:01:24,233 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 72 transitions. [2022-04-07 13:01:24,233 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 72 transitions. [2022-04-07 13:01:24,284 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-07 13:01:24,286 INFO L225 Difference]: With dead ends: 83 [2022-04-07 13:01:24,287 INFO L226 Difference]: Without dead ends: 81 [2022-04-07 13:01:24,287 INFO L912 BasicCegarLoop]: 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-07 13:01:24,287 INFO L913 BasicCegarLoop]: 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-07 13:01:24,288 INFO L914 BasicCegarLoop]: 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-07 13:01:24,288 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 81 states. [2022-04-07 13:01:24,298 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 81 to 74. [2022-04-07 13:01:24,299 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 13:01:24,299 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-07 13:01:24,299 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-07 13:01:24,300 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-07 13:01:24,303 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:24,303 INFO L93 Difference]: Finished difference Result 81 states and 111 transitions. [2022-04-07 13:01:24,303 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 111 transitions. [2022-04-07 13:01:24,303 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:24,304 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:24,304 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-07 13:01:24,304 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-07 13:01:24,307 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:24,307 INFO L93 Difference]: Finished difference Result 81 states and 111 transitions. [2022-04-07 13:01:24,308 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 111 transitions. [2022-04-07 13:01:24,308 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:24,308 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:24,308 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 13:01:24,308 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 13:01:24,309 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-07 13:01:24,311 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 100 transitions. [2022-04-07 13:01:24,311 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 100 transitions. Word has length 31 [2022-04-07 13:01:24,311 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 13:01:24,311 INFO L478 AbstractCegarLoop]: Abstraction has 74 states and 100 transitions. [2022-04-07 13:01:24,312 INFO L479 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-07 13:01:24,312 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 100 transitions. [2022-04-07 13:01:24,312 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-07 13:01:24,312 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 13:01:24,312 INFO L499 BasicCegarLoop]: 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-07 13:01:24,345 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-07 13:01:24,529 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:01:24,530 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 13:01:24,530 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 13:01:24,530 INFO L85 PathProgramCache]: Analyzing trace with hash 202176206, now seen corresponding path program 1 times [2022-04-07 13:01:24,530 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 13:01:24,531 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [966246481] [2022-04-07 13:01:24,531 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:24,531 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 13:01:24,553 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 13:01:24,553 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [95088092] [2022-04-07 13:01:24,553 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:24,553 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:01:24,553 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 13:01:24,561 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 13:01:24,567 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-07 13:01:24,626 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:24,627 INFO L263 TraceCheckSpWp]: Trace formula consists of 123 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-07 13:01:24,635 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:24,637 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 13:01:24,774 INFO L272 TraceCheckUtils]: 0: Hoare triple {1622#true} call ULTIMATE.init(); {1622#true} is VALID [2022-04-07 13:01:24,776 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-07 13:01:24,776 INFO L290 TraceCheckUtils]: 2: Hoare triple {1630#(<= ~counter~0 0)} assume true; {1630#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:24,777 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1630#(<= ~counter~0 0)} {1622#true} #93#return; {1630#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:24,778 INFO L272 TraceCheckUtils]: 4: Hoare triple {1630#(<= ~counter~0 0)} call #t~ret8 := main(); {1630#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:24,778 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-07 13:01:24,783 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-07 13:01:24,784 INFO L290 TraceCheckUtils]: 7: Hoare triple {1630#(<= ~counter~0 0)} ~cond := #in~cond; {1630#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:24,784 INFO L290 TraceCheckUtils]: 8: Hoare triple {1630#(<= ~counter~0 0)} assume !(0 == ~cond); {1630#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:24,784 INFO L290 TraceCheckUtils]: 9: Hoare triple {1630#(<= ~counter~0 0)} assume true; {1630#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:24,785 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1630#(<= ~counter~0 0)} {1630#(<= ~counter~0 0)} #77#return; {1630#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:24,785 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-07 13:01:24,785 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-07 13:01:24,786 INFO L290 TraceCheckUtils]: 13: Hoare triple {1664#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {1664#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:24,786 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-07 13:01:24,787 INFO L290 TraceCheckUtils]: 15: Hoare triple {1664#(<= ~counter~0 1)} ~cond := #in~cond; {1664#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:24,787 INFO L290 TraceCheckUtils]: 16: Hoare triple {1664#(<= ~counter~0 1)} assume !(0 == ~cond); {1664#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:24,787 INFO L290 TraceCheckUtils]: 17: Hoare triple {1664#(<= ~counter~0 1)} assume true; {1664#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:24,788 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1664#(<= ~counter~0 1)} {1664#(<= ~counter~0 1)} #79#return; {1664#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:24,788 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-07 13:01:24,788 INFO L290 TraceCheckUtils]: 20: Hoare triple {1664#(<= ~counter~0 1)} ~cond := #in~cond; {1664#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:24,789 INFO L290 TraceCheckUtils]: 21: Hoare triple {1664#(<= ~counter~0 1)} assume !(0 == ~cond); {1664#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:24,789 INFO L290 TraceCheckUtils]: 22: Hoare triple {1664#(<= ~counter~0 1)} assume true; {1664#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:24,789 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1664#(<= ~counter~0 1)} {1664#(<= ~counter~0 1)} #81#return; {1664#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:24,790 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-07 13:01:24,790 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-07 13:01:24,790 INFO L290 TraceCheckUtils]: 26: Hoare triple {1704#(<= |main_#t~post7| 1)} assume !(#t~post7 < 50);havoc #t~post7; {1623#false} is VALID [2022-04-07 13:01:24,791 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-07 13:01:24,791 INFO L290 TraceCheckUtils]: 28: Hoare triple {1623#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1623#false} is VALID [2022-04-07 13:01:24,791 INFO L290 TraceCheckUtils]: 29: Hoare triple {1623#false} assume !(#t~post6 < 50);havoc #t~post6; {1623#false} is VALID [2022-04-07 13:01:24,791 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-07 13:01:24,791 INFO L290 TraceCheckUtils]: 31: Hoare triple {1623#false} ~cond := #in~cond; {1623#false} is VALID [2022-04-07 13:01:24,791 INFO L290 TraceCheckUtils]: 32: Hoare triple {1623#false} assume 0 == ~cond; {1623#false} is VALID [2022-04-07 13:01:24,791 INFO L290 TraceCheckUtils]: 33: Hoare triple {1623#false} assume !false; {1623#false} is VALID [2022-04-07 13:01:24,791 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-07 13:01:24,791 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 13:01:24,792 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 13:01:24,792 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [966246481] [2022-04-07 13:01:24,792 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 13:01:24,792 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [95088092] [2022-04-07 13:01:24,792 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [95088092] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 13:01:24,792 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 13:01:24,792 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-07 13:01:24,792 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2087219292] [2022-04-07 13:01:24,792 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 13:01:24,792 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-07 13:01:24,793 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 13:01:24,793 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-07 13:01:24,811 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-07 13:01:24,811 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-07 13:01:24,811 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 13:01:24,812 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-07 13:01:24,812 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-07 13:01:24,812 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-07 13:01:24,905 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:24,905 INFO L93 Difference]: Finished difference Result 113 states and 153 transitions. [2022-04-07 13:01:24,905 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-07 13:01:24,905 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-07 13:01:24,905 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 13:01:24,905 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-07 13:01:24,907 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 85 transitions. [2022-04-07 13:01:24,907 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-07 13:01:24,908 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 85 transitions. [2022-04-07 13:01:24,908 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 85 transitions. [2022-04-07 13:01:24,959 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-07 13:01:24,961 INFO L225 Difference]: With dead ends: 113 [2022-04-07 13:01:24,961 INFO L226 Difference]: Without dead ends: 78 [2022-04-07 13:01:24,961 INFO L912 BasicCegarLoop]: 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-07 13:01:24,962 INFO L913 BasicCegarLoop]: 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-07 13:01:24,962 INFO L914 BasicCegarLoop]: 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-07 13:01:24,963 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 78 states. [2022-04-07 13:01:24,973 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 78 to 78. [2022-04-07 13:01:24,973 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 13:01:24,974 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-07 13:01:24,974 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-07 13:01:24,974 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-07 13:01:24,977 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:24,977 INFO L93 Difference]: Finished difference Result 78 states and 102 transitions. [2022-04-07 13:01:24,977 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 102 transitions. [2022-04-07 13:01:24,977 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:24,977 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:24,978 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-07 13:01:24,978 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-07 13:01:24,980 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:24,980 INFO L93 Difference]: Finished difference Result 78 states and 102 transitions. [2022-04-07 13:01:24,980 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 102 transitions. [2022-04-07 13:01:24,981 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:24,981 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:24,981 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 13:01:24,981 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 13:01:24,981 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-07 13:01:24,983 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 78 states to 78 states and 102 transitions. [2022-04-07 13:01:24,983 INFO L78 Accepts]: Start accepts. Automaton has 78 states and 102 transitions. Word has length 34 [2022-04-07 13:01:24,984 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 13:01:24,984 INFO L478 AbstractCegarLoop]: Abstraction has 78 states and 102 transitions. [2022-04-07 13:01:24,984 INFO L479 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-07 13:01:24,984 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 102 transitions. [2022-04-07 13:01:24,984 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-07 13:01:24,984 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 13:01:24,984 INFO L499 BasicCegarLoop]: 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-07 13:01:25,017 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-07 13:01:25,199 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:01:25,200 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 13:01:25,200 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 13:01:25,200 INFO L85 PathProgramCache]: Analyzing trace with hash 1813008070, now seen corresponding path program 1 times [2022-04-07 13:01:25,200 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 13:01:25,200 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [49045292] [2022-04-07 13:01:25,200 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:25,200 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 13:01:25,217 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 13:01:25,217 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [454501137] [2022-04-07 13:01:25,217 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:25,217 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:01:25,217 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 13:01:25,230 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 13:01:25,231 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-07 13:01:25,276 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:25,277 INFO L263 TraceCheckSpWp]: Trace formula consists of 132 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-07 13:01:25,287 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:25,288 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 13:01:25,435 INFO L272 TraceCheckUtils]: 0: Hoare triple {2168#true} call ULTIMATE.init(); {2168#true} is VALID [2022-04-07 13:01:25,435 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-07 13:01:25,435 INFO L290 TraceCheckUtils]: 2: Hoare triple {2168#true} assume true; {2168#true} is VALID [2022-04-07 13:01:25,436 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2168#true} {2168#true} #93#return; {2168#true} is VALID [2022-04-07 13:01:25,436 INFO L272 TraceCheckUtils]: 4: Hoare triple {2168#true} call #t~ret8 := main(); {2168#true} is VALID [2022-04-07 13:01:25,436 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-07 13:01:25,436 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-07 13:01:25,436 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-07 13:01:25,436 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-07 13:01:25,437 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-07 13:01:25,437 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-07 13:01:25,438 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-07 13:01:25,438 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-07 13:01:25,438 INFO L290 TraceCheckUtils]: 13: Hoare triple {2205#(<= 1 main_~y~0)} assume !!(#t~post6 < 50);havoc #t~post6; {2205#(<= 1 main_~y~0)} is VALID [2022-04-07 13:01:25,438 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-07 13:01:25,438 INFO L290 TraceCheckUtils]: 15: Hoare triple {2168#true} ~cond := #in~cond; {2168#true} is VALID [2022-04-07 13:01:25,438 INFO L290 TraceCheckUtils]: 16: Hoare triple {2168#true} assume !(0 == ~cond); {2168#true} is VALID [2022-04-07 13:01:25,438 INFO L290 TraceCheckUtils]: 17: Hoare triple {2168#true} assume true; {2168#true} is VALID [2022-04-07 13:01:25,439 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2168#true} {2205#(<= 1 main_~y~0)} #79#return; {2205#(<= 1 main_~y~0)} is VALID [2022-04-07 13:01:25,439 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-07 13:01:25,439 INFO L290 TraceCheckUtils]: 20: Hoare triple {2168#true} ~cond := #in~cond; {2168#true} is VALID [2022-04-07 13:01:25,439 INFO L290 TraceCheckUtils]: 21: Hoare triple {2168#true} assume !(0 == ~cond); {2168#true} is VALID [2022-04-07 13:01:25,439 INFO L290 TraceCheckUtils]: 22: Hoare triple {2168#true} assume true; {2168#true} is VALID [2022-04-07 13:01:25,440 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2168#true} {2205#(<= 1 main_~y~0)} #81#return; {2205#(<= 1 main_~y~0)} is VALID [2022-04-07 13:01:25,440 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-07 13:01:25,440 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-07 13:01:25,441 INFO L290 TraceCheckUtils]: 26: Hoare triple {2248#(<= 1 main_~r~0)} assume !!(#t~post7 < 50);havoc #t~post7; {2248#(<= 1 main_~r~0)} is VALID [2022-04-07 13:01:25,441 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-07 13:01:25,441 INFO L290 TraceCheckUtils]: 28: Hoare triple {2168#true} ~cond := #in~cond; {2168#true} is VALID [2022-04-07 13:01:25,441 INFO L290 TraceCheckUtils]: 29: Hoare triple {2168#true} assume !(0 == ~cond); {2168#true} is VALID [2022-04-07 13:01:25,441 INFO L290 TraceCheckUtils]: 30: Hoare triple {2168#true} assume true; {2168#true} is VALID [2022-04-07 13:01:25,442 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2168#true} {2248#(<= 1 main_~r~0)} #83#return; {2248#(<= 1 main_~r~0)} is VALID [2022-04-07 13:01:25,442 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-07 13:01:25,442 INFO L290 TraceCheckUtils]: 33: Hoare triple {2168#true} ~cond := #in~cond; {2168#true} is VALID [2022-04-07 13:01:25,442 INFO L290 TraceCheckUtils]: 34: Hoare triple {2168#true} assume !(0 == ~cond); {2168#true} is VALID [2022-04-07 13:01:25,442 INFO L290 TraceCheckUtils]: 35: Hoare triple {2168#true} assume true; {2168#true} is VALID [2022-04-07 13:01:25,442 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {2168#true} {2248#(<= 1 main_~r~0)} #85#return; {2248#(<= 1 main_~r~0)} is VALID [2022-04-07 13:01:25,443 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-07 13:01:25,443 INFO L290 TraceCheckUtils]: 38: Hoare triple {2288#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2292#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 13:01:25,444 INFO L290 TraceCheckUtils]: 39: Hoare triple {2292#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2169#false} is VALID [2022-04-07 13:01:25,444 INFO L290 TraceCheckUtils]: 40: Hoare triple {2169#false} assume !false; {2169#false} is VALID [2022-04-07 13:01:25,444 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-07 13:01:25,444 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 13:01:25,444 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 13:01:25,444 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [49045292] [2022-04-07 13:01:25,444 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 13:01:25,444 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [454501137] [2022-04-07 13:01:25,444 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [454501137] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 13:01:25,444 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 13:01:25,444 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-07 13:01:25,445 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1276705632] [2022-04-07 13:01:25,445 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 13:01:25,445 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-07 13:01:25,445 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 13:01:25,445 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-07 13:01:25,464 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-07 13:01:25,465 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-07 13:01:25,465 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 13:01:25,465 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-07 13:01:25,465 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-07 13:01:25,465 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-07 13:01:25,718 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:25,719 INFO L93 Difference]: Finished difference Result 84 states and 107 transitions. [2022-04-07 13:01:25,719 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-07 13:01:25,719 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-07 13:01:25,719 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 13:01:25,719 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-07 13:01:25,720 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-07 13:01:25,720 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-07 13:01:25,721 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-07 13:01:25,721 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 47 transitions. [2022-04-07 13:01:25,749 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-07 13:01:25,751 INFO L225 Difference]: With dead ends: 84 [2022-04-07 13:01:25,751 INFO L226 Difference]: Without dead ends: 82 [2022-04-07 13:01:25,751 INFO L912 BasicCegarLoop]: 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-07 13:01:25,752 INFO L913 BasicCegarLoop]: 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-07 13:01:25,752 INFO L914 BasicCegarLoop]: 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-07 13:01:25,752 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 82 states. [2022-04-07 13:01:25,783 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 82 to 82. [2022-04-07 13:01:25,784 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 13:01:25,784 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-07 13:01:25,784 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-07 13:01:25,784 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-07 13:01:25,787 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:25,787 INFO L93 Difference]: Finished difference Result 82 states and 105 transitions. [2022-04-07 13:01:25,787 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 105 transitions. [2022-04-07 13:01:25,787 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:25,787 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:25,787 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-07 13:01:25,788 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-07 13:01:25,790 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:25,790 INFO L93 Difference]: Finished difference Result 82 states and 105 transitions. [2022-04-07 13:01:25,790 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 105 transitions. [2022-04-07 13:01:25,790 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:25,790 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:25,791 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 13:01:25,791 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 13:01:25,791 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-07 13:01:25,793 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 82 states to 82 states and 105 transitions. [2022-04-07 13:01:25,793 INFO L78 Accepts]: Start accepts. Automaton has 82 states and 105 transitions. Word has length 41 [2022-04-07 13:01:25,793 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 13:01:25,793 INFO L478 AbstractCegarLoop]: Abstraction has 82 states and 105 transitions. [2022-04-07 13:01:25,794 INFO L479 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-07 13:01:25,794 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 105 transitions. [2022-04-07 13:01:25,794 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-07 13:01:25,794 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 13:01:25,794 INFO L499 BasicCegarLoop]: 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-07 13:01:25,813 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-07 13:01:26,012 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:01:26,013 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 13:01:26,013 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 13:01:26,013 INFO L85 PathProgramCache]: Analyzing trace with hash -683043127, now seen corresponding path program 1 times [2022-04-07 13:01:26,013 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 13:01:26,013 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [494082730] [2022-04-07 13:01:26,014 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:26,014 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 13:01:26,025 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 13:01:26,026 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [200898033] [2022-04-07 13:01:26,026 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:26,026 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:01:26,026 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 13:01:26,027 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 13:01:26,028 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-07 13:01:26,062 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:26,063 INFO L263 TraceCheckSpWp]: Trace formula consists of 142 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-07 13:01:26,084 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:26,085 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 13:01:26,303 INFO L272 TraceCheckUtils]: 0: Hoare triple {2712#true} call ULTIMATE.init(); {2712#true} is VALID [2022-04-07 13:01:26,303 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-07 13:01:26,303 INFO L290 TraceCheckUtils]: 2: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-07 13:01:26,303 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2712#true} {2712#true} #93#return; {2712#true} is VALID [2022-04-07 13:01:26,303 INFO L272 TraceCheckUtils]: 4: Hoare triple {2712#true} call #t~ret8 := main(); {2712#true} is VALID [2022-04-07 13:01:26,303 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-07 13:01:26,303 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-07 13:01:26,303 INFO L290 TraceCheckUtils]: 7: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-07 13:01:26,303 INFO L290 TraceCheckUtils]: 8: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-07 13:01:26,306 INFO L290 TraceCheckUtils]: 9: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-07 13:01:26,307 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2712#true} {2712#true} #77#return; {2712#true} is VALID [2022-04-07 13:01:26,307 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-07 13:01:26,307 INFO L290 TraceCheckUtils]: 12: Hoare triple {2712#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2712#true} is VALID [2022-04-07 13:01:26,307 INFO L290 TraceCheckUtils]: 13: Hoare triple {2712#true} assume !!(#t~post6 < 50);havoc #t~post6; {2712#true} is VALID [2022-04-07 13:01:26,307 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-07 13:01:26,307 INFO L290 TraceCheckUtils]: 15: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-07 13:01:26,307 INFO L290 TraceCheckUtils]: 16: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-07 13:01:26,307 INFO L290 TraceCheckUtils]: 17: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-07 13:01:26,307 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2712#true} {2712#true} #79#return; {2712#true} is VALID [2022-04-07 13:01:26,307 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-07 13:01:26,307 INFO L290 TraceCheckUtils]: 20: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-07 13:01:26,308 INFO L290 TraceCheckUtils]: 21: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-07 13:01:26,308 INFO L290 TraceCheckUtils]: 22: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-07 13:01:26,308 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2712#true} {2712#true} #81#return; {2712#true} is VALID [2022-04-07 13:01:26,308 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-07 13:01:26,308 INFO L290 TraceCheckUtils]: 25: Hoare triple {2712#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2712#true} is VALID [2022-04-07 13:01:26,308 INFO L290 TraceCheckUtils]: 26: Hoare triple {2712#true} assume !!(#t~post7 < 50);havoc #t~post7; {2712#true} is VALID [2022-04-07 13:01:26,308 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-07 13:01:26,308 INFO L290 TraceCheckUtils]: 28: Hoare triple {2712#true} ~cond := #in~cond; {2801#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-07 13:01:26,309 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-07 13:01:26,309 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-07 13:01:26,309 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-07 13:01:26,310 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-07 13:01:26,310 INFO L290 TraceCheckUtils]: 33: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-07 13:01:26,310 INFO L290 TraceCheckUtils]: 34: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-07 13:01:26,310 INFO L290 TraceCheckUtils]: 35: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-07 13:01:26,310 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-07 13:01:26,310 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-07 13:01:26,310 INFO L290 TraceCheckUtils]: 38: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-07 13:01:26,311 INFO L290 TraceCheckUtils]: 39: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-07 13:01:26,311 INFO L290 TraceCheckUtils]: 40: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-07 13:01:26,311 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-07 13:01:26,312 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-07 13:01:26,312 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-07 13:01:26,312 INFO L290 TraceCheckUtils]: 44: Hoare triple {2850#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2854#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 13:01:26,313 INFO L290 TraceCheckUtils]: 45: Hoare triple {2854#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2713#false} is VALID [2022-04-07 13:01:26,313 INFO L290 TraceCheckUtils]: 46: Hoare triple {2713#false} assume !false; {2713#false} is VALID [2022-04-07 13:01:26,314 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-07 13:01:26,314 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 13:01:30,735 INFO L290 TraceCheckUtils]: 46: Hoare triple {2713#false} assume !false; {2713#false} is VALID [2022-04-07 13:01:30,735 INFO L290 TraceCheckUtils]: 45: Hoare triple {2854#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2713#false} is VALID [2022-04-07 13:01:30,736 INFO L290 TraceCheckUtils]: 44: Hoare triple {2850#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2854#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 13:01:30,736 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-07 13:01:30,737 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-07 13:01:30,737 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-07 13:01:30,742 INFO L290 TraceCheckUtils]: 40: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-07 13:01:30,742 INFO L290 TraceCheckUtils]: 39: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-07 13:01:30,743 INFO L290 TraceCheckUtils]: 38: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-07 13:01:30,744 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-07 13:01:30,747 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-07 13:01:30,749 INFO L290 TraceCheckUtils]: 35: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-07 13:01:30,749 INFO L290 TraceCheckUtils]: 34: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-07 13:01:30,750 INFO L290 TraceCheckUtils]: 33: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-07 13:01:30,750 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-07 13:01:30,751 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-07 13:01:30,752 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-07 13:01:30,752 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-07 13:01:30,753 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-07 13:01:30,753 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-07 13:01:30,753 INFO L290 TraceCheckUtils]: 26: Hoare triple {2712#true} assume !!(#t~post7 < 50);havoc #t~post7; {2712#true} is VALID [2022-04-07 13:01:30,753 INFO L290 TraceCheckUtils]: 25: Hoare triple {2712#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2712#true} is VALID [2022-04-07 13:01:30,753 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-07 13:01:30,753 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2712#true} {2712#true} #81#return; {2712#true} is VALID [2022-04-07 13:01:30,753 INFO L290 TraceCheckUtils]: 22: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-07 13:01:30,753 INFO L290 TraceCheckUtils]: 21: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-07 13:01:30,753 INFO L290 TraceCheckUtils]: 20: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-07 13:01:30,753 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-07 13:01:30,754 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2712#true} {2712#true} #79#return; {2712#true} is VALID [2022-04-07 13:01:30,754 INFO L290 TraceCheckUtils]: 17: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-07 13:01:30,754 INFO L290 TraceCheckUtils]: 16: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-07 13:01:30,754 INFO L290 TraceCheckUtils]: 15: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-07 13:01:30,754 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-07 13:01:30,754 INFO L290 TraceCheckUtils]: 13: Hoare triple {2712#true} assume !!(#t~post6 < 50);havoc #t~post6; {2712#true} is VALID [2022-04-07 13:01:30,754 INFO L290 TraceCheckUtils]: 12: Hoare triple {2712#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2712#true} is VALID [2022-04-07 13:01:30,754 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-07 13:01:30,754 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2712#true} {2712#true} #77#return; {2712#true} is VALID [2022-04-07 13:01:30,754 INFO L290 TraceCheckUtils]: 9: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-07 13:01:30,754 INFO L290 TraceCheckUtils]: 8: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-07 13:01:30,754 INFO L290 TraceCheckUtils]: 7: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-07 13:01:30,754 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-07 13:01:30,754 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-07 13:01:30,755 INFO L272 TraceCheckUtils]: 4: Hoare triple {2712#true} call #t~ret8 := main(); {2712#true} is VALID [2022-04-07 13:01:30,755 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2712#true} {2712#true} #93#return; {2712#true} is VALID [2022-04-07 13:01:30,755 INFO L290 TraceCheckUtils]: 2: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-07 13:01:30,755 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-07 13:01:30,755 INFO L272 TraceCheckUtils]: 0: Hoare triple {2712#true} call ULTIMATE.init(); {2712#true} is VALID [2022-04-07 13:01:30,755 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-07 13:01:30,755 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 13:01:30,755 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [494082730] [2022-04-07 13:01:30,755 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 13:01:30,755 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [200898033] [2022-04-07 13:01:30,755 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [200898033] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 13:01:30,756 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 13:01:30,756 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-07 13:01:30,756 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1293310853] [2022-04-07 13:01:30,756 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 13:01:30,756 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-07 13:01:30,757 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 13:01:30,757 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-07 13:01:30,808 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-07 13:01:30,809 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-07 13:01:30,809 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 13:01:30,809 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-07 13:01:30,810 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=68, Unknown=0, NotChecked=0, Total=90 [2022-04-07 13:01:30,810 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-07 13:01:31,183 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:31,183 INFO L93 Difference]: Finished difference Result 88 states and 110 transitions. [2022-04-07 13:01:31,183 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-07 13:01:31,184 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-07 13:01:31,184 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 13:01:31,184 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-07 13:01:31,185 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-07 13:01:31,185 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-07 13:01:31,186 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-07 13:01:31,186 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 47 transitions. [2022-04-07 13:01:31,223 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-07 13:01:31,225 INFO L225 Difference]: With dead ends: 88 [2022-04-07 13:01:31,225 INFO L226 Difference]: Without dead ends: 86 [2022-04-07 13:01:31,225 INFO L912 BasicCegarLoop]: 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-07 13:01:31,225 INFO L913 BasicCegarLoop]: 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-07 13:01:31,226 INFO L914 BasicCegarLoop]: 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-07 13:01:31,226 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 86 states. [2022-04-07 13:01:31,261 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 86 to 86. [2022-04-07 13:01:31,262 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 13:01:31,262 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-07 13:01:31,262 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-07 13:01:31,263 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-07 13:01:31,265 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:31,266 INFO L93 Difference]: Finished difference Result 86 states and 108 transitions. [2022-04-07 13:01:31,266 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 108 transitions. [2022-04-07 13:01:31,266 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:31,266 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:31,270 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-07 13:01:31,271 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-07 13:01:31,274 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:31,274 INFO L93 Difference]: Finished difference Result 86 states and 108 transitions. [2022-04-07 13:01:31,274 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 108 transitions. [2022-04-07 13:01:31,274 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:31,274 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:31,274 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 13:01:31,274 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 13:01:31,275 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-07 13:01:31,277 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 86 states to 86 states and 108 transitions. [2022-04-07 13:01:31,277 INFO L78 Accepts]: Start accepts. Automaton has 86 states and 108 transitions. Word has length 47 [2022-04-07 13:01:31,277 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 13:01:31,277 INFO L478 AbstractCegarLoop]: Abstraction has 86 states and 108 transitions. [2022-04-07 13:01:31,278 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 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-07 13:01:31,278 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 108 transitions. [2022-04-07 13:01:31,278 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-04-07 13:01:31,278 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 13:01:31,279 INFO L499 BasicCegarLoop]: 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-07 13:01:31,311 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-07 13:01:31,495 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:01:31,495 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 13:01:31,495 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 13:01:31,496 INFO L85 PathProgramCache]: Analyzing trace with hash -589126939, now seen corresponding path program 1 times [2022-04-07 13:01:31,496 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 13:01:31,496 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1243198566] [2022-04-07 13:01:31,496 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:31,496 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 13:01:31,512 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 13:01:31,513 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1908716283] [2022-04-07 13:01:31,513 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:31,513 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:01:31,513 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 13:01:31,519 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 13:01:31,520 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-07 13:01:31,554 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:31,555 INFO L263 TraceCheckSpWp]: Trace formula consists of 151 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-07 13:01:31,565 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:31,568 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 13:01:31,787 INFO L272 TraceCheckUtils]: 0: Hoare triple {3435#true} call ULTIMATE.init(); {3435#true} is VALID [2022-04-07 13:01:31,788 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-07 13:01:31,788 INFO L290 TraceCheckUtils]: 2: Hoare triple {3443#(<= ~counter~0 0)} assume true; {3443#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:31,789 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3443#(<= ~counter~0 0)} {3435#true} #93#return; {3443#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:31,789 INFO L272 TraceCheckUtils]: 4: Hoare triple {3443#(<= ~counter~0 0)} call #t~ret8 := main(); {3443#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:31,789 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-07 13:01:31,790 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-07 13:01:31,790 INFO L290 TraceCheckUtils]: 7: Hoare triple {3443#(<= ~counter~0 0)} ~cond := #in~cond; {3443#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:31,790 INFO L290 TraceCheckUtils]: 8: Hoare triple {3443#(<= ~counter~0 0)} assume !(0 == ~cond); {3443#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:31,791 INFO L290 TraceCheckUtils]: 9: Hoare triple {3443#(<= ~counter~0 0)} assume true; {3443#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:31,791 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3443#(<= ~counter~0 0)} {3443#(<= ~counter~0 0)} #77#return; {3443#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:31,791 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-07 13:01:31,792 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-07 13:01:31,792 INFO L290 TraceCheckUtils]: 13: Hoare triple {3477#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {3477#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:31,793 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-07 13:01:31,793 INFO L290 TraceCheckUtils]: 15: Hoare triple {3477#(<= ~counter~0 1)} ~cond := #in~cond; {3477#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:31,794 INFO L290 TraceCheckUtils]: 16: Hoare triple {3477#(<= ~counter~0 1)} assume !(0 == ~cond); {3477#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:31,794 INFO L290 TraceCheckUtils]: 17: Hoare triple {3477#(<= ~counter~0 1)} assume true; {3477#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:31,795 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3477#(<= ~counter~0 1)} {3477#(<= ~counter~0 1)} #79#return; {3477#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:31,795 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-07 13:01:31,797 INFO L290 TraceCheckUtils]: 20: Hoare triple {3477#(<= ~counter~0 1)} ~cond := #in~cond; {3477#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:31,798 INFO L290 TraceCheckUtils]: 21: Hoare triple {3477#(<= ~counter~0 1)} assume !(0 == ~cond); {3477#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:31,798 INFO L290 TraceCheckUtils]: 22: Hoare triple {3477#(<= ~counter~0 1)} assume true; {3477#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:31,799 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3477#(<= ~counter~0 1)} {3477#(<= ~counter~0 1)} #81#return; {3477#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:31,799 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-07 13:01:31,799 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-07 13:01:31,800 INFO L290 TraceCheckUtils]: 26: Hoare triple {3517#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {3517#(<= ~counter~0 2)} is VALID [2022-04-07 13:01:31,801 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-07 13:01:31,801 INFO L290 TraceCheckUtils]: 28: Hoare triple {3517#(<= ~counter~0 2)} ~cond := #in~cond; {3517#(<= ~counter~0 2)} is VALID [2022-04-07 13:01:31,802 INFO L290 TraceCheckUtils]: 29: Hoare triple {3517#(<= ~counter~0 2)} assume !(0 == ~cond); {3517#(<= ~counter~0 2)} is VALID [2022-04-07 13:01:31,802 INFO L290 TraceCheckUtils]: 30: Hoare triple {3517#(<= ~counter~0 2)} assume true; {3517#(<= ~counter~0 2)} is VALID [2022-04-07 13:01:31,802 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {3517#(<= ~counter~0 2)} {3517#(<= ~counter~0 2)} #83#return; {3517#(<= ~counter~0 2)} is VALID [2022-04-07 13:01:31,803 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-07 13:01:31,803 INFO L290 TraceCheckUtils]: 33: Hoare triple {3517#(<= ~counter~0 2)} ~cond := #in~cond; {3517#(<= ~counter~0 2)} is VALID [2022-04-07 13:01:31,804 INFO L290 TraceCheckUtils]: 34: Hoare triple {3517#(<= ~counter~0 2)} assume !(0 == ~cond); {3517#(<= ~counter~0 2)} is VALID [2022-04-07 13:01:31,804 INFO L290 TraceCheckUtils]: 35: Hoare triple {3517#(<= ~counter~0 2)} assume true; {3517#(<= ~counter~0 2)} is VALID [2022-04-07 13:01:31,805 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {3517#(<= ~counter~0 2)} {3517#(<= ~counter~0 2)} #85#return; {3517#(<= ~counter~0 2)} is VALID [2022-04-07 13:01:31,805 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-07 13:01:31,805 INFO L290 TraceCheckUtils]: 38: Hoare triple {3517#(<= ~counter~0 2)} ~cond := #in~cond; {3517#(<= ~counter~0 2)} is VALID [2022-04-07 13:01:31,806 INFO L290 TraceCheckUtils]: 39: Hoare triple {3517#(<= ~counter~0 2)} assume !(0 == ~cond); {3517#(<= ~counter~0 2)} is VALID [2022-04-07 13:01:31,806 INFO L290 TraceCheckUtils]: 40: Hoare triple {3517#(<= ~counter~0 2)} assume true; {3517#(<= ~counter~0 2)} is VALID [2022-04-07 13:01:31,806 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3517#(<= ~counter~0 2)} {3517#(<= ~counter~0 2)} #87#return; {3517#(<= ~counter~0 2)} is VALID [2022-04-07 13:01:31,807 INFO L290 TraceCheckUtils]: 42: Hoare triple {3517#(<= ~counter~0 2)} assume !(~r~0 >= 2 * ~b~0); {3517#(<= ~counter~0 2)} is VALID [2022-04-07 13:01:31,807 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-07 13:01:31,807 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-07 13:01:31,808 INFO L290 TraceCheckUtils]: 45: Hoare triple {3575#(<= |main_#t~post6| 2)} assume !(#t~post6 < 50);havoc #t~post6; {3436#false} is VALID [2022-04-07 13:01:31,808 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-07 13:01:31,808 INFO L290 TraceCheckUtils]: 47: Hoare triple {3436#false} ~cond := #in~cond; {3436#false} is VALID [2022-04-07 13:01:31,808 INFO L290 TraceCheckUtils]: 48: Hoare triple {3436#false} assume 0 == ~cond; {3436#false} is VALID [2022-04-07 13:01:31,808 INFO L290 TraceCheckUtils]: 49: Hoare triple {3436#false} assume !false; {3436#false} is VALID [2022-04-07 13:01:31,808 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-07 13:01:31,808 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 13:01:32,042 INFO L290 TraceCheckUtils]: 49: Hoare triple {3436#false} assume !false; {3436#false} is VALID [2022-04-07 13:01:32,042 INFO L290 TraceCheckUtils]: 48: Hoare triple {3436#false} assume 0 == ~cond; {3436#false} is VALID [2022-04-07 13:01:32,042 INFO L290 TraceCheckUtils]: 47: Hoare triple {3436#false} ~cond := #in~cond; {3436#false} is VALID [2022-04-07 13:01:32,042 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-07 13:01:32,044 INFO L290 TraceCheckUtils]: 45: Hoare triple {3603#(< |main_#t~post6| 50)} assume !(#t~post6 < 50);havoc #t~post6; {3436#false} is VALID [2022-04-07 13:01:32,045 INFO L290 TraceCheckUtils]: 44: Hoare triple {3607#(< ~counter~0 50)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3603#(< |main_#t~post6| 50)} is VALID [2022-04-07 13:01:32,045 INFO L290 TraceCheckUtils]: 43: Hoare triple {3607#(< ~counter~0 50)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {3607#(< ~counter~0 50)} is VALID [2022-04-07 13:01:32,045 INFO L290 TraceCheckUtils]: 42: Hoare triple {3607#(< ~counter~0 50)} assume !(~r~0 >= 2 * ~b~0); {3607#(< ~counter~0 50)} is VALID [2022-04-07 13:01:32,046 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3435#true} {3607#(< ~counter~0 50)} #87#return; {3607#(< ~counter~0 50)} is VALID [2022-04-07 13:01:32,046 INFO L290 TraceCheckUtils]: 40: Hoare triple {3435#true} assume true; {3435#true} is VALID [2022-04-07 13:01:32,046 INFO L290 TraceCheckUtils]: 39: Hoare triple {3435#true} assume !(0 == ~cond); {3435#true} is VALID [2022-04-07 13:01:32,046 INFO L290 TraceCheckUtils]: 38: Hoare triple {3435#true} ~cond := #in~cond; {3435#true} is VALID [2022-04-07 13:01:32,046 INFO L272 TraceCheckUtils]: 37: Hoare triple {3607#(< ~counter~0 50)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {3435#true} is VALID [2022-04-07 13:01:32,050 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {3435#true} {3607#(< ~counter~0 50)} #85#return; {3607#(< ~counter~0 50)} is VALID [2022-04-07 13:01:32,050 INFO L290 TraceCheckUtils]: 35: Hoare triple {3435#true} assume true; {3435#true} is VALID [2022-04-07 13:01:32,050 INFO L290 TraceCheckUtils]: 34: Hoare triple {3435#true} assume !(0 == ~cond); {3435#true} is VALID [2022-04-07 13:01:32,050 INFO L290 TraceCheckUtils]: 33: Hoare triple {3435#true} ~cond := #in~cond; {3435#true} is VALID [2022-04-07 13:01:32,051 INFO L272 TraceCheckUtils]: 32: Hoare triple {3607#(< ~counter~0 50)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3435#true} is VALID [2022-04-07 13:01:32,051 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {3435#true} {3607#(< ~counter~0 50)} #83#return; {3607#(< ~counter~0 50)} is VALID [2022-04-07 13:01:32,051 INFO L290 TraceCheckUtils]: 30: Hoare triple {3435#true} assume true; {3435#true} is VALID [2022-04-07 13:01:32,051 INFO L290 TraceCheckUtils]: 29: Hoare triple {3435#true} assume !(0 == ~cond); {3435#true} is VALID [2022-04-07 13:01:32,051 INFO L290 TraceCheckUtils]: 28: Hoare triple {3435#true} ~cond := #in~cond; {3435#true} is VALID [2022-04-07 13:01:32,051 INFO L272 TraceCheckUtils]: 27: Hoare triple {3607#(< ~counter~0 50)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3435#true} is VALID [2022-04-07 13:01:32,052 INFO L290 TraceCheckUtils]: 26: Hoare triple {3607#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {3607#(< ~counter~0 50)} is VALID [2022-04-07 13:01:32,052 INFO L290 TraceCheckUtils]: 25: Hoare triple {3665#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3607#(< ~counter~0 50)} is VALID [2022-04-07 13:01:32,052 INFO L290 TraceCheckUtils]: 24: Hoare triple {3665#(< ~counter~0 49)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {3665#(< ~counter~0 49)} is VALID [2022-04-07 13:01:32,053 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3435#true} {3665#(< ~counter~0 49)} #81#return; {3665#(< ~counter~0 49)} is VALID [2022-04-07 13:01:32,053 INFO L290 TraceCheckUtils]: 22: Hoare triple {3435#true} assume true; {3435#true} is VALID [2022-04-07 13:01:32,053 INFO L290 TraceCheckUtils]: 21: Hoare triple {3435#true} assume !(0 == ~cond); {3435#true} is VALID [2022-04-07 13:01:32,053 INFO L290 TraceCheckUtils]: 20: Hoare triple {3435#true} ~cond := #in~cond; {3435#true} is VALID [2022-04-07 13:01:32,053 INFO L272 TraceCheckUtils]: 19: Hoare triple {3665#(< ~counter~0 49)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3435#true} is VALID [2022-04-07 13:01:32,054 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3435#true} {3665#(< ~counter~0 49)} #79#return; {3665#(< ~counter~0 49)} is VALID [2022-04-07 13:01:32,054 INFO L290 TraceCheckUtils]: 17: Hoare triple {3435#true} assume true; {3435#true} is VALID [2022-04-07 13:01:32,054 INFO L290 TraceCheckUtils]: 16: Hoare triple {3435#true} assume !(0 == ~cond); {3435#true} is VALID [2022-04-07 13:01:32,054 INFO L290 TraceCheckUtils]: 15: Hoare triple {3435#true} ~cond := #in~cond; {3435#true} is VALID [2022-04-07 13:01:32,054 INFO L272 TraceCheckUtils]: 14: Hoare triple {3665#(< ~counter~0 49)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3435#true} is VALID [2022-04-07 13:01:32,054 INFO L290 TraceCheckUtils]: 13: Hoare triple {3665#(< ~counter~0 49)} assume !!(#t~post6 < 50);havoc #t~post6; {3665#(< ~counter~0 49)} is VALID [2022-04-07 13:01:32,055 INFO L290 TraceCheckUtils]: 12: Hoare triple {3705#(< ~counter~0 48)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3665#(< ~counter~0 49)} is VALID [2022-04-07 13:01:32,056 INFO L290 TraceCheckUtils]: 11: Hoare triple {3705#(< ~counter~0 48)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {3705#(< ~counter~0 48)} is VALID [2022-04-07 13:01:32,057 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3435#true} {3705#(< ~counter~0 48)} #77#return; {3705#(< ~counter~0 48)} is VALID [2022-04-07 13:01:32,057 INFO L290 TraceCheckUtils]: 9: Hoare triple {3435#true} assume true; {3435#true} is VALID [2022-04-07 13:01:32,057 INFO L290 TraceCheckUtils]: 8: Hoare triple {3435#true} assume !(0 == ~cond); {3435#true} is VALID [2022-04-07 13:01:32,057 INFO L290 TraceCheckUtils]: 7: Hoare triple {3435#true} ~cond := #in~cond; {3435#true} is VALID [2022-04-07 13:01:32,057 INFO L272 TraceCheckUtils]: 6: Hoare triple {3705#(< ~counter~0 48)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3435#true} is VALID [2022-04-07 13:01:32,060 INFO L290 TraceCheckUtils]: 5: Hoare triple {3705#(< ~counter~0 48)} 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 48)} is VALID [2022-04-07 13:01:32,060 INFO L272 TraceCheckUtils]: 4: Hoare triple {3705#(< ~counter~0 48)} call #t~ret8 := main(); {3705#(< ~counter~0 48)} is VALID [2022-04-07 13:01:32,060 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3705#(< ~counter~0 48)} {3435#true} #93#return; {3705#(< ~counter~0 48)} is VALID [2022-04-07 13:01:32,060 INFO L290 TraceCheckUtils]: 2: Hoare triple {3705#(< ~counter~0 48)} assume true; {3705#(< ~counter~0 48)} is VALID [2022-04-07 13:01:32,062 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 48)} is VALID [2022-04-07 13:01:32,062 INFO L272 TraceCheckUtils]: 0: Hoare triple {3435#true} call ULTIMATE.init(); {3435#true} is VALID [2022-04-07 13:01:32,062 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-07 13:01:32,062 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 13:01:32,062 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1243198566] [2022-04-07 13:01:32,062 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 13:01:32,062 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1908716283] [2022-04-07 13:01:32,062 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1908716283] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 13:01:32,062 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 13:01:32,062 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-07 13:01:32,063 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [315552993] [2022-04-07 13:01:32,063 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 13:01:32,063 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-07 13:01:32,063 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 13:01:32,063 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-07 13:01:32,114 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 13:01:32,114 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-07 13:01:32,114 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 13:01:32,114 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-07 13:01:32,114 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-07 13:01:32,115 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-07 13:01:32,622 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:32,623 INFO L93 Difference]: Finished difference Result 257 states and 311 transitions. [2022-04-07 13:01:32,623 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-07 13:01:32,624 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-07 13:01:32,624 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 13:01:32,624 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-07 13:01:32,626 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 169 transitions. [2022-04-07 13:01:32,626 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-07 13:01:32,628 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 169 transitions. [2022-04-07 13:01:32,629 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 169 transitions. [2022-04-07 13:01:32,732 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-07 13:01:32,737 INFO L225 Difference]: With dead ends: 257 [2022-04-07 13:01:32,738 INFO L226 Difference]: Without dead ends: 250 [2022-04-07 13:01:32,738 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 103 GetRequests, 91 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=64, Invalid=118, Unknown=0, NotChecked=0, Total=182 [2022-04-07 13:01:32,739 INFO L913 BasicCegarLoop]: 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-07 13:01:32,739 INFO L914 BasicCegarLoop]: 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-07 13:01:32,739 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 250 states. [2022-04-07 13:01:32,872 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 250 to 239. [2022-04-07 13:01:32,872 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 13:01:32,872 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-07 13:01:32,873 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-07 13:01:32,874 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-07 13:01:32,880 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:32,880 INFO L93 Difference]: Finished difference Result 250 states and 299 transitions. [2022-04-07 13:01:32,880 INFO L276 IsEmpty]: Start isEmpty. Operand 250 states and 299 transitions. [2022-04-07 13:01:32,881 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:32,881 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:32,882 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-07 13:01:32,882 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-07 13:01:32,887 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:32,887 INFO L93 Difference]: Finished difference Result 250 states and 299 transitions. [2022-04-07 13:01:32,887 INFO L276 IsEmpty]: Start isEmpty. Operand 250 states and 299 transitions. [2022-04-07 13:01:32,888 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:32,888 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:32,888 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 13:01:32,888 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 13:01:32,894 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-07 13:01:32,900 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 239 states to 239 states and 291 transitions. [2022-04-07 13:01:32,901 INFO L78 Accepts]: Start accepts. Automaton has 239 states and 291 transitions. Word has length 50 [2022-04-07 13:01:32,901 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 13:01:32,901 INFO L478 AbstractCegarLoop]: Abstraction has 239 states and 291 transitions. [2022-04-07 13:01:32,901 INFO L479 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-07 13:01:32,901 INFO L276 IsEmpty]: Start isEmpty. Operand 239 states and 291 transitions. [2022-04-07 13:01:32,902 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-07 13:01:32,902 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 13:01:32,902 INFO L499 BasicCegarLoop]: 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-07 13:01:32,918 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Ended with exit code 0 [2022-04-07 13:01:33,118 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable8 [2022-04-07 13:01:33,119 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 13:01:33,119 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 13:01:33,119 INFO L85 PathProgramCache]: Analyzing trace with hash -484699953, now seen corresponding path program 1 times [2022-04-07 13:01:33,119 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 13:01:33,119 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1005231483] [2022-04-07 13:01:33,119 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:33,119 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 13:01:33,132 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 13:01:33,132 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [137790940] [2022-04-07 13:01:33,132 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:33,132 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:01:33,132 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 13:01:33,137 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 13:01:33,138 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-04-07 13:01:33,178 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:33,179 INFO L263 TraceCheckSpWp]: Trace formula consists of 160 conjuncts, 22 conjunts are in the unsatisfiable core [2022-04-07 13:01:33,188 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:33,189 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 13:01:33,670 INFO L272 TraceCheckUtils]: 0: Hoare triple {4963#true} call ULTIMATE.init(); {4963#true} is VALID [2022-04-07 13:01:33,670 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-07 13:01:33,670 INFO L290 TraceCheckUtils]: 2: Hoare triple {4963#true} assume true; {4963#true} is VALID [2022-04-07 13:01:33,670 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4963#true} {4963#true} #93#return; {4963#true} is VALID [2022-04-07 13:01:33,670 INFO L272 TraceCheckUtils]: 4: Hoare triple {4963#true} call #t~ret8 := main(); {4963#true} is VALID [2022-04-07 13:01:33,670 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-07 13:01:33,670 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-07 13:01:33,671 INFO L290 TraceCheckUtils]: 7: Hoare triple {4963#true} ~cond := #in~cond; {4963#true} is VALID [2022-04-07 13:01:33,671 INFO L290 TraceCheckUtils]: 8: Hoare triple {4963#true} assume !(0 == ~cond); {4963#true} is VALID [2022-04-07 13:01:33,671 INFO L290 TraceCheckUtils]: 9: Hoare triple {4963#true} assume true; {4963#true} is VALID [2022-04-07 13:01:33,671 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4963#true} {4963#true} #77#return; {4963#true} is VALID [2022-04-07 13:01:33,671 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-07 13:01:33,671 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-07 13:01:33,672 INFO L290 TraceCheckUtils]: 13: Hoare triple {5001#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 50);havoc #t~post6; {5001#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-07 13:01:33,672 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-07 13:01:33,672 INFO L290 TraceCheckUtils]: 15: Hoare triple {4963#true} ~cond := #in~cond; {4963#true} is VALID [2022-04-07 13:01:33,672 INFO L290 TraceCheckUtils]: 16: Hoare triple {4963#true} assume !(0 == ~cond); {4963#true} is VALID [2022-04-07 13:01:33,672 INFO L290 TraceCheckUtils]: 17: Hoare triple {4963#true} assume true; {4963#true} is VALID [2022-04-07 13:01:33,673 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-07 13:01:33,673 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-07 13:01:33,673 INFO L290 TraceCheckUtils]: 20: Hoare triple {4963#true} ~cond := #in~cond; {4963#true} is VALID [2022-04-07 13:01:33,673 INFO L290 TraceCheckUtils]: 21: Hoare triple {4963#true} assume !(0 == ~cond); {4963#true} is VALID [2022-04-07 13:01:33,673 INFO L290 TraceCheckUtils]: 22: Hoare triple {4963#true} assume true; {4963#true} is VALID [2022-04-07 13:01:33,673 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-07 13:01:33,674 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-07 13:01:33,674 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-07 13:01:33,674 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 < 50);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-07 13:01:33,675 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-07 13:01:33,675 INFO L290 TraceCheckUtils]: 28: Hoare triple {4963#true} ~cond := #in~cond; {4963#true} is VALID [2022-04-07 13:01:33,675 INFO L290 TraceCheckUtils]: 29: Hoare triple {4963#true} assume !(0 == ~cond); {4963#true} is VALID [2022-04-07 13:01:33,675 INFO L290 TraceCheckUtils]: 30: Hoare triple {4963#true} assume true; {4963#true} is VALID [2022-04-07 13:01:33,675 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-07 13:01:33,675 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-07 13:01:33,675 INFO L290 TraceCheckUtils]: 33: Hoare triple {4963#true} ~cond := #in~cond; {4963#true} is VALID [2022-04-07 13:01:33,675 INFO L290 TraceCheckUtils]: 34: Hoare triple {4963#true} assume !(0 == ~cond); {4963#true} is VALID [2022-04-07 13:01:33,675 INFO L290 TraceCheckUtils]: 35: Hoare triple {4963#true} assume true; {4963#true} is VALID [2022-04-07 13:01:33,676 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-07 13:01:33,676 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-07 13:01:33,676 INFO L290 TraceCheckUtils]: 38: Hoare triple {4963#true} ~cond := #in~cond; {4963#true} is VALID [2022-04-07 13:01:33,676 INFO L290 TraceCheckUtils]: 39: Hoare triple {4963#true} assume !(0 == ~cond); {4963#true} is VALID [2022-04-07 13:01:33,676 INFO L290 TraceCheckUtils]: 40: Hoare triple {4963#true} assume true; {4963#true} is VALID [2022-04-07 13:01:33,677 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-07 13:01:33,677 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-07 13:01:33,678 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-07 13:01:33,678 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-07 13:01:33,679 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 < 50);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-07 13:01:33,679 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-07 13:01:33,679 INFO L290 TraceCheckUtils]: 47: Hoare triple {4963#true} ~cond := #in~cond; {5113#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-07 13:01:33,680 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-07 13:01:33,680 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-07 13:01:33,681 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-07 13:01:33,681 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-07 13:01:33,682 INFO L290 TraceCheckUtils]: 52: Hoare triple {5128#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {5132#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 13:01:33,682 INFO L290 TraceCheckUtils]: 53: Hoare triple {5132#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4964#false} is VALID [2022-04-07 13:01:33,682 INFO L290 TraceCheckUtils]: 54: Hoare triple {4964#false} assume !false; {4964#false} is VALID [2022-04-07 13:01:33,684 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-07 13:01:33,684 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 13:02:16,828 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 13:02:16,829 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1005231483] [2022-04-07 13:02:16,829 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 13:02:16,829 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [137790940] [2022-04-07 13:02:16,829 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [137790940] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-07 13:02:16,829 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-07 13:02:16,829 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11] total 11 [2022-04-07 13:02:16,829 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1271983060] [2022-04-07 13:02:16,829 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-07 13:02:16,830 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-07 13:02:16,830 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 13:02:16,830 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-07 13:02:16,863 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 13:02:16,863 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-07 13:02:16,863 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 13:02:16,863 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-07 13:02:16,863 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=58, Invalid=182, Unknown=0, NotChecked=0, Total=240 [2022-04-07 13:02:16,863 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-07 13:02:17,611 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:02:17,612 INFO L93 Difference]: Finished difference Result 318 states and 381 transitions. [2022-04-07 13:02:17,612 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-07 13:02:17,612 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-07 13:02:17,612 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 13:02:17,612 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-07 13:02:17,613 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 121 transitions. [2022-04-07 13:02:17,614 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-07 13:02:17,615 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 121 transitions. [2022-04-07 13:02:17,615 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 121 transitions. [2022-04-07 13:02:17,702 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-07 13:02:17,705 INFO L225 Difference]: With dead ends: 318 [2022-04-07 13:02:17,705 INFO L226 Difference]: Without dead ends: 203 [2022-04-07 13:02:17,706 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 88 GetRequests, 70 SyntacticMatches, 2 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 62 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=71, Invalid=235, Unknown=0, NotChecked=0, Total=306 [2022-04-07 13:02:17,707 INFO L913 BasicCegarLoop]: 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-07 13:02:17,707 INFO L914 BasicCegarLoop]: 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-07 13:02:17,707 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 203 states. [2022-04-07 13:02:17,788 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 203 to 202. [2022-04-07 13:02:17,789 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 13:02:17,789 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-07 13:02:17,789 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-07 13:02:17,790 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-07 13:02:17,793 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:02:17,793 INFO L93 Difference]: Finished difference Result 203 states and 241 transitions. [2022-04-07 13:02:17,793 INFO L276 IsEmpty]: Start isEmpty. Operand 203 states and 241 transitions. [2022-04-07 13:02:17,793 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:02:17,793 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:02:17,794 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-07 13:02:17,794 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-07 13:02:17,797 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:02:17,797 INFO L93 Difference]: Finished difference Result 203 states and 241 transitions. [2022-04-07 13:02:17,797 INFO L276 IsEmpty]: Start isEmpty. Operand 203 states and 241 transitions. [2022-04-07 13:02:17,798 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:02:17,798 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:02:17,798 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 13:02:17,798 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 13:02:17,798 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-07 13:02:17,802 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 202 states to 202 states and 240 transitions. [2022-04-07 13:02:17,802 INFO L78 Accepts]: Start accepts. Automaton has 202 states and 240 transitions. Word has length 55 [2022-04-07 13:02:17,802 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 13:02:17,802 INFO L478 AbstractCegarLoop]: Abstraction has 202 states and 240 transitions. [2022-04-07 13:02:17,802 INFO L479 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-07 13:02:17,802 INFO L276 IsEmpty]: Start isEmpty. Operand 202 states and 240 transitions. [2022-04-07 13:02:17,802 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-07 13:02:17,802 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 13:02:17,802 INFO L499 BasicCegarLoop]: 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-07 13:02:17,819 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-07 13:02:18,003 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-04-07 13:02:18,003 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 13:02:18,003 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 13:02:18,004 INFO L85 PathProgramCache]: Analyzing trace with hash 611309655, now seen corresponding path program 1 times [2022-04-07 13:02:18,004 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 13:02:18,004 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1416141149] [2022-04-07 13:02:18,004 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:02:18,004 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 13:02:18,014 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 13:02:18,014 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [22636183] [2022-04-07 13:02:18,014 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:02:18,014 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:02:18,014 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 13:02:18,016 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 13:02:18,017 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-04-07 13:02:18,056 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:02:18,057 INFO L263 TraceCheckSpWp]: Trace formula consists of 178 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-07 13:02:18,066 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:02:18,067 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 13:02:18,294 INFO L272 TraceCheckUtils]: 0: Hoare triple {6391#true} call ULTIMATE.init(); {6391#true} is VALID [2022-04-07 13:02:18,295 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-07 13:02:18,295 INFO L290 TraceCheckUtils]: 2: Hoare triple {6399#(<= ~counter~0 0)} assume true; {6399#(<= ~counter~0 0)} is VALID [2022-04-07 13:02:18,295 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6399#(<= ~counter~0 0)} {6391#true} #93#return; {6399#(<= ~counter~0 0)} is VALID [2022-04-07 13:02:18,295 INFO L272 TraceCheckUtils]: 4: Hoare triple {6399#(<= ~counter~0 0)} call #t~ret8 := main(); {6399#(<= ~counter~0 0)} is VALID [2022-04-07 13:02:18,296 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-07 13:02:18,296 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-07 13:02:18,296 INFO L290 TraceCheckUtils]: 7: Hoare triple {6399#(<= ~counter~0 0)} ~cond := #in~cond; {6399#(<= ~counter~0 0)} is VALID [2022-04-07 13:02:18,297 INFO L290 TraceCheckUtils]: 8: Hoare triple {6399#(<= ~counter~0 0)} assume !(0 == ~cond); {6399#(<= ~counter~0 0)} is VALID [2022-04-07 13:02:18,297 INFO L290 TraceCheckUtils]: 9: Hoare triple {6399#(<= ~counter~0 0)} assume true; {6399#(<= ~counter~0 0)} is VALID [2022-04-07 13:02:18,297 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6399#(<= ~counter~0 0)} {6399#(<= ~counter~0 0)} #77#return; {6399#(<= ~counter~0 0)} is VALID [2022-04-07 13:02:18,298 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-07 13:02:18,298 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-07 13:02:18,298 INFO L290 TraceCheckUtils]: 13: Hoare triple {6433#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {6433#(<= ~counter~0 1)} is VALID [2022-04-07 13:02:18,299 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-07 13:02:18,299 INFO L290 TraceCheckUtils]: 15: Hoare triple {6433#(<= ~counter~0 1)} ~cond := #in~cond; {6433#(<= ~counter~0 1)} is VALID [2022-04-07 13:02:18,299 INFO L290 TraceCheckUtils]: 16: Hoare triple {6433#(<= ~counter~0 1)} assume !(0 == ~cond); {6433#(<= ~counter~0 1)} is VALID [2022-04-07 13:02:18,300 INFO L290 TraceCheckUtils]: 17: Hoare triple {6433#(<= ~counter~0 1)} assume true; {6433#(<= ~counter~0 1)} is VALID [2022-04-07 13:02:18,300 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {6433#(<= ~counter~0 1)} {6433#(<= ~counter~0 1)} #79#return; {6433#(<= ~counter~0 1)} is VALID [2022-04-07 13:02:18,301 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-07 13:02:18,301 INFO L290 TraceCheckUtils]: 20: Hoare triple {6433#(<= ~counter~0 1)} ~cond := #in~cond; {6433#(<= ~counter~0 1)} is VALID [2022-04-07 13:02:18,301 INFO L290 TraceCheckUtils]: 21: Hoare triple {6433#(<= ~counter~0 1)} assume !(0 == ~cond); {6433#(<= ~counter~0 1)} is VALID [2022-04-07 13:02:18,301 INFO L290 TraceCheckUtils]: 22: Hoare triple {6433#(<= ~counter~0 1)} assume true; {6433#(<= ~counter~0 1)} is VALID [2022-04-07 13:02:18,302 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {6433#(<= ~counter~0 1)} {6433#(<= ~counter~0 1)} #81#return; {6433#(<= ~counter~0 1)} is VALID [2022-04-07 13:02:18,302 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-07 13:02:18,303 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-07 13:02:18,303 INFO L290 TraceCheckUtils]: 26: Hoare triple {6473#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {6473#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:18,303 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-07 13:02:18,304 INFO L290 TraceCheckUtils]: 28: Hoare triple {6473#(<= ~counter~0 2)} ~cond := #in~cond; {6473#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:18,304 INFO L290 TraceCheckUtils]: 29: Hoare triple {6473#(<= ~counter~0 2)} assume !(0 == ~cond); {6473#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:18,304 INFO L290 TraceCheckUtils]: 30: Hoare triple {6473#(<= ~counter~0 2)} assume true; {6473#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:18,305 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {6473#(<= ~counter~0 2)} {6473#(<= ~counter~0 2)} #83#return; {6473#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:18,305 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-07 13:02:18,305 INFO L290 TraceCheckUtils]: 33: Hoare triple {6473#(<= ~counter~0 2)} ~cond := #in~cond; {6473#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:18,306 INFO L290 TraceCheckUtils]: 34: Hoare triple {6473#(<= ~counter~0 2)} assume !(0 == ~cond); {6473#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:18,306 INFO L290 TraceCheckUtils]: 35: Hoare triple {6473#(<= ~counter~0 2)} assume true; {6473#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:18,307 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {6473#(<= ~counter~0 2)} {6473#(<= ~counter~0 2)} #85#return; {6473#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:18,307 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-07 13:02:18,307 INFO L290 TraceCheckUtils]: 38: Hoare triple {6473#(<= ~counter~0 2)} ~cond := #in~cond; {6473#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:18,307 INFO L290 TraceCheckUtils]: 39: Hoare triple {6473#(<= ~counter~0 2)} assume !(0 == ~cond); {6473#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:18,308 INFO L290 TraceCheckUtils]: 40: Hoare triple {6473#(<= ~counter~0 2)} assume true; {6473#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:18,308 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {6473#(<= ~counter~0 2)} {6473#(<= ~counter~0 2)} #87#return; {6473#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:18,308 INFO L290 TraceCheckUtils]: 42: Hoare triple {6473#(<= ~counter~0 2)} assume !!(~r~0 >= 2 * ~b~0); {6473#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:18,309 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-07 13:02:18,309 INFO L290 TraceCheckUtils]: 44: Hoare triple {6473#(<= ~counter~0 2)} ~cond := #in~cond; {6473#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:18,309 INFO L290 TraceCheckUtils]: 45: Hoare triple {6473#(<= ~counter~0 2)} assume !(0 == ~cond); {6473#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:18,310 INFO L290 TraceCheckUtils]: 46: Hoare triple {6473#(<= ~counter~0 2)} assume true; {6473#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:18,310 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {6473#(<= ~counter~0 2)} {6473#(<= ~counter~0 2)} #89#return; {6473#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:18,310 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-07 13:02:18,311 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-07 13:02:18,311 INFO L290 TraceCheckUtils]: 50: Hoare triple {6546#(<= |main_#t~post7| 2)} assume !(#t~post7 < 50);havoc #t~post7; {6392#false} is VALID [2022-04-07 13:02:18,311 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-07 13:02:18,311 INFO L290 TraceCheckUtils]: 52: Hoare triple {6392#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6392#false} is VALID [2022-04-07 13:02:18,311 INFO L290 TraceCheckUtils]: 53: Hoare triple {6392#false} assume !!(#t~post6 < 50);havoc #t~post6; {6392#false} is VALID [2022-04-07 13:02:18,311 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-07 13:02:18,311 INFO L290 TraceCheckUtils]: 55: Hoare triple {6392#false} ~cond := #in~cond; {6392#false} is VALID [2022-04-07 13:02:18,312 INFO L290 TraceCheckUtils]: 56: Hoare triple {6392#false} assume !(0 == ~cond); {6392#false} is VALID [2022-04-07 13:02:18,312 INFO L290 TraceCheckUtils]: 57: Hoare triple {6392#false} assume true; {6392#false} is VALID [2022-04-07 13:02:18,312 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {6392#false} {6392#false} #79#return; {6392#false} is VALID [2022-04-07 13:02:18,312 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-07 13:02:18,312 INFO L290 TraceCheckUtils]: 60: Hoare triple {6392#false} ~cond := #in~cond; {6392#false} is VALID [2022-04-07 13:02:18,312 INFO L290 TraceCheckUtils]: 61: Hoare triple {6392#false} assume 0 == ~cond; {6392#false} is VALID [2022-04-07 13:02:18,312 INFO L290 TraceCheckUtils]: 62: Hoare triple {6392#false} assume !false; {6392#false} is VALID [2022-04-07 13:02:18,312 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-07 13:02:18,312 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 13:02:18,530 INFO L290 TraceCheckUtils]: 62: Hoare triple {6392#false} assume !false; {6392#false} is VALID [2022-04-07 13:02:18,530 INFO L290 TraceCheckUtils]: 61: Hoare triple {6392#false} assume 0 == ~cond; {6392#false} is VALID [2022-04-07 13:02:18,531 INFO L290 TraceCheckUtils]: 60: Hoare triple {6392#false} ~cond := #in~cond; {6392#false} is VALID [2022-04-07 13:02:18,531 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-07 13:02:18,531 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {6391#true} {6392#false} #79#return; {6392#false} is VALID [2022-04-07 13:02:18,531 INFO L290 TraceCheckUtils]: 57: Hoare triple {6391#true} assume true; {6391#true} is VALID [2022-04-07 13:02:18,531 INFO L290 TraceCheckUtils]: 56: Hoare triple {6391#true} assume !(0 == ~cond); {6391#true} is VALID [2022-04-07 13:02:18,531 INFO L290 TraceCheckUtils]: 55: Hoare triple {6391#true} ~cond := #in~cond; {6391#true} is VALID [2022-04-07 13:02:18,531 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-07 13:02:18,531 INFO L290 TraceCheckUtils]: 53: Hoare triple {6392#false} assume !!(#t~post6 < 50);havoc #t~post6; {6392#false} is VALID [2022-04-07 13:02:18,531 INFO L290 TraceCheckUtils]: 52: Hoare triple {6392#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6392#false} is VALID [2022-04-07 13:02:18,531 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-07 13:02:18,531 INFO L290 TraceCheckUtils]: 50: Hoare triple {6622#(< |main_#t~post7| 50)} assume !(#t~post7 < 50);havoc #t~post7; {6392#false} is VALID [2022-04-07 13:02:18,532 INFO L290 TraceCheckUtils]: 49: Hoare triple {6626#(< ~counter~0 50)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6622#(< |main_#t~post7| 50)} is VALID [2022-04-07 13:02:18,532 INFO L290 TraceCheckUtils]: 48: Hoare triple {6626#(< ~counter~0 50)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {6626#(< ~counter~0 50)} is VALID [2022-04-07 13:02:18,533 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {6391#true} {6626#(< ~counter~0 50)} #89#return; {6626#(< ~counter~0 50)} is VALID [2022-04-07 13:02:18,533 INFO L290 TraceCheckUtils]: 46: Hoare triple {6391#true} assume true; {6391#true} is VALID [2022-04-07 13:02:18,533 INFO L290 TraceCheckUtils]: 45: Hoare triple {6391#true} assume !(0 == ~cond); {6391#true} is VALID [2022-04-07 13:02:18,533 INFO L290 TraceCheckUtils]: 44: Hoare triple {6391#true} ~cond := #in~cond; {6391#true} is VALID [2022-04-07 13:02:18,533 INFO L272 TraceCheckUtils]: 43: Hoare triple {6626#(< ~counter~0 50)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {6391#true} is VALID [2022-04-07 13:02:18,533 INFO L290 TraceCheckUtils]: 42: Hoare triple {6626#(< ~counter~0 50)} assume !!(~r~0 >= 2 * ~b~0); {6626#(< ~counter~0 50)} is VALID [2022-04-07 13:02:18,534 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {6391#true} {6626#(< ~counter~0 50)} #87#return; {6626#(< ~counter~0 50)} is VALID [2022-04-07 13:02:18,534 INFO L290 TraceCheckUtils]: 40: Hoare triple {6391#true} assume true; {6391#true} is VALID [2022-04-07 13:02:18,534 INFO L290 TraceCheckUtils]: 39: Hoare triple {6391#true} assume !(0 == ~cond); {6391#true} is VALID [2022-04-07 13:02:18,534 INFO L290 TraceCheckUtils]: 38: Hoare triple {6391#true} ~cond := #in~cond; {6391#true} is VALID [2022-04-07 13:02:18,534 INFO L272 TraceCheckUtils]: 37: Hoare triple {6626#(< ~counter~0 50)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {6391#true} is VALID [2022-04-07 13:02:18,534 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {6391#true} {6626#(< ~counter~0 50)} #85#return; {6626#(< ~counter~0 50)} is VALID [2022-04-07 13:02:18,534 INFO L290 TraceCheckUtils]: 35: Hoare triple {6391#true} assume true; {6391#true} is VALID [2022-04-07 13:02:18,535 INFO L290 TraceCheckUtils]: 34: Hoare triple {6391#true} assume !(0 == ~cond); {6391#true} is VALID [2022-04-07 13:02:18,535 INFO L290 TraceCheckUtils]: 33: Hoare triple {6391#true} ~cond := #in~cond; {6391#true} is VALID [2022-04-07 13:02:18,535 INFO L272 TraceCheckUtils]: 32: Hoare triple {6626#(< ~counter~0 50)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6391#true} is VALID [2022-04-07 13:02:18,535 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {6391#true} {6626#(< ~counter~0 50)} #83#return; {6626#(< ~counter~0 50)} is VALID [2022-04-07 13:02:18,535 INFO L290 TraceCheckUtils]: 30: Hoare triple {6391#true} assume true; {6391#true} is VALID [2022-04-07 13:02:18,535 INFO L290 TraceCheckUtils]: 29: Hoare triple {6391#true} assume !(0 == ~cond); {6391#true} is VALID [2022-04-07 13:02:18,535 INFO L290 TraceCheckUtils]: 28: Hoare triple {6391#true} ~cond := #in~cond; {6391#true} is VALID [2022-04-07 13:02:18,535 INFO L272 TraceCheckUtils]: 27: Hoare triple {6626#(< ~counter~0 50)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {6391#true} is VALID [2022-04-07 13:02:18,536 INFO L290 TraceCheckUtils]: 26: Hoare triple {6626#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {6626#(< ~counter~0 50)} is VALID [2022-04-07 13:02:18,536 INFO L290 TraceCheckUtils]: 25: Hoare triple {6699#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6626#(< ~counter~0 50)} is VALID [2022-04-07 13:02:18,536 INFO L290 TraceCheckUtils]: 24: Hoare triple {6699#(< ~counter~0 49)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {6699#(< ~counter~0 49)} is VALID [2022-04-07 13:02:18,537 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {6391#true} {6699#(< ~counter~0 49)} #81#return; {6699#(< ~counter~0 49)} is VALID [2022-04-07 13:02:18,537 INFO L290 TraceCheckUtils]: 22: Hoare triple {6391#true} assume true; {6391#true} is VALID [2022-04-07 13:02:18,537 INFO L290 TraceCheckUtils]: 21: Hoare triple {6391#true} assume !(0 == ~cond); {6391#true} is VALID [2022-04-07 13:02:18,537 INFO L290 TraceCheckUtils]: 20: Hoare triple {6391#true} ~cond := #in~cond; {6391#true} is VALID [2022-04-07 13:02:18,537 INFO L272 TraceCheckUtils]: 19: Hoare triple {6699#(< ~counter~0 49)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6391#true} is VALID [2022-04-07 13:02:18,538 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {6391#true} {6699#(< ~counter~0 49)} #79#return; {6699#(< ~counter~0 49)} is VALID [2022-04-07 13:02:18,538 INFO L290 TraceCheckUtils]: 17: Hoare triple {6391#true} assume true; {6391#true} is VALID [2022-04-07 13:02:18,538 INFO L290 TraceCheckUtils]: 16: Hoare triple {6391#true} assume !(0 == ~cond); {6391#true} is VALID [2022-04-07 13:02:18,538 INFO L290 TraceCheckUtils]: 15: Hoare triple {6391#true} ~cond := #in~cond; {6391#true} is VALID [2022-04-07 13:02:18,538 INFO L272 TraceCheckUtils]: 14: Hoare triple {6699#(< ~counter~0 49)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {6391#true} is VALID [2022-04-07 13:02:18,538 INFO L290 TraceCheckUtils]: 13: Hoare triple {6699#(< ~counter~0 49)} assume !!(#t~post6 < 50);havoc #t~post6; {6699#(< ~counter~0 49)} is VALID [2022-04-07 13:02:18,539 INFO L290 TraceCheckUtils]: 12: Hoare triple {6739#(< ~counter~0 48)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6699#(< ~counter~0 49)} is VALID [2022-04-07 13:02:18,539 INFO L290 TraceCheckUtils]: 11: Hoare triple {6739#(< ~counter~0 48)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {6739#(< ~counter~0 48)} is VALID [2022-04-07 13:02:18,539 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6391#true} {6739#(< ~counter~0 48)} #77#return; {6739#(< ~counter~0 48)} is VALID [2022-04-07 13:02:18,539 INFO L290 TraceCheckUtils]: 9: Hoare triple {6391#true} assume true; {6391#true} is VALID [2022-04-07 13:02:18,540 INFO L290 TraceCheckUtils]: 8: Hoare triple {6391#true} assume !(0 == ~cond); {6391#true} is VALID [2022-04-07 13:02:18,540 INFO L290 TraceCheckUtils]: 7: Hoare triple {6391#true} ~cond := #in~cond; {6391#true} is VALID [2022-04-07 13:02:18,540 INFO L272 TraceCheckUtils]: 6: Hoare triple {6739#(< ~counter~0 48)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6391#true} is VALID [2022-04-07 13:02:18,540 INFO L290 TraceCheckUtils]: 5: Hoare triple {6739#(< ~counter~0 48)} 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 48)} is VALID [2022-04-07 13:02:18,540 INFO L272 TraceCheckUtils]: 4: Hoare triple {6739#(< ~counter~0 48)} call #t~ret8 := main(); {6739#(< ~counter~0 48)} is VALID [2022-04-07 13:02:18,541 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6739#(< ~counter~0 48)} {6391#true} #93#return; {6739#(< ~counter~0 48)} is VALID [2022-04-07 13:02:18,541 INFO L290 TraceCheckUtils]: 2: Hoare triple {6739#(< ~counter~0 48)} assume true; {6739#(< ~counter~0 48)} is VALID [2022-04-07 13:02:18,541 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 48)} is VALID [2022-04-07 13:02:18,541 INFO L272 TraceCheckUtils]: 0: Hoare triple {6391#true} call ULTIMATE.init(); {6391#true} is VALID [2022-04-07 13:02:18,541 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-07 13:02:18,542 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 13:02:18,542 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1416141149] [2022-04-07 13:02:18,542 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 13:02:18,542 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [22636183] [2022-04-07 13:02:18,542 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [22636183] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 13:02:18,542 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 13:02:18,542 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-07 13:02:18,542 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [821654290] [2022-04-07 13:02:18,542 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 13:02:18,543 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-07 13:02:18,543 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 13:02:18,543 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-07 13:02:18,597 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-07 13:02:18,597 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-07 13:02:18,598 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 13:02:18,598 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-07 13:02:18,598 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-07 13:02:18,598 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-07 13:02:19,088 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:02:19,089 INFO L93 Difference]: Finished difference Result 308 states and 368 transitions. [2022-04-07 13:02:19,089 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-07 13:02:19,089 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-07 13:02:19,089 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 13:02:19,089 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-07 13:02:19,091 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 177 transitions. [2022-04-07 13:02:19,091 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-07 13:02:19,092 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 177 transitions. [2022-04-07 13:02:19,093 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 177 transitions. [2022-04-07 13:02:19,213 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-07 13:02:19,216 INFO L225 Difference]: With dead ends: 308 [2022-04-07 13:02:19,216 INFO L226 Difference]: Without dead ends: 214 [2022-04-07 13:02:19,217 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 129 GetRequests, 117 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=63, Invalid=119, Unknown=0, NotChecked=0, Total=182 [2022-04-07 13:02:19,217 INFO L913 BasicCegarLoop]: 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-07 13:02:19,217 INFO L914 BasicCegarLoop]: 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-07 13:02:19,218 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 214 states. [2022-04-07 13:02:19,317 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 214 to 210. [2022-04-07 13:02:19,317 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 13:02:19,318 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-07 13:02:19,318 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-07 13:02:19,318 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-07 13:02:19,322 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:02:19,322 INFO L93 Difference]: Finished difference Result 214 states and 246 transitions. [2022-04-07 13:02:19,322 INFO L276 IsEmpty]: Start isEmpty. Operand 214 states and 246 transitions. [2022-04-07 13:02:19,323 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:02:19,323 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:02:19,323 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-07 13:02:19,323 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-07 13:02:19,328 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:02:19,328 INFO L93 Difference]: Finished difference Result 214 states and 246 transitions. [2022-04-07 13:02:19,328 INFO L276 IsEmpty]: Start isEmpty. Operand 214 states and 246 transitions. [2022-04-07 13:02:19,329 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:02:19,329 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:02:19,329 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 13:02:19,329 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 13:02:19,329 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-07 13:02:19,333 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 210 states to 210 states and 244 transitions. [2022-04-07 13:02:19,333 INFO L78 Accepts]: Start accepts. Automaton has 210 states and 244 transitions. Word has length 63 [2022-04-07 13:02:19,333 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 13:02:19,333 INFO L478 AbstractCegarLoop]: Abstraction has 210 states and 244 transitions. [2022-04-07 13:02:19,333 INFO L479 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-07 13:02:19,333 INFO L276 IsEmpty]: Start isEmpty. Operand 210 states and 244 transitions. [2022-04-07 13:02:19,334 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 80 [2022-04-07 13:02:19,334 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 13:02:19,334 INFO L499 BasicCegarLoop]: 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-07 13:02:19,351 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2022-04-07 13:02:19,547 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable10 [2022-04-07 13:02:19,547 INFO L403 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 13:02:19,548 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 13:02:19,548 INFO L85 PathProgramCache]: Analyzing trace with hash 1777426592, now seen corresponding path program 1 times [2022-04-07 13:02:19,548 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 13:02:19,548 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1613012785] [2022-04-07 13:02:19,548 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:02:19,549 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 13:02:19,574 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 13:02:19,574 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1633370182] [2022-04-07 13:02:19,574 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:02:19,574 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:02:19,575 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 13:02:19,588 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-07 13:02:19,589 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-07 13:02:19,631 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:02:19,633 INFO L263 TraceCheckSpWp]: Trace formula consists of 206 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-07 13:02:19,644 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:02:19,645 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 13:02:20,043 INFO L272 TraceCheckUtils]: 0: Hoare triple {7952#true} call ULTIMATE.init(); {7952#true} is VALID [2022-04-07 13:02:20,043 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-07 13:02:20,043 INFO L290 TraceCheckUtils]: 2: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-07 13:02:20,043 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7952#true} {7952#true} #93#return; {7952#true} is VALID [2022-04-07 13:02:20,043 INFO L272 TraceCheckUtils]: 4: Hoare triple {7952#true} call #t~ret8 := main(); {7952#true} is VALID [2022-04-07 13:02:20,043 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-07 13:02:20,043 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-07 13:02:20,044 INFO L290 TraceCheckUtils]: 7: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-07 13:02:20,044 INFO L290 TraceCheckUtils]: 8: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-07 13:02:20,044 INFO L290 TraceCheckUtils]: 9: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-07 13:02:20,044 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7952#true} {7952#true} #77#return; {7952#true} is VALID [2022-04-07 13:02:20,044 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-07 13:02:20,044 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-07 13:02:20,045 INFO L290 TraceCheckUtils]: 13: Hoare triple {7990#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 50);havoc #t~post6; {7990#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-07 13:02:20,045 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-07 13:02:20,045 INFO L290 TraceCheckUtils]: 15: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-07 13:02:20,045 INFO L290 TraceCheckUtils]: 16: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-07 13:02:20,045 INFO L290 TraceCheckUtils]: 17: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-07 13:02:20,046 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-07 13:02:20,046 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-07 13:02:20,046 INFO L290 TraceCheckUtils]: 20: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-07 13:02:20,046 INFO L290 TraceCheckUtils]: 21: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-07 13:02:20,046 INFO L290 TraceCheckUtils]: 22: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-07 13:02:20,047 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-07 13:02:20,047 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-07 13:02:20,047 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-07 13:02:20,048 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 < 50);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-07 13:02:20,048 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-07 13:02:20,048 INFO L290 TraceCheckUtils]: 28: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-07 13:02:20,048 INFO L290 TraceCheckUtils]: 29: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-07 13:02:20,048 INFO L290 TraceCheckUtils]: 30: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-07 13:02:20,049 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-07 13:02:20,049 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-07 13:02:20,049 INFO L290 TraceCheckUtils]: 33: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-07 13:02:20,049 INFO L290 TraceCheckUtils]: 34: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-07 13:02:20,049 INFO L290 TraceCheckUtils]: 35: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-07 13:02:20,049 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-07 13:02:20,050 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-07 13:02:20,050 INFO L290 TraceCheckUtils]: 38: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-07 13:02:20,050 INFO L290 TraceCheckUtils]: 39: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-07 13:02:20,050 INFO L290 TraceCheckUtils]: 40: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-07 13:02:20,050 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-07 13:02:20,051 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-07 13:02:20,051 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-07 13:02:20,051 INFO L290 TraceCheckUtils]: 44: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-07 13:02:20,051 INFO L290 TraceCheckUtils]: 45: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-07 13:02:20,051 INFO L290 TraceCheckUtils]: 46: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-07 13:02:20,051 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-07 13:02:20,052 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-07 13:02:20,052 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-07 13:02:20,053 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 < 50);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-07 13:02:20,053 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-07 13:02:20,053 INFO L290 TraceCheckUtils]: 52: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-07 13:02:20,053 INFO L290 TraceCheckUtils]: 53: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-07 13:02:20,053 INFO L290 TraceCheckUtils]: 54: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-07 13:02:20,054 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-07 13:02:20,054 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-07 13:02:20,054 INFO L290 TraceCheckUtils]: 57: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-07 13:02:20,054 INFO L290 TraceCheckUtils]: 58: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-07 13:02:20,054 INFO L290 TraceCheckUtils]: 59: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-07 13:02:20,054 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-07 13:02:20,054 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-07 13:02:20,055 INFO L290 TraceCheckUtils]: 62: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-07 13:02:20,055 INFO L290 TraceCheckUtils]: 63: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-07 13:02:20,055 INFO L290 TraceCheckUtils]: 64: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-07 13:02:20,055 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-07 13:02:20,056 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-07 13:02:20,056 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-07 13:02:20,057 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-07 13:02:20,057 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 < 50);havoc #t~post6; {8161#(and (= main_~q~0 2) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))))} is VALID [2022-04-07 13:02:20,057 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-07 13:02:20,057 INFO L290 TraceCheckUtils]: 71: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-07 13:02:20,057 INFO L290 TraceCheckUtils]: 72: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-07 13:02:20,058 INFO L290 TraceCheckUtils]: 73: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-07 13:02:20,058 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-07 13:02:20,059 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-07 13:02:20,059 INFO L290 TraceCheckUtils]: 76: Hoare triple {8186#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8190#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 13:02:20,060 INFO L290 TraceCheckUtils]: 77: Hoare triple {8190#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7953#false} is VALID [2022-04-07 13:02:20,060 INFO L290 TraceCheckUtils]: 78: Hoare triple {7953#false} assume !false; {7953#false} is VALID [2022-04-07 13:02:20,060 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-07 13:02:20,060 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 13:02:20,353 INFO L290 TraceCheckUtils]: 78: Hoare triple {7953#false} assume !false; {7953#false} is VALID [2022-04-07 13:02:20,354 INFO L290 TraceCheckUtils]: 77: Hoare triple {8190#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7953#false} is VALID [2022-04-07 13:02:20,354 INFO L290 TraceCheckUtils]: 76: Hoare triple {8186#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8190#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 13:02:20,355 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-07 13:02:20,355 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-07 13:02:20,355 INFO L290 TraceCheckUtils]: 73: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-07 13:02:20,355 INFO L290 TraceCheckUtils]: 72: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-07 13:02:20,355 INFO L290 TraceCheckUtils]: 71: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-07 13:02:20,355 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-07 13:02:20,356 INFO L290 TraceCheckUtils]: 69: Hoare triple {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(#t~post6 < 50);havoc #t~post6; {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-07 13:02:20,356 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-07 13:02:20,363 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-07 13:02:20,363 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-07 13:02:20,364 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-07 13:02:20,364 INFO L290 TraceCheckUtils]: 64: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-07 13:02:20,364 INFO L290 TraceCheckUtils]: 63: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-07 13:02:20,364 INFO L290 TraceCheckUtils]: 62: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-07 13:02:20,364 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-07 13:02:20,365 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-07 13:02:20,365 INFO L290 TraceCheckUtils]: 59: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-07 13:02:20,365 INFO L290 TraceCheckUtils]: 58: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-07 13:02:20,365 INFO L290 TraceCheckUtils]: 57: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-07 13:02:20,365 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-07 13:02:20,365 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-07 13:02:20,366 INFO L290 TraceCheckUtils]: 54: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-07 13:02:20,366 INFO L290 TraceCheckUtils]: 53: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-07 13:02:20,366 INFO L290 TraceCheckUtils]: 52: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-07 13:02:20,366 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-07 13:02:20,366 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 < 50);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-07 13:02:20,366 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-07 13:02:20,369 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-07 13:02:20,369 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-07 13:02:20,370 INFO L290 TraceCheckUtils]: 46: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-07 13:02:20,370 INFO L290 TraceCheckUtils]: 45: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-07 13:02:20,370 INFO L290 TraceCheckUtils]: 44: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-07 13:02:20,370 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-07 13:02:20,370 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-07 13:02:20,371 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-07 13:02:20,371 INFO L290 TraceCheckUtils]: 40: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-07 13:02:20,371 INFO L290 TraceCheckUtils]: 39: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-07 13:02:20,371 INFO L290 TraceCheckUtils]: 38: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-07 13:02:20,371 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-07 13:02:20,371 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-07 13:02:20,372 INFO L290 TraceCheckUtils]: 35: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-07 13:02:20,372 INFO L290 TraceCheckUtils]: 34: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-07 13:02:20,372 INFO L290 TraceCheckUtils]: 33: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-07 13:02:20,372 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-07 13:02:20,372 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-07 13:02:20,372 INFO L290 TraceCheckUtils]: 30: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-07 13:02:20,372 INFO L290 TraceCheckUtils]: 29: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-07 13:02:20,373 INFO L290 TraceCheckUtils]: 28: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-07 13:02:20,373 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-07 13:02:20,373 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 < 50);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-07 13:02:20,373 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-07 13:02:20,374 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-07 13:02:20,374 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-07 13:02:20,374 INFO L290 TraceCheckUtils]: 22: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-07 13:02:20,374 INFO L290 TraceCheckUtils]: 21: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-07 13:02:20,374 INFO L290 TraceCheckUtils]: 20: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-07 13:02:20,374 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-07 13:02:20,375 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-07 13:02:20,375 INFO L290 TraceCheckUtils]: 17: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-07 13:02:20,375 INFO L290 TraceCheckUtils]: 16: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-07 13:02:20,375 INFO L290 TraceCheckUtils]: 15: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-07 13:02:20,375 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-07 13:02:20,376 INFO L290 TraceCheckUtils]: 13: Hoare triple {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(#t~post6 < 50);havoc #t~post6; {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-07 13:02:20,376 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-07 13:02:20,376 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-07 13:02:20,376 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7952#true} {7952#true} #77#return; {7952#true} is VALID [2022-04-07 13:02:20,376 INFO L290 TraceCheckUtils]: 9: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-07 13:02:20,376 INFO L290 TraceCheckUtils]: 8: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-07 13:02:20,376 INFO L290 TraceCheckUtils]: 7: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-07 13:02:20,376 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-07 13:02:20,377 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-07 13:02:20,377 INFO L272 TraceCheckUtils]: 4: Hoare triple {7952#true} call #t~ret8 := main(); {7952#true} is VALID [2022-04-07 13:02:20,377 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7952#true} {7952#true} #93#return; {7952#true} is VALID [2022-04-07 13:02:20,377 INFO L290 TraceCheckUtils]: 2: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-07 13:02:20,377 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-07 13:02:20,377 INFO L272 TraceCheckUtils]: 0: Hoare triple {7952#true} call ULTIMATE.init(); {7952#true} is VALID [2022-04-07 13:02:20,377 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-07 13:02:20,377 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 13:02:20,377 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1613012785] [2022-04-07 13:02:20,377 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 13:02:20,377 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1633370182] [2022-04-07 13:02:20,378 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1633370182] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 13:02:20,378 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 13:02:20,378 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7] total 11 [2022-04-07 13:02:20,378 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [875920414] [2022-04-07 13:02:20,378 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 13:02:20,378 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-07 13:02:20,379 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 13:02:20,379 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-07 13:02:20,451 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 83 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 13:02:20,452 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-07 13:02:20,452 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 13:02:20,452 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-07 13:02:20,452 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=29, Invalid=81, Unknown=0, NotChecked=0, Total=110 [2022-04-07 13:02:20,452 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-07 13:02:21,689 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:02:21,689 INFO L93 Difference]: Finished difference Result 236 states and 272 transitions. [2022-04-07 13:02:21,690 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-07 13:02:21,690 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-07 13:02:21,690 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 13:02:21,690 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-07 13:02:21,691 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 117 transitions. [2022-04-07 13:02:21,691 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-07 13:02:21,692 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 117 transitions. [2022-04-07 13:02:21,693 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 117 transitions. [2022-04-07 13:02:21,816 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-07 13:02:21,816 INFO L225 Difference]: With dead ends: 236 [2022-04-07 13:02:21,816 INFO L226 Difference]: Without dead ends: 0 [2022-04-07 13:02:21,817 INFO L912 BasicCegarLoop]: 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-07 13:02:21,817 INFO L913 BasicCegarLoop]: 54 mSDtfsCounter, 59 mSDsluCounter, 152 mSDsCounter, 0 mSdLazyCounter, 298 mSolverCounterSat, 76 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s 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-07 13:02:21,817 INFO L914 BasicCegarLoop]: 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-07 13:02:21,818 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-07 13:02:21,818 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-07 13:02:21,818 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 13:02:21,818 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-07 13:02:21,818 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-07 13:02:21,818 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-07 13:02:21,818 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:02:21,818 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-07 13:02:21,818 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 13:02:21,818 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:02:21,818 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:02:21,818 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-07 13:02:21,818 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-07 13:02:21,818 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:02:21,819 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-07 13:02:21,819 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 13:02:21,819 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:02:21,819 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:02:21,819 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 13:02:21,819 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 13:02:21,819 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-07 13:02:21,819 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-07 13:02:21,819 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 79 [2022-04-07 13:02:21,819 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 13:02:21,819 INFO L478 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-07 13:02:21,819 INFO L479 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-07 13:02:21,819 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 13:02:21,819 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:02:21,821 INFO L788 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-07 13:02:21,842 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-07 13:02:22,040 WARN L460 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-07 13:02:22,041 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-04-07 13:02:22,742 INFO L882 garLoopResultBuilder]: For program point reach_errorEXIT(line 8) no Hoare annotation was computed. [2022-04-07 13:02:22,742 INFO L882 garLoopResultBuilder]: For program point reach_errorENTRY(line 8) no Hoare annotation was computed. [2022-04-07 13:02:22,742 INFO L882 garLoopResultBuilder]: For program point reach_errorFINAL(line 8) no Hoare annotation was computed. [2022-04-07 13:02:22,743 INFO L885 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 11 13) the Hoare annotation is: true [2022-04-07 13:02:22,743 INFO L882 garLoopResultBuilder]: For program point L12(line 12) no Hoare annotation was computed. [2022-04-07 13:02:22,743 INFO L882 garLoopResultBuilder]: For program point L12-2(lines 11 13) no Hoare annotation was computed. [2022-04-07 13:02:22,743 INFO L882 garLoopResultBuilder]: For program point assume_abort_if_notEXIT(lines 11 13) no Hoare annotation was computed. [2022-04-07 13:02:22,743 INFO L878 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-07 13:02:22,743 INFO L882 garLoopResultBuilder]: For program point mainEXIT(lines 23 65) no Hoare annotation was computed. [2022-04-07 13:02:22,743 INFO L878 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-07 13:02:22,743 INFO L882 garLoopResultBuilder]: For program point L54-1(line 54) no Hoare annotation was computed. [2022-04-07 13:02:22,743 INFO L878 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-07 13:02:22,743 INFO L882 garLoopResultBuilder]: For program point L46-1(lines 46 58) no Hoare annotation was computed. [2022-04-07 13:02:22,743 INFO L882 garLoopResultBuilder]: For program point mainFINAL(lines 23 65) no Hoare annotation was computed. [2022-04-07 13:02:22,743 INFO L878 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-07 13:02:22,743 INFO L882 garLoopResultBuilder]: For program point L46-4(lines 46 58) no Hoare annotation was computed. [2022-04-07 13:02:22,743 INFO L878 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-07 13:02:22,743 INFO L878 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-07 13:02:22,744 INFO L882 garLoopResultBuilder]: For program point L63(line 63) no Hoare annotation was computed. [2022-04-07 13:02:22,744 INFO L878 garLoopResultBuilder]: At program point L30(line 30) the Hoare annotation is: (or (= ~counter~0 |old(~counter~0)|) (not (<= |old(~counter~0)| 0))) [2022-04-07 13:02:22,744 INFO L878 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-07 13:02:22,744 INFO L882 garLoopResultBuilder]: For program point L30-1(line 30) no Hoare annotation was computed. [2022-04-07 13:02:22,744 INFO L882 garLoopResultBuilder]: For program point L49(lines 46 58) no Hoare annotation was computed. [2022-04-07 13:02:22,744 INFO L878 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-07 13:02:22,744 INFO L878 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-07 13:02:22,744 INFO L882 garLoopResultBuilder]: For program point L39(lines 37 61) no Hoare annotation was computed. [2022-04-07 13:02:22,744 INFO L882 garLoopResultBuilder]: For program point L37-1(lines 37 61) no Hoare annotation was computed. [2022-04-07 13:02:22,744 INFO L878 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-07 13:02:22,744 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.initFINAL(line -1) no Hoare annotation was computed. [2022-04-07 13:02:22,744 INFO L878 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-07 13:02:22,744 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.initEXIT(line -1) no Hoare annotation was computed. [2022-04-07 13:02:22,744 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.startEXIT(line -1) no Hoare annotation was computed. [2022-04-07 13:02:22,744 INFO L878 garLoopResultBuilder]: At program point L-1(line -1) the Hoare annotation is: (<= ~counter~0 0) [2022-04-07 13:02:22,744 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2022-04-07 13:02:22,744 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.startFINAL(line -1) no Hoare annotation was computed. [2022-04-07 13:02:22,745 INFO L882 garLoopResultBuilder]: For program point L16(lines 16 17) no Hoare annotation was computed. [2022-04-07 13:02:22,745 INFO L882 garLoopResultBuilder]: For program point L15(lines 15 18) no Hoare annotation was computed. [2022-04-07 13:02:22,745 INFO L885 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 14 20) the Hoare annotation is: true [2022-04-07 13:02:22,745 INFO L882 garLoopResultBuilder]: For program point L15-2(lines 14 20) no Hoare annotation was computed. [2022-04-07 13:02:22,745 INFO L882 garLoopResultBuilder]: For program point __VERIFIER_assertEXIT(lines 14 20) no Hoare annotation was computed. [2022-04-07 13:02:22,745 INFO L882 garLoopResultBuilder]: For program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 17) no Hoare annotation was computed. [2022-04-07 13:02:22,747 INFO L719 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 13:02:22,748 INFO L178 ceAbstractionStarter]: Computing trace abstraction results [2022-04-07 13:02:22,749 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-07 13:02:22,750 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-07 13:02:22,750 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-07 13:02:22,751 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-07 13:02:22,751 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-07 13:02:22,751 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-07 13:02:22,751 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-07 13:02:22,751 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-07 13:02:22,751 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-07 13:02:22,751 WARN L170 areAnnotationChecker]: L30-1 has no Hoare annotation [2022-04-07 13:02:22,751 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-07 13:02:22,751 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-07 13:02:22,751 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-07 13:02:22,751 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-07 13:02:22,751 WARN L170 areAnnotationChecker]: L12-2 has no Hoare annotation [2022-04-07 13:02:22,751 WARN L170 areAnnotationChecker]: L30-1 has no Hoare annotation [2022-04-07 13:02:22,752 WARN L170 areAnnotationChecker]: L16 has no Hoare annotation [2022-04-07 13:02:22,752 WARN L170 areAnnotationChecker]: L16 has no Hoare annotation [2022-04-07 13:02:22,752 WARN L170 areAnnotationChecker]: L15-2 has no Hoare annotation [2022-04-07 13:02:22,752 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-07 13:02:22,752 WARN L170 areAnnotationChecker]: L37-1 has no Hoare annotation [2022-04-07 13:02:22,752 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-07 13:02:22,752 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-07 13:02:22,752 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-07 13:02:22,752 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-07 13:02:22,753 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-07 13:02:22,753 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-07 13:02:22,753 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-07 13:02:22,753 WARN L170 areAnnotationChecker]: L63 has no Hoare annotation [2022-04-07 13:02:22,753 WARN L170 areAnnotationChecker]: L37-1 has no Hoare annotation [2022-04-07 13:02:22,753 WARN L170 areAnnotationChecker]: L37-1 has no Hoare annotation [2022-04-07 13:02:22,753 WARN L170 areAnnotationChecker]: L39 has no Hoare annotation [2022-04-07 13:02:22,753 WARN L170 areAnnotationChecker]: L39 has no Hoare annotation [2022-04-07 13:02:22,753 WARN L170 areAnnotationChecker]: L39 has no Hoare annotation [2022-04-07 13:02:22,753 WARN L170 areAnnotationChecker]: L49 has no Hoare annotation [2022-04-07 13:02:22,753 WARN L170 areAnnotationChecker]: L49 has no Hoare annotation [2022-04-07 13:02:22,753 WARN L170 areAnnotationChecker]: L49 has no Hoare annotation [2022-04-07 13:02:22,753 WARN L170 areAnnotationChecker]: L54-1 has no Hoare annotation [2022-04-07 13:02:22,753 WARN L170 areAnnotationChecker]: L63 has no Hoare annotation [2022-04-07 13:02:22,753 WARN L170 areAnnotationChecker]: L46-4 has no Hoare annotation [2022-04-07 13:02:22,753 WARN L170 areAnnotationChecker]: L46-1 has no Hoare annotation [2022-04-07 13:02:22,753 WARN L170 areAnnotationChecker]: L46-4 has no Hoare annotation [2022-04-07 13:02:22,753 WARN L170 areAnnotationChecker]: L54-1 has no Hoare annotation [2022-04-07 13:02:22,753 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-07 13:02:22,753 WARN L170 areAnnotationChecker]: L46-1 has no Hoare annotation [2022-04-07 13:02:22,753 WARN L170 areAnnotationChecker]: L46-1 has no Hoare annotation [2022-04-07 13:02:22,753 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-07 13:02:22,753 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-07 13:02:22,759 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 07.04 01:02:22 BoogieIcfgContainer [2022-04-07 13:02:22,759 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-07 13:02:22,760 INFO L158 Benchmark]: Toolchain (without parser) took 62048.29ms. Allocated memory was 246.4MB in the beginning and 295.7MB in the end (delta: 49.3MB). Free memory was 191.8MB in the beginning and 135.0MB in the end (delta: 56.8MB). Peak memory consumption was 106.9MB. Max. memory is 8.0GB. [2022-04-07 13:02:22,760 INFO L158 Benchmark]: CDTParser took 0.08ms. Allocated memory is still 246.4MB. Free memory is still 208.4MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-07 13:02:22,760 INFO L158 Benchmark]: CACSL2BoogieTranslator took 168.86ms. Allocated memory is still 246.4MB. Free memory was 191.7MB in the beginning and 216.8MB in the end (delta: -25.1MB). Peak memory consumption was 13.4MB. Max. memory is 8.0GB. [2022-04-07 13:02:22,760 INFO L158 Benchmark]: Boogie Preprocessor took 18.59ms. Allocated memory is still 246.4MB. Free memory was 216.8MB in the beginning and 215.5MB in the end (delta: 1.4MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-07 13:02:22,760 INFO L158 Benchmark]: RCFGBuilder took 271.95ms. Allocated memory is still 246.4MB. Free memory was 215.1MB in the beginning and 203.5MB in the end (delta: 11.6MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-07 13:02:22,761 INFO L158 Benchmark]: TraceAbstraction took 61582.80ms. Allocated memory was 246.4MB in the beginning and 295.7MB in the end (delta: 49.3MB). Free memory was 202.9MB in the beginning and 135.0MB in the end (delta: 67.8MB). Peak memory consumption was 117.6MB. Max. memory is 8.0GB. [2022-04-07 13:02:22,761 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.08ms. Allocated memory is still 246.4MB. Free memory is still 208.4MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 168.86ms. Allocated memory is still 246.4MB. Free memory was 191.7MB in the beginning and 216.8MB in the end (delta: -25.1MB). Peak memory consumption was 13.4MB. Max. memory is 8.0GB. * Boogie Preprocessor took 18.59ms. Allocated memory is still 246.4MB. Free memory was 216.8MB in the beginning and 215.5MB in the end (delta: 1.4MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 271.95ms. Allocated memory is still 246.4MB. Free memory was 215.1MB in the beginning and 203.5MB in the end (delta: 11.6MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * TraceAbstraction took 61582.80ms. Allocated memory was 246.4MB in the beginning and 295.7MB in the end (delta: 49.3MB). Free memory was 202.9MB in the beginning and 135.0MB in the end (delta: 67.8MB). Peak memory consumption was 117.6MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - PositiveResult [Line: 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: 61.5s, OverallIterations: 12, TraceHistogramMax: 11, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 5.5s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.7s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 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.6s AutomataMinimizationTime, 12 MinimizatonAttempts, 28 StatesRemovedByMinimization, 7 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 16 LocationsWithAnnotation, 129 PreInvPairs, 200 NumberOfFragments, 250 HoareAnnotationTreeSize, 129 FomulaSimplifications, 0 FormulaSimplificationTreeSizeReduction, 0.0s HoareSimplificationTime, 16 FomulaSimplificationsInter, 2803 FormulaSimplificationTreeSizeReductionInter, 0.6s HoareSimplificationTimeInter, RefinementEngineStatistics: TRACE_CHECK: 0.1s SsaConstructionTime, 0.3s SatisfiabilityAnalysisTime, 51.1s 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-07 13:02:22,783 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...