/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/bresenham-ll_unwindbound10.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-27 12:00:04,740 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-27 12:00:04,742 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-27 12:00:04,803 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-27 12:00:04,803 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-27 12:00:04,804 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-27 12:00:04,805 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-27 12:00:04,807 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-27 12:00:04,808 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-27 12:00:04,809 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-27 12:00:04,810 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-27 12:00:04,814 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-27 12:00:04,814 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-27 12:00:04,818 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-27 12:00:04,820 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-27 12:00:04,821 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-27 12:00:04,821 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-27 12:00:04,822 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-27 12:00:04,823 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-27 12:00:04,825 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-27 12:00:04,826 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-27 12:00:04,826 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-27 12:00:04,827 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-27 12:00:04,828 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-27 12:00:04,829 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-27 12:00:04,831 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-27 12:00:04,831 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-27 12:00:04,831 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-27 12:00:04,832 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-27 12:00:04,832 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-27 12:00:04,833 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-27 12:00:04,833 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-27 12:00:04,834 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-27 12:00:04,835 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-27 12:00:04,835 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-27 12:00:04,836 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-27 12:00:04,836 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-27 12:00:04,837 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-27 12:00:04,837 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-27 12:00:04,837 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-27 12:00:04,838 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-27 12:00:04,840 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-27 12:00:04,841 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf [2022-04-27 12:00:04,870 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-27 12:00:04,870 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-27 12:00:04,871 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-04-27 12:00:04,871 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-04-27 12:00:04,871 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-27 12:00:04,871 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-27 12:00:04,872 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-27 12:00:04,872 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-27 12:00:04,872 INFO L138 SettingsManager]: * Use SBE=true [2022-04-27 12:00:04,873 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-27 12:00:04,873 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-27 12:00:04,873 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-27 12:00:04,873 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-27 12:00:04,873 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-27 12:00:04,874 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-27 12:00:04,874 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-27 12:00:04,874 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-27 12:00:04,874 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-27 12:00:04,874 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-27 12:00:04,874 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-27 12:00:04,874 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-27 12:00:04,875 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-27 12:00:04,875 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-27 12:00:04,876 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-27 12:00:04,876 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 12:00:04,876 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-27 12:00:04,876 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-27 12:00:04,876 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-27 12:00:04,876 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-27 12:00:04,876 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-27 12:00:04,877 INFO L138 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2022-04-27 12:00:04,877 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-04-27 12:00:04,877 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-27 12:00:04,877 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-27 12:00:05,104 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-27 12:00:05,133 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-27 12:00:05,135 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-27 12:00:05,136 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-27 12:00:05,137 INFO L275 PluginConnector]: CDTParser initialized [2022-04-27 12:00:05,138 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/bresenham-ll_unwindbound10.c [2022-04-27 12:00:05,199 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a35c3bb26/b3b76b9608a84c429c8c72628fee2ecc/FLAG5b942283e [2022-04-27 12:00:05,610 INFO L306 CDTParser]: Found 1 translation units. [2022-04-27 12:00:05,611 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/bresenham-ll_unwindbound10.c [2022-04-27 12:00:05,616 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a35c3bb26/b3b76b9608a84c429c8c72628fee2ecc/FLAG5b942283e [2022-04-27 12:00:05,628 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a35c3bb26/b3b76b9608a84c429c8c72628fee2ecc [2022-04-27 12:00:05,631 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-27 12:00:05,632 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-27 12:00:05,633 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-27 12:00:05,633 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-27 12:00:05,636 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-27 12:00:05,638 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 12:00:05" (1/1) ... [2022-04-27 12:00:05,639 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@377d6944 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:00:05, skipping insertion in model container [2022-04-27 12:00:05,639 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 12:00:05" (1/1) ... [2022-04-27 12:00:05,645 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-27 12:00:05,658 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-27 12:00:05,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/bresenham-ll_unwindbound10.c[597,610] [2022-04-27 12:00:05,879 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 12:00:05,887 INFO L203 MainTranslator]: Completed pre-run [2022-04-27 12:00:05,902 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/bresenham-ll_unwindbound10.c[597,610] [2022-04-27 12:00:05,928 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 12:00:05,939 INFO L208 MainTranslator]: Completed translation [2022-04-27 12:00:05,940 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:00:05 WrapperNode [2022-04-27 12:00:05,940 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-27 12:00:05,941 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-27 12:00:05,941 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-27 12:00:05,941 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-27 12:00:05,950 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:00:05" (1/1) ... [2022-04-27 12:00:05,950 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:00:05" (1/1) ... [2022-04-27 12:00:05,956 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:00:05" (1/1) ... [2022-04-27 12:00:05,957 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:00:05" (1/1) ... [2022-04-27 12:00:05,971 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:00:05" (1/1) ... [2022-04-27 12:00:05,977 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:00:05" (1/1) ... [2022-04-27 12:00:05,981 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:00:05" (1/1) ... [2022-04-27 12:00:05,984 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-27 12:00:05,986 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-27 12:00:05,986 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-27 12:00:05,986 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-27 12:00:05,987 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:00:05" (1/1) ... [2022-04-27 12:00:05,994 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 12:00:06,003 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:00:06,016 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-27 12:00:06,042 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-27 12:00:06,061 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-27 12:00:06,061 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-27 12:00:06,062 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-27 12:00:06,062 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-27 12:00:06,064 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-27 12:00:06,064 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-27 12:00:06,064 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-27 12:00:06,064 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-27 12:00:06,064 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-27 12:00:06,064 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-27 12:00:06,064 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-27 12:00:06,064 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-27 12:00:06,065 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-27 12:00:06,065 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-27 12:00:06,065 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-27 12:00:06,065 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-27 12:00:06,065 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-27 12:00:06,065 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-27 12:00:06,065 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-27 12:00:06,065 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-27 12:00:06,128 INFO L234 CfgBuilder]: Building ICFG [2022-04-27 12:00:06,129 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-27 12:00:06,349 INFO L275 CfgBuilder]: Performing block encoding [2022-04-27 12:00:06,356 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-27 12:00:06,356 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-27 12:00:06,358 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 12:00:06 BoogieIcfgContainer [2022-04-27 12:00:06,358 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-27 12:00:06,359 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-27 12:00:06,359 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-27 12:00:06,378 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-27 12:00:06,379 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.04 12:00:05" (1/3) ... [2022-04-27 12:00:06,379 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3f433f6b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 12:00:06, skipping insertion in model container [2022-04-27 12:00:06,379 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:00:05" (2/3) ... [2022-04-27 12:00:06,380 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3f433f6b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 12:00:06, skipping insertion in model container [2022-04-27 12:00:06,380 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 12:00:06" (3/3) ... [2022-04-27 12:00:06,381 INFO L111 eAbstractionObserver]: Analyzing ICFG bresenham-ll_unwindbound10.c [2022-04-27 12:00:06,394 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-27 12:00:06,394 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-27 12:00:06,441 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-27 12:00:06,448 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@d666ef4, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@61b7cedd [2022-04-27 12:00:06,448 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-27 12:00:06,458 INFO L276 IsEmpty]: Start isEmpty. Operand has 25 states, 16 states have (on average 1.375) internal successors, (22), 17 states have internal predecessors, (22), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 12:00:06,464 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2022-04-27 12:00:06,465 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:00:06,465 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:00:06,466 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:00:06,470 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:00:06,470 INFO L85 PathProgramCache]: Analyzing trace with hash 2019451875, now seen corresponding path program 1 times [2022-04-27 12:00:06,479 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:00:06,479 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [976604081] [2022-04-27 12:00:06,479 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:00:06,480 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:00:06,569 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:00:06,658 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 12:00:06,668 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:00:06,685 INFO L290 TraceCheckUtils]: 0: Hoare triple {33#(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(15, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {28#true} is VALID [2022-04-27 12:00:06,685 INFO L290 TraceCheckUtils]: 1: Hoare triple {28#true} assume true; {28#true} is VALID [2022-04-27 12:00:06,686 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {28#true} {28#true} #62#return; {28#true} is VALID [2022-04-27 12:00:06,688 INFO L272 TraceCheckUtils]: 0: Hoare triple {28#true} call ULTIMATE.init(); {33#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 12:00:06,689 INFO L290 TraceCheckUtils]: 1: Hoare triple {33#(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(15, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {28#true} is VALID [2022-04-27 12:00:06,689 INFO L290 TraceCheckUtils]: 2: Hoare triple {28#true} assume true; {28#true} is VALID [2022-04-27 12:00:06,689 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {28#true} {28#true} #62#return; {28#true} is VALID [2022-04-27 12:00:06,690 INFO L272 TraceCheckUtils]: 4: Hoare triple {28#true} call #t~ret9 := main(); {28#true} is VALID [2022-04-27 12:00:06,691 INFO L290 TraceCheckUtils]: 5: Hoare triple {28#true} havoc ~X~0;havoc ~Y~0;havoc ~x~0;havoc ~y~0;havoc ~v~0;havoc ~xy~0;havoc ~yx~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;~v~0 := 2 * ~Y~0 - ~X~0;~y~0 := 0;~x~0 := 0; {28#true} is VALID [2022-04-27 12:00:06,694 INFO L290 TraceCheckUtils]: 6: Hoare triple {28#true} assume !true; {29#false} is VALID [2022-04-27 12:00:06,694 INFO L290 TraceCheckUtils]: 7: Hoare triple {29#false} ~xy~0 := ~x~0 * ~y~0;~yx~0 := ~Y~0 * ~x~0; {29#false} is VALID [2022-04-27 12:00:06,695 INFO L272 TraceCheckUtils]: 8: Hoare triple {29#false} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 + 2 * ~y~0 then 1 else 0)); {29#false} is VALID [2022-04-27 12:00:06,695 INFO L290 TraceCheckUtils]: 9: Hoare triple {29#false} ~cond := #in~cond; {29#false} is VALID [2022-04-27 12:00:06,696 INFO L290 TraceCheckUtils]: 10: Hoare triple {29#false} assume 0 == ~cond; {29#false} is VALID [2022-04-27 12:00:06,696 INFO L290 TraceCheckUtils]: 11: Hoare triple {29#false} assume !false; {29#false} is VALID [2022-04-27 12:00:06,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-27 12:00:06,697 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:00:06,697 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [976604081] [2022-04-27 12:00:06,698 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [976604081] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:00:06,698 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:00:06,698 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-27 12:00:06,702 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [867369001] [2022-04-27 12:00:06,703 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:00:06,707 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 2 states have internal predecessors, (8), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 12 [2022-04-27 12:00:06,709 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:00:06,711 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 2 states have internal predecessors, (8), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-27 12:00:06,740 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 12 edges. 12 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:00:06,740 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-27 12:00:06,741 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:00:06,764 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-27 12:00:06,765 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-27 12:00:06,767 INFO L87 Difference]: Start difference. First operand has 25 states, 16 states have (on average 1.375) internal successors, (22), 17 states have internal predecessors, (22), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand has 3 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 2 states have internal predecessors, (8), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-27 12:00:06,905 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:00:06,905 INFO L93 Difference]: Finished difference Result 45 states and 58 transitions. [2022-04-27 12:00:06,906 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-27 12:00:06,906 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 2 states have internal predecessors, (8), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 12 [2022-04-27 12:00:06,906 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:00:06,907 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 2 states have internal predecessors, (8), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-27 12:00:06,920 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 58 transitions. [2022-04-27 12:00:06,921 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 2 states have internal predecessors, (8), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-27 12:00:06,932 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 58 transitions. [2022-04-27 12:00:06,932 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 58 transitions. [2022-04-27 12:00:07,022 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:00:07,032 INFO L225 Difference]: With dead ends: 45 [2022-04-27 12:00:07,033 INFO L226 Difference]: Without dead ends: 21 [2022-04-27 12:00:07,036 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-27 12:00:07,040 INFO L413 NwaCegarLoop]: 27 mSDtfsCounter, 6 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 15 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 31 SdHoareTripleChecker+Invalid, 18 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 15 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 12:00:07,041 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [6 Valid, 31 Invalid, 18 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 15 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 12:00:07,056 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 21 states. [2022-04-27 12:00:07,070 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 21 to 20. [2022-04-27 12:00:07,070 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:00:07,072 INFO L82 GeneralOperation]: Start isEquivalent. First operand 21 states. Second operand has 20 states, 13 states have (on average 1.3076923076923077) internal successors, (17), 14 states have internal predecessors, (17), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-27 12:00:07,072 INFO L74 IsIncluded]: Start isIncluded. First operand 21 states. Second operand has 20 states, 13 states have (on average 1.3076923076923077) internal successors, (17), 14 states have internal predecessors, (17), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-27 12:00:07,073 INFO L87 Difference]: Start difference. First operand 21 states. Second operand has 20 states, 13 states have (on average 1.3076923076923077) internal successors, (17), 14 states have internal predecessors, (17), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-27 12:00:07,078 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:00:07,079 INFO L93 Difference]: Finished difference Result 21 states and 24 transitions. [2022-04-27 12:00:07,080 INFO L276 IsEmpty]: Start isEmpty. Operand 21 states and 24 transitions. [2022-04-27 12:00:07,080 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:00:07,080 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:00:07,081 INFO L74 IsIncluded]: Start isIncluded. First operand has 20 states, 13 states have (on average 1.3076923076923077) internal successors, (17), 14 states have internal predecessors, (17), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Second operand 21 states. [2022-04-27 12:00:07,082 INFO L87 Difference]: Start difference. First operand has 20 states, 13 states have (on average 1.3076923076923077) internal successors, (17), 14 states have internal predecessors, (17), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Second operand 21 states. [2022-04-27 12:00:07,085 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:00:07,086 INFO L93 Difference]: Finished difference Result 21 states and 24 transitions. [2022-04-27 12:00:07,086 INFO L276 IsEmpty]: Start isEmpty. Operand 21 states and 24 transitions. [2022-04-27 12:00:07,086 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:00:07,087 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:00:07,087 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:00:07,087 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:00:07,088 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 13 states have (on average 1.3076923076923077) internal successors, (17), 14 states have internal predecessors, (17), 4 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-27 12:00:07,089 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 23 transitions. [2022-04-27 12:00:07,090 INFO L78 Accepts]: Start accepts. Automaton has 20 states and 23 transitions. Word has length 12 [2022-04-27 12:00:07,091 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:00:07,091 INFO L495 AbstractCegarLoop]: Abstraction has 20 states and 23 transitions. [2022-04-27 12:00:07,092 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 2.6666666666666665) internal successors, (8), 2 states have internal predecessors, (8), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-27 12:00:07,093 INFO L276 IsEmpty]: Start isEmpty. Operand 20 states and 23 transitions. [2022-04-27 12:00:07,096 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2022-04-27 12:00:07,097 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:00:07,102 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:00:07,102 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-27 12:00:07,104 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:00:07,106 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:00:07,107 INFO L85 PathProgramCache]: Analyzing trace with hash 1431109416, now seen corresponding path program 1 times [2022-04-27 12:00:07,107 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:00:07,107 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [622051489] [2022-04-27 12:00:07,107 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:00:07,107 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:00:07,125 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:00:07,126 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [552787662] [2022-04-27 12:00:07,126 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:00:07,126 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:00:07,126 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:00:07,128 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:00:07,129 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-27 12:00:07,175 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:00:07,177 INFO L263 TraceCheckSpWp]: Trace formula consists of 79 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-27 12:00:07,186 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:00:07,190 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:00:07,401 INFO L272 TraceCheckUtils]: 0: Hoare triple {164#true} call ULTIMATE.init(); {164#true} is VALID [2022-04-27 12:00:07,402 INFO L290 TraceCheckUtils]: 1: Hoare triple {164#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(15, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {164#true} is VALID [2022-04-27 12:00:07,402 INFO L290 TraceCheckUtils]: 2: Hoare triple {164#true} assume true; {164#true} is VALID [2022-04-27 12:00:07,402 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {164#true} {164#true} #62#return; {164#true} is VALID [2022-04-27 12:00:07,403 INFO L272 TraceCheckUtils]: 4: Hoare triple {164#true} call #t~ret9 := main(); {164#true} is VALID [2022-04-27 12:00:07,404 INFO L290 TraceCheckUtils]: 5: Hoare triple {164#true} havoc ~X~0;havoc ~Y~0;havoc ~x~0;havoc ~y~0;havoc ~v~0;havoc ~xy~0;havoc ~yx~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;~v~0 := 2 * ~Y~0 - ~X~0;~y~0 := 0;~x~0 := 0; {184#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} is VALID [2022-04-27 12:00:07,404 INFO L290 TraceCheckUtils]: 6: Hoare triple {184#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {184#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} is VALID [2022-04-27 12:00:07,405 INFO L290 TraceCheckUtils]: 7: Hoare triple {184#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} assume !!(#t~post6 < 10);havoc #t~post6;~yx~0 := ~Y~0 * ~x~0;~xy~0 := ~X~0 * ~y~0; {191#(and (= main_~xy~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~yx~0 0))} is VALID [2022-04-27 12:00:07,407 INFO L272 TraceCheckUtils]: 8: Hoare triple {191#(and (= main_~xy~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~yx~0 0))} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 then 1 else 0)); {195#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:00:07,408 INFO L290 TraceCheckUtils]: 9: Hoare triple {195#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {199#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:00:07,408 INFO L290 TraceCheckUtils]: 10: Hoare triple {199#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {165#false} is VALID [2022-04-27 12:00:07,408 INFO L290 TraceCheckUtils]: 11: Hoare triple {165#false} assume !false; {165#false} is VALID [2022-04-27 12:00:07,409 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 12:00:07,409 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 12:00:07,409 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:00:07,409 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [622051489] [2022-04-27 12:00:07,409 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:00:07,410 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [552787662] [2022-04-27 12:00:07,410 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [552787662] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:00:07,410 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:00:07,410 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-27 12:00:07,411 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1187651032] [2022-04-27 12:00:07,411 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:00:07,412 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 1.6) internal successors, (8), 5 states have internal predecessors, (8), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 12 [2022-04-27 12:00:07,412 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:00:07,412 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 1.6) internal successors, (8), 5 states have internal predecessors, (8), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-27 12:00:07,425 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 12 edges. 12 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:00:07,425 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-27 12:00:07,425 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:00:07,426 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-27 12:00:07,426 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-27 12:00:07,426 INFO L87 Difference]: Start difference. First operand 20 states and 23 transitions. Second operand has 6 states, 5 states have (on average 1.6) internal successors, (8), 5 states have internal predecessors, (8), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-27 12:00:07,630 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:00:07,630 INFO L93 Difference]: Finished difference Result 34 states and 40 transitions. [2022-04-27 12:00:07,630 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 12:00:07,630 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 1.6) internal successors, (8), 5 states have internal predecessors, (8), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 12 [2022-04-27 12:00:07,631 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:00:07,631 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 1.6) internal successors, (8), 5 states have internal predecessors, (8), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-27 12:00:07,632 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 40 transitions. [2022-04-27 12:00:07,633 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 1.6) internal successors, (8), 5 states have internal predecessors, (8), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-27 12:00:07,634 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 40 transitions. [2022-04-27 12:00:07,635 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 40 transitions. [2022-04-27 12:00:07,672 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:00:07,674 INFO L225 Difference]: With dead ends: 34 [2022-04-27 12:00:07,674 INFO L226 Difference]: Without dead ends: 29 [2022-04-27 12:00:07,675 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 7 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-27 12:00:07,676 INFO L413 NwaCegarLoop]: 15 mSDtfsCounter, 12 mSDsluCounter, 49 mSDsCounter, 0 mSdLazyCounter, 56 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 64 SdHoareTripleChecker+Invalid, 60 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 56 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 12:00:07,676 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [12 Valid, 64 Invalid, 60 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 56 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 12:00:07,677 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2022-04-27 12:00:07,682 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 28. [2022-04-27 12:00:07,682 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:00:07,682 INFO L82 GeneralOperation]: Start isEquivalent. First operand 29 states. Second operand has 28 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 12:00:07,683 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand has 28 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 12:00:07,683 INFO L87 Difference]: Start difference. First operand 29 states. Second operand has 28 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 12:00:07,685 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:00:07,685 INFO L93 Difference]: Finished difference Result 29 states and 33 transitions. [2022-04-27 12:00:07,685 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 33 transitions. [2022-04-27 12:00:07,686 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:00:07,686 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:00:07,686 INFO L74 IsIncluded]: Start isIncluded. First operand has 28 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 29 states. [2022-04-27 12:00:07,687 INFO L87 Difference]: Start difference. First operand has 28 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 29 states. [2022-04-27 12:00:07,688 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:00:07,689 INFO L93 Difference]: Finished difference Result 29 states and 33 transitions. [2022-04-27 12:00:07,689 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 33 transitions. [2022-04-27 12:00:07,689 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:00:07,689 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:00:07,689 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:00:07,690 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:00:07,690 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 12:00:07,691 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 31 transitions. [2022-04-27 12:00:07,692 INFO L78 Accepts]: Start accepts. Automaton has 28 states and 31 transitions. Word has length 12 [2022-04-27 12:00:07,692 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:00:07,692 INFO L495 AbstractCegarLoop]: Abstraction has 28 states and 31 transitions. [2022-04-27 12:00:07,692 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 1.6) internal successors, (8), 5 states have internal predecessors, (8), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-27 12:00:07,692 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 31 transitions. [2022-04-27 12:00:07,693 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-04-27 12:00:07,693 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:00:07,693 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:00:07,721 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-04-27 12:00:07,907 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:00:07,908 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:00:07,909 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:00:07,909 INFO L85 PathProgramCache]: Analyzing trace with hash 1603905768, now seen corresponding path program 1 times [2022-04-27 12:00:07,909 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:00:07,909 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1720996135] [2022-04-27 12:00:07,909 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:00:07,910 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:00:07,930 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:00:07,930 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1038938899] [2022-04-27 12:00:07,930 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:00:07,930 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:00:07,931 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:00:07,939 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:00:07,979 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-27 12:00:08,018 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:00:08,032 INFO L263 TraceCheckSpWp]: Trace formula consists of 103 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-27 12:00:08,050 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:00:08,052 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:00:08,293 INFO L272 TraceCheckUtils]: 0: Hoare triple {352#true} call ULTIMATE.init(); {352#true} is VALID [2022-04-27 12:00:08,293 INFO L290 TraceCheckUtils]: 1: Hoare triple {352#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(15, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {352#true} is VALID [2022-04-27 12:00:08,293 INFO L290 TraceCheckUtils]: 2: Hoare triple {352#true} assume true; {352#true} is VALID [2022-04-27 12:00:08,294 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {352#true} {352#true} #62#return; {352#true} is VALID [2022-04-27 12:00:08,294 INFO L272 TraceCheckUtils]: 4: Hoare triple {352#true} call #t~ret9 := main(); {352#true} is VALID [2022-04-27 12:00:08,295 INFO L290 TraceCheckUtils]: 5: Hoare triple {352#true} havoc ~X~0;havoc ~Y~0;havoc ~x~0;havoc ~y~0;havoc ~v~0;havoc ~xy~0;havoc ~yx~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;~v~0 := 2 * ~Y~0 - ~X~0;~y~0 := 0;~x~0 := 0; {372#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} is VALID [2022-04-27 12:00:08,297 INFO L290 TraceCheckUtils]: 6: Hoare triple {372#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {372#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} is VALID [2022-04-27 12:00:08,301 INFO L290 TraceCheckUtils]: 7: Hoare triple {372#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} assume !!(#t~post6 < 10);havoc #t~post6;~yx~0 := ~Y~0 * ~x~0;~xy~0 := ~X~0 * ~y~0; {372#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} is VALID [2022-04-27 12:00:08,301 INFO L272 TraceCheckUtils]: 8: Hoare triple {372#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 then 1 else 0)); {352#true} is VALID [2022-04-27 12:00:08,303 INFO L290 TraceCheckUtils]: 9: Hoare triple {352#true} ~cond := #in~cond; {352#true} is VALID [2022-04-27 12:00:08,303 INFO L290 TraceCheckUtils]: 10: Hoare triple {352#true} assume !(0 == ~cond); {352#true} is VALID [2022-04-27 12:00:08,303 INFO L290 TraceCheckUtils]: 11: Hoare triple {352#true} assume true; {352#true} is VALID [2022-04-27 12:00:08,304 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {352#true} {372#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} #58#return; {372#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} is VALID [2022-04-27 12:00:08,305 INFO L290 TraceCheckUtils]: 13: Hoare triple {372#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} assume !!(~x~0 <= ~X~0); {372#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} is VALID [2022-04-27 12:00:08,306 INFO L290 TraceCheckUtils]: 14: Hoare triple {372#(and (= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0) (= main_~y~0 0))} assume ~v~0 < 0;~v~0 := ~v~0 + 2 * ~Y~0; {400#(and (= main_~x~0 0) (= main_~y~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} is VALID [2022-04-27 12:00:08,307 INFO L290 TraceCheckUtils]: 15: Hoare triple {400#(and (= main_~x~0 0) (= main_~y~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} #t~post8 := ~x~0;~x~0 := 1 + #t~post8;havoc #t~post8; {404#(and (= main_~x~0 1) (= main_~y~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} is VALID [2022-04-27 12:00:08,308 INFO L290 TraceCheckUtils]: 16: Hoare triple {404#(and (= main_~x~0 1) (= main_~y~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {404#(and (= main_~x~0 1) (= main_~y~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} is VALID [2022-04-27 12:00:08,308 INFO L290 TraceCheckUtils]: 17: Hoare triple {404#(and (= main_~x~0 1) (= main_~y~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} assume !!(#t~post6 < 10);havoc #t~post6;~yx~0 := ~Y~0 * ~x~0;~xy~0 := ~X~0 * ~y~0; {411#(and (= main_~xy~0 0) (= main_~Y~0 main_~yx~0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} is VALID [2022-04-27 12:00:08,310 INFO L272 TraceCheckUtils]: 18: Hoare triple {411#(and (= main_~xy~0 0) (= main_~Y~0 main_~yx~0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) (+ main_~v~0 (* (- 2) main_~Y~0))))} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 then 1 else 0)); {415#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:00:08,310 INFO L290 TraceCheckUtils]: 19: Hoare triple {415#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {419#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:00:08,311 INFO L290 TraceCheckUtils]: 20: Hoare triple {419#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {353#false} is VALID [2022-04-27 12:00:08,314 INFO L290 TraceCheckUtils]: 21: Hoare triple {353#false} assume !false; {353#false} is VALID [2022-04-27 12:00:08,314 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 2 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 12:00:08,314 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:00:08,527 INFO L290 TraceCheckUtils]: 21: Hoare triple {353#false} assume !false; {353#false} is VALID [2022-04-27 12:00:08,529 INFO L290 TraceCheckUtils]: 20: Hoare triple {419#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {353#false} is VALID [2022-04-27 12:00:08,529 INFO L290 TraceCheckUtils]: 19: Hoare triple {415#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {419#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:00:08,531 INFO L272 TraceCheckUtils]: 18: Hoare triple {435#(= (+ (* 2 main_~xy~0) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 main_~yx~0)))} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 then 1 else 0)); {415#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:00:08,533 INFO L290 TraceCheckUtils]: 17: Hoare triple {439#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} assume !!(#t~post6 < 10);havoc #t~post6;~yx~0 := ~Y~0 * ~x~0;~xy~0 := ~X~0 * ~y~0; {435#(= (+ (* 2 main_~xy~0) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 main_~yx~0)))} is VALID [2022-04-27 12:00:08,534 INFO L290 TraceCheckUtils]: 16: Hoare triple {439#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {439#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} is VALID [2022-04-27 12:00:08,536 INFO L290 TraceCheckUtils]: 15: Hoare triple {446#(= (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0))))} #t~post8 := ~x~0;~x~0 := 1 + #t~post8;havoc #t~post8; {439#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} is VALID [2022-04-27 12:00:08,537 INFO L290 TraceCheckUtils]: 14: Hoare triple {439#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} assume ~v~0 < 0;~v~0 := ~v~0 + 2 * ~Y~0; {446#(= (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0))))} is VALID [2022-04-27 12:00:08,537 INFO L290 TraceCheckUtils]: 13: Hoare triple {439#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} assume !!(~x~0 <= ~X~0); {439#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} is VALID [2022-04-27 12:00:08,539 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {352#true} {439#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} #58#return; {439#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} is VALID [2022-04-27 12:00:08,539 INFO L290 TraceCheckUtils]: 11: Hoare triple {352#true} assume true; {352#true} is VALID [2022-04-27 12:00:08,539 INFO L290 TraceCheckUtils]: 10: Hoare triple {352#true} assume !(0 == ~cond); {352#true} is VALID [2022-04-27 12:00:08,539 INFO L290 TraceCheckUtils]: 9: Hoare triple {352#true} ~cond := #in~cond; {352#true} is VALID [2022-04-27 12:00:08,539 INFO L272 TraceCheckUtils]: 8: Hoare triple {439#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 then 1 else 0)); {352#true} is VALID [2022-04-27 12:00:08,540 INFO L290 TraceCheckUtils]: 7: Hoare triple {439#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} assume !!(#t~post6 < 10);havoc #t~post6;~yx~0 := ~Y~0 * ~x~0;~xy~0 := ~X~0 * ~y~0; {439#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} is VALID [2022-04-27 12:00:08,541 INFO L290 TraceCheckUtils]: 6: Hoare triple {439#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {439#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} is VALID [2022-04-27 12:00:08,542 INFO L290 TraceCheckUtils]: 5: Hoare triple {352#true} havoc ~X~0;havoc ~Y~0;havoc ~x~0;havoc ~y~0;havoc ~v~0;havoc ~xy~0;havoc ~yx~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;~v~0 := 2 * ~Y~0 - ~X~0;~y~0 := 0;~x~0 := 0; {439#(= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0))} is VALID [2022-04-27 12:00:08,542 INFO L272 TraceCheckUtils]: 4: Hoare triple {352#true} call #t~ret9 := main(); {352#true} is VALID [2022-04-27 12:00:08,542 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {352#true} {352#true} #62#return; {352#true} is VALID [2022-04-27 12:00:08,542 INFO L290 TraceCheckUtils]: 2: Hoare triple {352#true} assume true; {352#true} is VALID [2022-04-27 12:00:08,542 INFO L290 TraceCheckUtils]: 1: Hoare triple {352#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(15, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {352#true} is VALID [2022-04-27 12:00:08,543 INFO L272 TraceCheckUtils]: 0: Hoare triple {352#true} call ULTIMATE.init(); {352#true} is VALID [2022-04-27 12:00:08,543 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 2 proven. 1 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-27 12:00:08,543 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:00:08,543 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1720996135] [2022-04-27 12:00:08,543 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:00:08,543 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1038938899] [2022-04-27 12:00:08,544 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1038938899] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 12:00:08,544 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 12:00:08,544 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7] total 11 [2022-04-27 12:00:08,544 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [218305223] [2022-04-27 12:00:08,544 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 12:00:08,545 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 states have internal predecessors, (23), 5 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Word has length 22 [2022-04-27 12:00:08,545 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:00:08,545 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 states have internal predecessors, (23), 5 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 12:00:08,574 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:00:08,575 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-27 12:00:08,575 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:00:08,575 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-27 12:00:08,576 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-27 12:00:08,576 INFO L87 Difference]: Start difference. First operand 28 states and 31 transitions. Second operand has 11 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 states have internal predecessors, (23), 5 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 12:00:09,241 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:00:09,242 INFO L93 Difference]: Finished difference Result 45 states and 52 transitions. [2022-04-27 12:00:09,242 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-27 12:00:09,242 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 states have internal predecessors, (23), 5 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Word has length 22 [2022-04-27 12:00:09,243 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:00:09,243 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 states have internal predecessors, (23), 5 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 12:00:09,245 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 49 transitions. [2022-04-27 12:00:09,245 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 states have internal predecessors, (23), 5 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 12:00:09,247 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 49 transitions. [2022-04-27 12:00:09,248 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 49 transitions. [2022-04-27 12:00:09,302 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:00:09,307 INFO L225 Difference]: With dead ends: 45 [2022-04-27 12:00:09,308 INFO L226 Difference]: Without dead ends: 38 [2022-04-27 12:00:09,308 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 47 GetRequests, 32 SyntacticMatches, 2 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=44, Invalid=166, Unknown=0, NotChecked=0, Total=210 [2022-04-27 12:00:09,309 INFO L413 NwaCegarLoop]: 15 mSDtfsCounter, 20 mSDsluCounter, 85 mSDsCounter, 0 mSdLazyCounter, 154 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 20 SdHoareTripleChecker+Valid, 100 SdHoareTripleChecker+Invalid, 165 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 154 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-27 12:00:09,310 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [20 Valid, 100 Invalid, 165 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 154 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-27 12:00:09,310 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 38 states. [2022-04-27 12:00:09,316 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 38 to 36. [2022-04-27 12:00:09,316 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:00:09,317 INFO L82 GeneralOperation]: Start isEquivalent. First operand 38 states. Second operand has 36 states, 26 states have (on average 1.1538461538461537) internal successors, (30), 26 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 12:00:09,317 INFO L74 IsIncluded]: Start isIncluded. First operand 38 states. Second operand has 36 states, 26 states have (on average 1.1538461538461537) internal successors, (30), 26 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 12:00:09,317 INFO L87 Difference]: Start difference. First operand 38 states. Second operand has 36 states, 26 states have (on average 1.1538461538461537) internal successors, (30), 26 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 12:00:09,319 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:00:09,320 INFO L93 Difference]: Finished difference Result 38 states and 43 transitions. [2022-04-27 12:00:09,320 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 43 transitions. [2022-04-27 12:00:09,320 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:00:09,320 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:00:09,321 INFO L74 IsIncluded]: Start isIncluded. First operand has 36 states, 26 states have (on average 1.1538461538461537) internal successors, (30), 26 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 38 states. [2022-04-27 12:00:09,321 INFO L87 Difference]: Start difference. First operand has 36 states, 26 states have (on average 1.1538461538461537) internal successors, (30), 26 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 38 states. [2022-04-27 12:00:09,323 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:00:09,323 INFO L93 Difference]: Finished difference Result 38 states and 43 transitions. [2022-04-27 12:00:09,323 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 43 transitions. [2022-04-27 12:00:09,324 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:00:09,324 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:00:09,324 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:00:09,324 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:00:09,324 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 26 states have (on average 1.1538461538461537) internal successors, (30), 26 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 12:00:09,326 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 40 transitions. [2022-04-27 12:00:09,326 INFO L78 Accepts]: Start accepts. Automaton has 36 states and 40 transitions. Word has length 22 [2022-04-27 12:00:09,326 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:00:09,326 INFO L495 AbstractCegarLoop]: Abstraction has 36 states and 40 transitions. [2022-04-27 12:00:09,327 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 10 states have internal predecessors, (23), 5 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 12:00:09,327 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 40 transitions. [2022-04-27 12:00:09,327 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-27 12:00:09,327 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:00:09,328 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:00:09,348 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-27 12:00:09,539 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-27 12:00:09,540 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:00:09,540 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:00:09,540 INFO L85 PathProgramCache]: Analyzing trace with hash -1213814707, now seen corresponding path program 1 times [2022-04-27 12:00:09,540 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:00:09,540 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1545097691] [2022-04-27 12:00:09,540 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:00:09,541 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:00:09,556 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:00:09,556 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2091108117] [2022-04-27 12:00:09,556 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:00:09,556 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:00:09,557 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:00:09,558 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:00:09,585 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-27 12:00:09,625 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:00:09,625 INFO L263 TraceCheckSpWp]: Trace formula consists of 105 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 12:00:09,634 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:00:09,635 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:00:09,802 INFO L272 TraceCheckUtils]: 0: Hoare triple {688#true} call ULTIMATE.init(); {688#true} is VALID [2022-04-27 12:00:09,803 INFO L290 TraceCheckUtils]: 1: Hoare triple {688#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(15, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {696#(<= ~counter~0 0)} is VALID [2022-04-27 12:00:09,804 INFO L290 TraceCheckUtils]: 2: Hoare triple {696#(<= ~counter~0 0)} assume true; {696#(<= ~counter~0 0)} is VALID [2022-04-27 12:00:09,811 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {696#(<= ~counter~0 0)} {688#true} #62#return; {696#(<= ~counter~0 0)} is VALID [2022-04-27 12:00:09,812 INFO L272 TraceCheckUtils]: 4: Hoare triple {696#(<= ~counter~0 0)} call #t~ret9 := main(); {696#(<= ~counter~0 0)} is VALID [2022-04-27 12:00:09,812 INFO L290 TraceCheckUtils]: 5: Hoare triple {696#(<= ~counter~0 0)} havoc ~X~0;havoc ~Y~0;havoc ~x~0;havoc ~y~0;havoc ~v~0;havoc ~xy~0;havoc ~yx~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;~v~0 := 2 * ~Y~0 - ~X~0;~y~0 := 0;~x~0 := 0; {696#(<= ~counter~0 0)} is VALID [2022-04-27 12:00:09,813 INFO L290 TraceCheckUtils]: 6: Hoare triple {696#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {712#(<= ~counter~0 1)} is VALID [2022-04-27 12:00:09,813 INFO L290 TraceCheckUtils]: 7: Hoare triple {712#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6;~yx~0 := ~Y~0 * ~x~0;~xy~0 := ~X~0 * ~y~0; {712#(<= ~counter~0 1)} is VALID [2022-04-27 12:00:09,814 INFO L272 TraceCheckUtils]: 8: Hoare triple {712#(<= ~counter~0 1)} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 then 1 else 0)); {712#(<= ~counter~0 1)} is VALID [2022-04-27 12:00:09,815 INFO L290 TraceCheckUtils]: 9: Hoare triple {712#(<= ~counter~0 1)} ~cond := #in~cond; {712#(<= ~counter~0 1)} is VALID [2022-04-27 12:00:09,815 INFO L290 TraceCheckUtils]: 10: Hoare triple {712#(<= ~counter~0 1)} assume !(0 == ~cond); {712#(<= ~counter~0 1)} is VALID [2022-04-27 12:00:09,815 INFO L290 TraceCheckUtils]: 11: Hoare triple {712#(<= ~counter~0 1)} assume true; {712#(<= ~counter~0 1)} is VALID [2022-04-27 12:00:09,816 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {712#(<= ~counter~0 1)} {712#(<= ~counter~0 1)} #58#return; {712#(<= ~counter~0 1)} is VALID [2022-04-27 12:00:09,817 INFO L290 TraceCheckUtils]: 13: Hoare triple {712#(<= ~counter~0 1)} assume !!(~x~0 <= ~X~0); {712#(<= ~counter~0 1)} is VALID [2022-04-27 12:00:09,817 INFO L290 TraceCheckUtils]: 14: Hoare triple {712#(<= ~counter~0 1)} assume !(~v~0 < 0);~v~0 := ~v~0 + 2 * (~Y~0 - ~X~0);#t~post7 := ~y~0;~y~0 := 1 + #t~post7;havoc #t~post7; {712#(<= ~counter~0 1)} is VALID [2022-04-27 12:00:09,819 INFO L290 TraceCheckUtils]: 15: Hoare triple {712#(<= ~counter~0 1)} #t~post8 := ~x~0;~x~0 := 1 + #t~post8;havoc #t~post8; {712#(<= ~counter~0 1)} is VALID [2022-04-27 12:00:09,819 INFO L290 TraceCheckUtils]: 16: Hoare triple {712#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {743#(<= |main_#t~post6| 1)} is VALID [2022-04-27 12:00:09,820 INFO L290 TraceCheckUtils]: 17: Hoare triple {743#(<= |main_#t~post6| 1)} assume !(#t~post6 < 10);havoc #t~post6; {689#false} is VALID [2022-04-27 12:00:09,820 INFO L290 TraceCheckUtils]: 18: Hoare triple {689#false} ~xy~0 := ~x~0 * ~y~0;~yx~0 := ~Y~0 * ~x~0; {689#false} is VALID [2022-04-27 12:00:09,820 INFO L272 TraceCheckUtils]: 19: Hoare triple {689#false} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 + 2 * ~y~0 then 1 else 0)); {689#false} is VALID [2022-04-27 12:00:09,820 INFO L290 TraceCheckUtils]: 20: Hoare triple {689#false} ~cond := #in~cond; {689#false} is VALID [2022-04-27 12:00:09,820 INFO L290 TraceCheckUtils]: 21: Hoare triple {689#false} assume 0 == ~cond; {689#false} is VALID [2022-04-27 12:00:09,820 INFO L290 TraceCheckUtils]: 22: Hoare triple {689#false} assume !false; {689#false} is VALID [2022-04-27 12:00:09,821 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 12:00:09,821 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:00:10,007 INFO L290 TraceCheckUtils]: 22: Hoare triple {689#false} assume !false; {689#false} is VALID [2022-04-27 12:00:10,007 INFO L290 TraceCheckUtils]: 21: Hoare triple {689#false} assume 0 == ~cond; {689#false} is VALID [2022-04-27 12:00:10,008 INFO L290 TraceCheckUtils]: 20: Hoare triple {689#false} ~cond := #in~cond; {689#false} is VALID [2022-04-27 12:00:10,008 INFO L272 TraceCheckUtils]: 19: Hoare triple {689#false} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 + 2 * ~y~0 then 1 else 0)); {689#false} is VALID [2022-04-27 12:00:10,008 INFO L290 TraceCheckUtils]: 18: Hoare triple {689#false} ~xy~0 := ~x~0 * ~y~0;~yx~0 := ~Y~0 * ~x~0; {689#false} is VALID [2022-04-27 12:00:10,009 INFO L290 TraceCheckUtils]: 17: Hoare triple {777#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {689#false} is VALID [2022-04-27 12:00:10,010 INFO L290 TraceCheckUtils]: 16: Hoare triple {781#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {777#(< |main_#t~post6| 10)} is VALID [2022-04-27 12:00:10,010 INFO L290 TraceCheckUtils]: 15: Hoare triple {781#(< ~counter~0 10)} #t~post8 := ~x~0;~x~0 := 1 + #t~post8;havoc #t~post8; {781#(< ~counter~0 10)} is VALID [2022-04-27 12:00:10,010 INFO L290 TraceCheckUtils]: 14: Hoare triple {781#(< ~counter~0 10)} assume !(~v~0 < 0);~v~0 := ~v~0 + 2 * (~Y~0 - ~X~0);#t~post7 := ~y~0;~y~0 := 1 + #t~post7;havoc #t~post7; {781#(< ~counter~0 10)} is VALID [2022-04-27 12:00:10,011 INFO L290 TraceCheckUtils]: 13: Hoare triple {781#(< ~counter~0 10)} assume !!(~x~0 <= ~X~0); {781#(< ~counter~0 10)} is VALID [2022-04-27 12:00:10,014 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {688#true} {781#(< ~counter~0 10)} #58#return; {781#(< ~counter~0 10)} is VALID [2022-04-27 12:00:10,014 INFO L290 TraceCheckUtils]: 11: Hoare triple {688#true} assume true; {688#true} is VALID [2022-04-27 12:00:10,014 INFO L290 TraceCheckUtils]: 10: Hoare triple {688#true} assume !(0 == ~cond); {688#true} is VALID [2022-04-27 12:00:10,014 INFO L290 TraceCheckUtils]: 9: Hoare triple {688#true} ~cond := #in~cond; {688#true} is VALID [2022-04-27 12:00:10,014 INFO L272 TraceCheckUtils]: 8: Hoare triple {781#(< ~counter~0 10)} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 then 1 else 0)); {688#true} is VALID [2022-04-27 12:00:10,015 INFO L290 TraceCheckUtils]: 7: Hoare triple {781#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6;~yx~0 := ~Y~0 * ~x~0;~xy~0 := ~X~0 * ~y~0; {781#(< ~counter~0 10)} is VALID [2022-04-27 12:00:10,015 INFO L290 TraceCheckUtils]: 6: Hoare triple {812#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {781#(< ~counter~0 10)} is VALID [2022-04-27 12:00:10,016 INFO L290 TraceCheckUtils]: 5: Hoare triple {812#(< ~counter~0 9)} havoc ~X~0;havoc ~Y~0;havoc ~x~0;havoc ~y~0;havoc ~v~0;havoc ~xy~0;havoc ~yx~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;~v~0 := 2 * ~Y~0 - ~X~0;~y~0 := 0;~x~0 := 0; {812#(< ~counter~0 9)} is VALID [2022-04-27 12:00:10,017 INFO L272 TraceCheckUtils]: 4: Hoare triple {812#(< ~counter~0 9)} call #t~ret9 := main(); {812#(< ~counter~0 9)} is VALID [2022-04-27 12:00:10,017 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {812#(< ~counter~0 9)} {688#true} #62#return; {812#(< ~counter~0 9)} is VALID [2022-04-27 12:00:10,018 INFO L290 TraceCheckUtils]: 2: Hoare triple {812#(< ~counter~0 9)} assume true; {812#(< ~counter~0 9)} is VALID [2022-04-27 12:00:10,019 INFO L290 TraceCheckUtils]: 1: Hoare triple {688#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(15, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {812#(< ~counter~0 9)} is VALID [2022-04-27 12:00:10,020 INFO L272 TraceCheckUtils]: 0: Hoare triple {688#true} call ULTIMATE.init(); {688#true} is VALID [2022-04-27 12:00:10,020 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 12:00:10,020 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:00:10,020 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1545097691] [2022-04-27 12:00:10,020 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:00:10,020 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2091108117] [2022-04-27 12:00:10,021 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2091108117] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 12:00:10,021 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 12:00:10,021 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-27 12:00:10,021 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1663974874] [2022-04-27 12:00:10,021 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 12:00:10,022 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 23 [2022-04-27 12:00:10,022 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:00:10,022 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-27 12:00:10,086 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:00:10,086 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-27 12:00:10,086 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:00:10,087 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-27 12:00:10,087 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-27 12:00:10,087 INFO L87 Difference]: Start difference. First operand 36 states and 40 transitions. Second operand has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-27 12:00:10,309 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:00:10,309 INFO L93 Difference]: Finished difference Result 77 states and 85 transitions. [2022-04-27 12:00:10,309 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-27 12:00:10,309 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 23 [2022-04-27 12:00:10,310 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:00:10,310 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-27 12:00:10,313 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 76 transitions. [2022-04-27 12:00:10,313 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-27 12:00:10,316 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 76 transitions. [2022-04-27 12:00:10,316 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 76 transitions. [2022-04-27 12:00:10,376 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 76 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:00:10,378 INFO L225 Difference]: With dead ends: 77 [2022-04-27 12:00:10,378 INFO L226 Difference]: Without dead ends: 71 [2022-04-27 12:00:10,378 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 48 GetRequests, 39 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=40, Invalid=70, Unknown=0, NotChecked=0, Total=110 [2022-04-27 12:00:10,379 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 47 mSDsluCounter, 91 mSDsCounter, 0 mSdLazyCounter, 25 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 47 SdHoareTripleChecker+Valid, 115 SdHoareTripleChecker+Invalid, 40 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 25 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 12:00:10,380 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [47 Valid, 115 Invalid, 40 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 25 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 12:00:10,380 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 71 states. [2022-04-27 12:00:10,398 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 71 to 59. [2022-04-27 12:00:10,398 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:00:10,399 INFO L82 GeneralOperation]: Start isEquivalent. First operand 71 states. Second operand has 59 states, 45 states have (on average 1.1777777777777778) internal successors, (53), 45 states have internal predecessors, (53), 8 states have call successors, (8), 7 states have call predecessors, (8), 5 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-27 12:00:10,399 INFO L74 IsIncluded]: Start isIncluded. First operand 71 states. Second operand has 59 states, 45 states have (on average 1.1777777777777778) internal successors, (53), 45 states have internal predecessors, (53), 8 states have call successors, (8), 7 states have call predecessors, (8), 5 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-27 12:00:10,400 INFO L87 Difference]: Start difference. First operand 71 states. Second operand has 59 states, 45 states have (on average 1.1777777777777778) internal successors, (53), 45 states have internal predecessors, (53), 8 states have call successors, (8), 7 states have call predecessors, (8), 5 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-27 12:00:10,403 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:00:10,403 INFO L93 Difference]: Finished difference Result 71 states and 77 transitions. [2022-04-27 12:00:10,403 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 77 transitions. [2022-04-27 12:00:10,404 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:00:10,404 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:00:10,404 INFO L74 IsIncluded]: Start isIncluded. First operand has 59 states, 45 states have (on average 1.1777777777777778) internal successors, (53), 45 states have internal predecessors, (53), 8 states have call successors, (8), 7 states have call predecessors, (8), 5 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 71 states. [2022-04-27 12:00:10,405 INFO L87 Difference]: Start difference. First operand has 59 states, 45 states have (on average 1.1777777777777778) internal successors, (53), 45 states have internal predecessors, (53), 8 states have call successors, (8), 7 states have call predecessors, (8), 5 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 71 states. [2022-04-27 12:00:10,408 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:00:10,408 INFO L93 Difference]: Finished difference Result 71 states and 77 transitions. [2022-04-27 12:00:10,408 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 77 transitions. [2022-04-27 12:00:10,409 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:00:10,409 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:00:10,409 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:00:10,409 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:00:10,409 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 59 states, 45 states have (on average 1.1777777777777778) internal successors, (53), 45 states have internal predecessors, (53), 8 states have call successors, (8), 7 states have call predecessors, (8), 5 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-27 12:00:10,411 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 67 transitions. [2022-04-27 12:00:10,411 INFO L78 Accepts]: Start accepts. Automaton has 59 states and 67 transitions. Word has length 23 [2022-04-27 12:00:10,412 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:00:10,412 INFO L495 AbstractCegarLoop]: Abstraction has 59 states and 67 transitions. [2022-04-27 12:00:10,412 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-27 12:00:10,412 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 67 transitions. [2022-04-27 12:00:10,413 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-27 12:00:10,413 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:00:10,413 INFO L195 NwaCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:00:10,436 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-27 12:00:10,613 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:00:10,614 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:00:10,614 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:00:10,614 INFO L85 PathProgramCache]: Analyzing trace with hash 1132431350, now seen corresponding path program 1 times [2022-04-27 12:00:10,614 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:00:10,615 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1903132540] [2022-04-27 12:00:10,615 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:00:10,615 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:00:10,628 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:00:10,629 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [161320912] [2022-04-27 12:00:10,629 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:00:10,629 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:00:10,629 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:00:10,630 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:00:10,647 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-27 12:00:10,683 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:00:10,684 INFO L263 TraceCheckSpWp]: Trace formula consists of 119 conjuncts, 26 conjunts are in the unsatisfiable core [2022-04-27 12:00:10,701 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:00:10,703 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:00:11,209 INFO L272 TraceCheckUtils]: 0: Hoare triple {1165#true} call ULTIMATE.init(); {1165#true} is VALID [2022-04-27 12:00:11,209 INFO L290 TraceCheckUtils]: 1: Hoare triple {1165#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(15, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1165#true} is VALID [2022-04-27 12:00:11,209 INFO L290 TraceCheckUtils]: 2: Hoare triple {1165#true} assume true; {1165#true} is VALID [2022-04-27 12:00:11,209 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1165#true} {1165#true} #62#return; {1165#true} is VALID [2022-04-27 12:00:11,210 INFO L272 TraceCheckUtils]: 4: Hoare triple {1165#true} call #t~ret9 := main(); {1165#true} is VALID [2022-04-27 12:00:11,213 INFO L290 TraceCheckUtils]: 5: Hoare triple {1165#true} havoc ~X~0;havoc ~Y~0;havoc ~x~0;havoc ~y~0;havoc ~v~0;havoc ~xy~0;havoc ~yx~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;~v~0 := 2 * ~Y~0 - ~X~0;~y~0 := 0;~x~0 := 0; {1185#(and (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-27 12:00:11,213 INFO L290 TraceCheckUtils]: 6: Hoare triple {1185#(and (= main_~x~0 0) (= main_~y~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1185#(and (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-27 12:00:11,214 INFO L290 TraceCheckUtils]: 7: Hoare triple {1185#(and (= main_~x~0 0) (= main_~y~0 0))} assume !!(#t~post6 < 10);havoc #t~post6;~yx~0 := ~Y~0 * ~x~0;~xy~0 := ~X~0 * ~y~0; {1185#(and (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-27 12:00:11,214 INFO L272 TraceCheckUtils]: 8: Hoare triple {1185#(and (= main_~x~0 0) (= main_~y~0 0))} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 then 1 else 0)); {1165#true} is VALID [2022-04-27 12:00:11,214 INFO L290 TraceCheckUtils]: 9: Hoare triple {1165#true} ~cond := #in~cond; {1165#true} is VALID [2022-04-27 12:00:11,214 INFO L290 TraceCheckUtils]: 10: Hoare triple {1165#true} assume !(0 == ~cond); {1165#true} is VALID [2022-04-27 12:00:11,214 INFO L290 TraceCheckUtils]: 11: Hoare triple {1165#true} assume true; {1165#true} is VALID [2022-04-27 12:00:11,215 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {1165#true} {1185#(and (= main_~x~0 0) (= main_~y~0 0))} #58#return; {1185#(and (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-27 12:00:11,216 INFO L290 TraceCheckUtils]: 13: Hoare triple {1185#(and (= main_~x~0 0) (= main_~y~0 0))} assume !!(~x~0 <= ~X~0); {1210#(and (<= main_~x~0 main_~X~0) (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-27 12:00:11,216 INFO L290 TraceCheckUtils]: 14: Hoare triple {1210#(and (<= main_~x~0 main_~X~0) (= main_~x~0 0) (= main_~y~0 0))} assume !(~v~0 < 0);~v~0 := ~v~0 + 2 * (~Y~0 - ~X~0);#t~post7 := ~y~0;~y~0 := 1 + #t~post7;havoc #t~post7; {1214#(and (<= main_~x~0 main_~X~0) (= main_~x~0 0) (= (+ (- 1) main_~y~0) 0))} is VALID [2022-04-27 12:00:11,217 INFO L290 TraceCheckUtils]: 15: Hoare triple {1214#(and (<= main_~x~0 main_~X~0) (= main_~x~0 0) (= (+ (- 1) main_~y~0) 0))} #t~post8 := ~x~0;~x~0 := 1 + #t~post8;havoc #t~post8; {1218#(and (= (+ (- 1) main_~y~0) 0) (= main_~x~0 1) (<= 0 main_~X~0))} is VALID [2022-04-27 12:00:11,217 INFO L290 TraceCheckUtils]: 16: Hoare triple {1218#(and (= (+ (- 1) main_~y~0) 0) (= main_~x~0 1) (<= 0 main_~X~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1218#(and (= (+ (- 1) main_~y~0) 0) (= main_~x~0 1) (<= 0 main_~X~0))} is VALID [2022-04-27 12:00:11,218 INFO L290 TraceCheckUtils]: 17: Hoare triple {1218#(and (= (+ (- 1) main_~y~0) 0) (= main_~x~0 1) (<= 0 main_~X~0))} assume !!(#t~post6 < 10);havoc #t~post6;~yx~0 := ~Y~0 * ~x~0;~xy~0 := ~X~0 * ~y~0; {1225#(and (= (+ (- 1) main_~y~0) 0) (= main_~x~0 1) (<= 0 main_~X~0) (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~yx~0 (* main_~Y~0 main_~x~0)))} is VALID [2022-04-27 12:00:11,218 INFO L272 TraceCheckUtils]: 18: Hoare triple {1225#(and (= (+ (- 1) main_~y~0) 0) (= main_~x~0 1) (<= 0 main_~X~0) (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~yx~0 (* main_~Y~0 main_~x~0)))} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 then 1 else 0)); {1165#true} is VALID [2022-04-27 12:00:11,218 INFO L290 TraceCheckUtils]: 19: Hoare triple {1165#true} ~cond := #in~cond; {1232#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:00:11,219 INFO L290 TraceCheckUtils]: 20: Hoare triple {1232#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {1236#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:00:11,219 INFO L290 TraceCheckUtils]: 21: Hoare triple {1236#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1236#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:00:11,221 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {1236#(not (= |__VERIFIER_assert_#in~cond| 0))} {1225#(and (= (+ (- 1) main_~y~0) 0) (= main_~x~0 1) (<= 0 main_~X~0) (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~yx~0 (* main_~Y~0 main_~x~0)))} #58#return; {1243#(and (= (+ (- 1) main_~y~0) 0) (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (= main_~x~0 1) (<= 0 main_~X~0))} is VALID [2022-04-27 12:00:11,222 INFO L290 TraceCheckUtils]: 23: Hoare triple {1243#(and (= (+ (- 1) main_~y~0) 0) (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (= main_~x~0 1) (<= 0 main_~X~0))} assume !(~x~0 <= ~X~0); {1247#(and (= (+ (- 1) main_~y~0) 0) (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (= main_~x~0 1) (<= 0 main_~X~0) (not (<= main_~x~0 main_~X~0)))} is VALID [2022-04-27 12:00:11,223 INFO L290 TraceCheckUtils]: 24: Hoare triple {1247#(and (= (+ (- 1) main_~y~0) 0) (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (= main_~x~0 1) (<= 0 main_~X~0) (not (<= main_~x~0 main_~X~0)))} ~xy~0 := ~x~0 * ~y~0;~yx~0 := ~Y~0 * ~x~0; {1251#(and (not (<= 1 main_~X~0)) (= (+ (- 1) main_~y~0) 0) (= main_~y~0 main_~xy~0) (<= 0 main_~X~0) (= (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0) (* main_~Y~0 4)) (= main_~Y~0 main_~yx~0))} is VALID [2022-04-27 12:00:11,224 INFO L272 TraceCheckUtils]: 25: Hoare triple {1251#(and (not (<= 1 main_~X~0)) (= (+ (- 1) main_~y~0) 0) (= main_~y~0 main_~xy~0) (<= 0 main_~X~0) (= (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0) (* main_~Y~0 4)) (= main_~Y~0 main_~yx~0))} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 + 2 * ~y~0 then 1 else 0)); {1255#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:00:11,224 INFO L290 TraceCheckUtils]: 26: Hoare triple {1255#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1259#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:00:11,225 INFO L290 TraceCheckUtils]: 27: Hoare triple {1259#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1166#false} is VALID [2022-04-27 12:00:11,225 INFO L290 TraceCheckUtils]: 28: Hoare triple {1166#false} assume !false; {1166#false} is VALID [2022-04-27 12:00:11,225 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 6 proven. 5 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-27 12:00:11,225 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:00:12,130 INFO L290 TraceCheckUtils]: 28: Hoare triple {1166#false} assume !false; {1166#false} is VALID [2022-04-27 12:00:12,131 INFO L290 TraceCheckUtils]: 27: Hoare triple {1259#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1166#false} is VALID [2022-04-27 12:00:12,131 INFO L290 TraceCheckUtils]: 26: Hoare triple {1255#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1259#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:00:12,132 INFO L272 TraceCheckUtils]: 25: Hoare triple {1275#(= (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* 2 main_~xy~0) main_~X~0 main_~v~0))} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 + 2 * ~y~0 then 1 else 0)); {1255#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:00:12,133 INFO L290 TraceCheckUtils]: 24: Hoare triple {1279#(= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} ~xy~0 := ~x~0 * ~y~0;~yx~0 := ~Y~0 * ~x~0; {1275#(= (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* 2 main_~xy~0) main_~X~0 main_~v~0))} is VALID [2022-04-27 12:00:12,134 INFO L290 TraceCheckUtils]: 23: Hoare triple {1283#(or (<= main_~x~0 main_~X~0) (= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} assume !(~x~0 <= ~X~0); {1279#(= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} is VALID [2022-04-27 12:00:12,135 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {1236#(not (= |__VERIFIER_assert_#in~cond| 0))} {1287#(or (<= main_~x~0 main_~X~0) (= (+ (* 2 (* main_~y~0 main_~x~0)) (* (- 2) main_~xy~0) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} #58#return; {1283#(or (<= main_~x~0 main_~X~0) (= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} is VALID [2022-04-27 12:00:12,136 INFO L290 TraceCheckUtils]: 21: Hoare triple {1236#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1236#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:00:12,136 INFO L290 TraceCheckUtils]: 20: Hoare triple {1297#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {1236#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:00:12,136 INFO L290 TraceCheckUtils]: 19: Hoare triple {1165#true} ~cond := #in~cond; {1297#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 12:00:12,137 INFO L272 TraceCheckUtils]: 18: Hoare triple {1287#(or (<= main_~x~0 main_~X~0) (= (+ (* 2 (* main_~y~0 main_~x~0)) (* (- 2) main_~xy~0) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 then 1 else 0)); {1165#true} is VALID [2022-04-27 12:00:12,138 INFO L290 TraceCheckUtils]: 17: Hoare triple {1304#(or (<= main_~x~0 main_~X~0) (forall ((main_~Y~0 Int)) (= (+ (* 2 (* main_~y~0 main_~x~0)) (* main_~Y~0 2) (* (* main_~X~0 main_~y~0) (- 2)) (* 2 (* main_~Y~0 main_~x~0))) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))))} assume !!(#t~post6 < 10);havoc #t~post6;~yx~0 := ~Y~0 * ~x~0;~xy~0 := ~X~0 * ~y~0; {1287#(or (<= main_~x~0 main_~X~0) (= (+ (* 2 (* main_~y~0 main_~x~0)) (* (- 2) main_~xy~0) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0)))))} is VALID [2022-04-27 12:00:12,138 INFO L290 TraceCheckUtils]: 16: Hoare triple {1304#(or (<= main_~x~0 main_~X~0) (forall ((main_~Y~0 Int)) (= (+ (* 2 (* main_~y~0 main_~x~0)) (* main_~Y~0 2) (* (* main_~X~0 main_~y~0) (- 2)) (* 2 (* main_~Y~0 main_~x~0))) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1304#(or (<= main_~x~0 main_~X~0) (forall ((main_~Y~0 Int)) (= (+ (* 2 (* main_~y~0 main_~x~0)) (* main_~Y~0 2) (* (* main_~X~0 main_~y~0) (- 2)) (* 2 (* main_~Y~0 main_~x~0))) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))))} is VALID [2022-04-27 12:00:12,140 INFO L290 TraceCheckUtils]: 15: Hoare triple {1311#(or (<= (+ main_~x~0 1) main_~X~0) (forall ((main_~Y~0 Int)) (= (+ (* (* (+ main_~x~0 1) main_~y~0) 2) (* main_~Y~0 2) (* (* main_~X~0 main_~y~0) (- 2)) (* 2 (* (+ main_~x~0 1) main_~Y~0))) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0))))))} #t~post8 := ~x~0;~x~0 := 1 + #t~post8;havoc #t~post8; {1304#(or (<= main_~x~0 main_~X~0) (forall ((main_~Y~0 Int)) (= (+ (* 2 (* main_~y~0 main_~x~0)) (* main_~Y~0 2) (* (* main_~X~0 main_~y~0) (- 2)) (* 2 (* main_~Y~0 main_~x~0))) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))))} is VALID [2022-04-27 12:00:12,143 INFO L290 TraceCheckUtils]: 14: Hoare triple {1315#(or (forall ((main_~Y~0 Int)) (= (+ (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0)) (* 2 (* (+ main_~x~0 1) (+ main_~y~0 1))) (* (* main_~X~0 (+ main_~y~0 1)) (- 2))) (+ 2 (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0))))) (<= (+ main_~x~0 1) main_~X~0))} assume !(~v~0 < 0);~v~0 := ~v~0 + 2 * (~Y~0 - ~X~0);#t~post7 := ~y~0;~y~0 := 1 + #t~post7;havoc #t~post7; {1311#(or (<= (+ main_~x~0 1) main_~X~0) (forall ((main_~Y~0 Int)) (= (+ (* (* (+ main_~x~0 1) main_~y~0) 2) (* main_~Y~0 2) (* (* main_~X~0 main_~y~0) (- 2)) (* 2 (* (+ main_~x~0 1) main_~Y~0))) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0))))))} is VALID [2022-04-27 12:00:12,144 INFO L290 TraceCheckUtils]: 13: Hoare triple {1165#true} assume !!(~x~0 <= ~X~0); {1315#(or (forall ((main_~Y~0 Int)) (= (+ (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0)) (* 2 (* (+ main_~x~0 1) (+ main_~y~0 1))) (* (* main_~X~0 (+ main_~y~0 1)) (- 2))) (+ 2 (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* (+ main_~x~0 1) main_~Y~0))))) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-27 12:00:12,145 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {1165#true} {1165#true} #58#return; {1165#true} is VALID [2022-04-27 12:00:12,145 INFO L290 TraceCheckUtils]: 11: Hoare triple {1165#true} assume true; {1165#true} is VALID [2022-04-27 12:00:12,145 INFO L290 TraceCheckUtils]: 10: Hoare triple {1165#true} assume !(0 == ~cond); {1165#true} is VALID [2022-04-27 12:00:12,145 INFO L290 TraceCheckUtils]: 9: Hoare triple {1165#true} ~cond := #in~cond; {1165#true} is VALID [2022-04-27 12:00:12,145 INFO L272 TraceCheckUtils]: 8: Hoare triple {1165#true} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 then 1 else 0)); {1165#true} is VALID [2022-04-27 12:00:12,145 INFO L290 TraceCheckUtils]: 7: Hoare triple {1165#true} assume !!(#t~post6 < 10);havoc #t~post6;~yx~0 := ~Y~0 * ~x~0;~xy~0 := ~X~0 * ~y~0; {1165#true} is VALID [2022-04-27 12:00:12,145 INFO L290 TraceCheckUtils]: 6: Hoare triple {1165#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1165#true} is VALID [2022-04-27 12:00:12,145 INFO L290 TraceCheckUtils]: 5: Hoare triple {1165#true} havoc ~X~0;havoc ~Y~0;havoc ~x~0;havoc ~y~0;havoc ~v~0;havoc ~xy~0;havoc ~yx~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;~v~0 := 2 * ~Y~0 - ~X~0;~y~0 := 0;~x~0 := 0; {1165#true} is VALID [2022-04-27 12:00:12,146 INFO L272 TraceCheckUtils]: 4: Hoare triple {1165#true} call #t~ret9 := main(); {1165#true} is VALID [2022-04-27 12:00:12,146 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1165#true} {1165#true} #62#return; {1165#true} is VALID [2022-04-27 12:00:12,146 INFO L290 TraceCheckUtils]: 2: Hoare triple {1165#true} assume true; {1165#true} is VALID [2022-04-27 12:00:12,146 INFO L290 TraceCheckUtils]: 1: Hoare triple {1165#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(15, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1165#true} is VALID [2022-04-27 12:00:12,146 INFO L272 TraceCheckUtils]: 0: Hoare triple {1165#true} call ULTIMATE.init(); {1165#true} is VALID [2022-04-27 12:00:12,146 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 10 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-27 12:00:12,147 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:00:12,147 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1903132540] [2022-04-27 12:00:12,147 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:00:12,147 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [161320912] [2022-04-27 12:00:12,147 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [161320912] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 12:00:12,147 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 12:00:12,147 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 13] total 22 [2022-04-27 12:00:12,147 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [392626053] [2022-04-27 12:00:12,147 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 12:00:12,148 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 18 states have (on average 1.8333333333333333) internal successors, (33), 19 states have internal predecessors, (33), 6 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) Word has length 29 [2022-04-27 12:00:12,148 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:00:12,149 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 22 states, 18 states have (on average 1.8333333333333333) internal successors, (33), 19 states have internal predecessors, (33), 6 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-27 12:00:12,197 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:00:12,197 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-04-27 12:00:12,197 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:00:12,198 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-04-27 12:00:12,198 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=73, Invalid=389, Unknown=0, NotChecked=0, Total=462 [2022-04-27 12:00:12,199 INFO L87 Difference]: Start difference. First operand 59 states and 67 transitions. Second operand has 22 states, 18 states have (on average 1.8333333333333333) internal successors, (33), 19 states have internal predecessors, (33), 6 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-27 12:00:13,372 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:00:13,372 INFO L93 Difference]: Finished difference Result 85 states and 98 transitions. [2022-04-27 12:00:13,372 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2022-04-27 12:00:13,373 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 18 states have (on average 1.8333333333333333) internal successors, (33), 19 states have internal predecessors, (33), 6 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) Word has length 29 [2022-04-27 12:00:13,373 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:00:13,374 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 18 states have (on average 1.8333333333333333) internal successors, (33), 19 states have internal predecessors, (33), 6 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-27 12:00:13,376 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 61 transitions. [2022-04-27 12:00:13,376 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 18 states have (on average 1.8333333333333333) internal successors, (33), 19 states have internal predecessors, (33), 6 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-27 12:00:13,378 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 61 transitions. [2022-04-27 12:00:13,378 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 26 states and 61 transitions. [2022-04-27 12:00:13,461 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:00:13,463 INFO L225 Difference]: With dead ends: 85 [2022-04-27 12:00:13,464 INFO L226 Difference]: Without dead ends: 77 [2022-04-27 12:00:13,464 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 74 GetRequests, 38 SyntacticMatches, 1 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 265 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=222, Invalid=1110, Unknown=0, NotChecked=0, Total=1332 [2022-04-27 12:00:13,465 INFO L413 NwaCegarLoop]: 15 mSDtfsCounter, 40 mSDsluCounter, 123 mSDsCounter, 0 mSdLazyCounter, 193 mSolverCounterSat, 27 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 41 SdHoareTripleChecker+Valid, 138 SdHoareTripleChecker+Invalid, 310 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 27 IncrementalHoareTripleChecker+Valid, 193 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 90 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-27 12:00:13,465 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [41 Valid, 138 Invalid, 310 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [27 Valid, 193 Invalid, 0 Unknown, 90 Unchecked, 0.3s Time] [2022-04-27 12:00:13,466 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 77 states. [2022-04-27 12:00:13,496 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 77 to 67. [2022-04-27 12:00:13,497 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:00:13,497 INFO L82 GeneralOperation]: Start isEquivalent. First operand 77 states. Second operand has 67 states, 52 states have (on average 1.1538461538461537) internal successors, (60), 52 states have internal predecessors, (60), 9 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 12:00:13,497 INFO L74 IsIncluded]: Start isIncluded. First operand 77 states. Second operand has 67 states, 52 states have (on average 1.1538461538461537) internal successors, (60), 52 states have internal predecessors, (60), 9 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 12:00:13,498 INFO L87 Difference]: Start difference. First operand 77 states. Second operand has 67 states, 52 states have (on average 1.1538461538461537) internal successors, (60), 52 states have internal predecessors, (60), 9 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 12:00:13,503 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:00:13,504 INFO L93 Difference]: Finished difference Result 77 states and 88 transitions. [2022-04-27 12:00:13,504 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 88 transitions. [2022-04-27 12:00:13,504 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:00:13,505 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:00:13,505 INFO L74 IsIncluded]: Start isIncluded. First operand has 67 states, 52 states have (on average 1.1538461538461537) internal successors, (60), 52 states have internal predecessors, (60), 9 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 77 states. [2022-04-27 12:00:13,505 INFO L87 Difference]: Start difference. First operand has 67 states, 52 states have (on average 1.1538461538461537) internal successors, (60), 52 states have internal predecessors, (60), 9 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 77 states. [2022-04-27 12:00:13,508 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:00:13,508 INFO L93 Difference]: Finished difference Result 77 states and 88 transitions. [2022-04-27 12:00:13,508 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 88 transitions. [2022-04-27 12:00:13,509 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:00:13,509 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:00:13,509 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:00:13,509 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:00:13,510 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 67 states, 52 states have (on average 1.1538461538461537) internal successors, (60), 52 states have internal predecessors, (60), 9 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 12:00:13,512 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 67 states to 67 states and 76 transitions. [2022-04-27 12:00:13,512 INFO L78 Accepts]: Start accepts. Automaton has 67 states and 76 transitions. Word has length 29 [2022-04-27 12:00:13,512 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:00:13,513 INFO L495 AbstractCegarLoop]: Abstraction has 67 states and 76 transitions. [2022-04-27 12:00:13,513 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 22 states, 18 states have (on average 1.8333333333333333) internal successors, (33), 19 states have internal predecessors, (33), 6 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-27 12:00:13,513 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 76 transitions. [2022-04-27 12:00:13,514 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-27 12:00:13,514 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:00:13,514 INFO L195 NwaCegarLoop]: trace histogram [4, 3, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:00:13,540 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-27 12:00:13,739 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:00:13,739 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:00:13,740 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:00:13,740 INFO L85 PathProgramCache]: Analyzing trace with hash -1565736524, now seen corresponding path program 1 times [2022-04-27 12:00:13,740 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:00:13,740 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1257940061] [2022-04-27 12:00:13,740 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:00:13,740 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:00:13,762 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:00:13,762 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [302544228] [2022-04-27 12:00:13,763 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:00:13,763 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:00:13,763 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:00:13,764 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:00:13,783 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-27 12:00:13,826 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:00:13,827 INFO L263 TraceCheckSpWp]: Trace formula consists of 141 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-27 12:00:13,848 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:00:13,849 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:00:31,465 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 12:00:41,118 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 12:00:48,964 INFO L272 TraceCheckUtils]: 0: Hoare triple {1752#true} call ULTIMATE.init(); {1752#true} is VALID [2022-04-27 12:00:48,964 INFO L290 TraceCheckUtils]: 1: Hoare triple {1752#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(15, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1752#true} is VALID [2022-04-27 12:00:48,965 INFO L290 TraceCheckUtils]: 2: Hoare triple {1752#true} assume true; {1752#true} is VALID [2022-04-27 12:00:48,965 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1752#true} {1752#true} #62#return; {1752#true} is VALID [2022-04-27 12:00:48,965 INFO L272 TraceCheckUtils]: 4: Hoare triple {1752#true} call #t~ret9 := main(); {1752#true} is VALID [2022-04-27 12:00:48,966 INFO L290 TraceCheckUtils]: 5: Hoare triple {1752#true} havoc ~X~0;havoc ~Y~0;havoc ~x~0;havoc ~y~0;havoc ~v~0;havoc ~xy~0;havoc ~yx~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;~v~0 := 2 * ~Y~0 - ~X~0;~y~0 := 0;~x~0 := 0; {1772#(and (= main_~x~0 0) (<= (+ main_~X~0 main_~v~0) (* main_~Y~0 2)) (= main_~y~0 0))} is VALID [2022-04-27 12:00:48,966 INFO L290 TraceCheckUtils]: 6: Hoare triple {1772#(and (= main_~x~0 0) (<= (+ main_~X~0 main_~v~0) (* main_~Y~0 2)) (= main_~y~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1772#(and (= main_~x~0 0) (<= (+ main_~X~0 main_~v~0) (* main_~Y~0 2)) (= main_~y~0 0))} is VALID [2022-04-27 12:00:48,967 INFO L290 TraceCheckUtils]: 7: Hoare triple {1772#(and (= main_~x~0 0) (<= (+ main_~X~0 main_~v~0) (* main_~Y~0 2)) (= main_~y~0 0))} assume !!(#t~post6 < 10);havoc #t~post6;~yx~0 := ~Y~0 * ~x~0;~xy~0 := ~X~0 * ~y~0; {1779#(and (<= (+ main_~X~0 main_~v~0) (* main_~Y~0 2)) (<= 0 main_~yx~0) (= main_~y~0 0) (<= main_~xy~0 (* main_~X~0 main_~y~0)))} is VALID [2022-04-27 12:00:48,967 INFO L272 TraceCheckUtils]: 8: Hoare triple {1779#(and (<= (+ main_~X~0 main_~v~0) (* main_~Y~0 2)) (<= 0 main_~yx~0) (= main_~y~0 0) (<= main_~xy~0 (* main_~X~0 main_~y~0)))} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 then 1 else 0)); {1752#true} is VALID [2022-04-27 12:00:48,968 INFO L290 TraceCheckUtils]: 9: Hoare triple {1752#true} ~cond := #in~cond; {1786#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:00:48,969 INFO L290 TraceCheckUtils]: 10: Hoare triple {1786#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {1790#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:00:48,969 INFO L290 TraceCheckUtils]: 11: Hoare triple {1790#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1790#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:00:48,970 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {1790#(not (= |__VERIFIER_assert_#in~cond| 0))} {1779#(and (<= (+ main_~X~0 main_~v~0) (* main_~Y~0 2)) (<= 0 main_~yx~0) (= main_~y~0 0) (<= main_~xy~0 (* main_~X~0 main_~y~0)))} #58#return; {1797#(= main_~y~0 0)} is VALID [2022-04-27 12:00:48,971 INFO L290 TraceCheckUtils]: 13: Hoare triple {1797#(= main_~y~0 0)} assume !!(~x~0 <= ~X~0); {1797#(= main_~y~0 0)} is VALID [2022-04-27 12:00:48,971 INFO L290 TraceCheckUtils]: 14: Hoare triple {1797#(= main_~y~0 0)} assume ~v~0 < 0;~v~0 := ~v~0 + 2 * ~Y~0; {1797#(= main_~y~0 0)} is VALID [2022-04-27 12:00:48,971 INFO L290 TraceCheckUtils]: 15: Hoare triple {1797#(= main_~y~0 0)} #t~post8 := ~x~0;~x~0 := 1 + #t~post8;havoc #t~post8; {1797#(= main_~y~0 0)} is VALID [2022-04-27 12:00:48,972 INFO L290 TraceCheckUtils]: 16: Hoare triple {1797#(= main_~y~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1797#(= main_~y~0 0)} is VALID [2022-04-27 12:00:48,972 INFO L290 TraceCheckUtils]: 17: Hoare triple {1797#(= main_~y~0 0)} assume !!(#t~post6 < 10);havoc #t~post6;~yx~0 := ~Y~0 * ~x~0;~xy~0 := ~X~0 * ~y~0; {1797#(= main_~y~0 0)} is VALID [2022-04-27 12:00:48,972 INFO L272 TraceCheckUtils]: 18: Hoare triple {1797#(= main_~y~0 0)} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 then 1 else 0)); {1752#true} is VALID [2022-04-27 12:00:48,973 INFO L290 TraceCheckUtils]: 19: Hoare triple {1752#true} ~cond := #in~cond; {1752#true} is VALID [2022-04-27 12:00:48,973 INFO L290 TraceCheckUtils]: 20: Hoare triple {1752#true} assume !(0 == ~cond); {1752#true} is VALID [2022-04-27 12:00:48,973 INFO L290 TraceCheckUtils]: 21: Hoare triple {1752#true} assume true; {1752#true} is VALID [2022-04-27 12:00:48,974 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {1752#true} {1797#(= main_~y~0 0)} #58#return; {1797#(= main_~y~0 0)} is VALID [2022-04-27 12:00:48,974 INFO L290 TraceCheckUtils]: 23: Hoare triple {1797#(= main_~y~0 0)} assume !!(~x~0 <= ~X~0); {1797#(= main_~y~0 0)} is VALID [2022-04-27 12:00:48,978 INFO L290 TraceCheckUtils]: 24: Hoare triple {1797#(= main_~y~0 0)} assume ~v~0 < 0;~v~0 := ~v~0 + 2 * ~Y~0; {1797#(= main_~y~0 0)} is VALID [2022-04-27 12:00:48,979 INFO L290 TraceCheckUtils]: 25: Hoare triple {1797#(= main_~y~0 0)} #t~post8 := ~x~0;~x~0 := 1 + #t~post8;havoc #t~post8; {1797#(= main_~y~0 0)} is VALID [2022-04-27 12:00:48,980 INFO L290 TraceCheckUtils]: 26: Hoare triple {1797#(= main_~y~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1797#(= main_~y~0 0)} is VALID [2022-04-27 12:00:48,980 INFO L290 TraceCheckUtils]: 27: Hoare triple {1797#(= main_~y~0 0)} assume !!(#t~post6 < 10);havoc #t~post6;~yx~0 := ~Y~0 * ~x~0;~xy~0 := ~X~0 * ~y~0; {1843#(and (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~y~0 0) (= main_~yx~0 (* main_~Y~0 main_~x~0)))} is VALID [2022-04-27 12:00:48,980 INFO L272 TraceCheckUtils]: 28: Hoare triple {1843#(and (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~y~0 0) (= main_~yx~0 (* main_~Y~0 main_~x~0)))} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 then 1 else 0)); {1752#true} is VALID [2022-04-27 12:00:48,981 INFO L290 TraceCheckUtils]: 29: Hoare triple {1752#true} ~cond := #in~cond; {1786#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:00:48,981 INFO L290 TraceCheckUtils]: 30: Hoare triple {1786#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {1790#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:00:48,982 INFO L290 TraceCheckUtils]: 31: Hoare triple {1790#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1790#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:00:48,983 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1790#(not (= |__VERIFIER_assert_#in~cond| 0))} {1843#(and (= (* main_~X~0 main_~y~0) main_~xy~0) (= main_~y~0 0) (= main_~yx~0 (* main_~Y~0 main_~x~0)))} #58#return; {1859#(and (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (= main_~y~0 0))} is VALID [2022-04-27 12:00:48,984 INFO L290 TraceCheckUtils]: 33: Hoare triple {1859#(and (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (= main_~y~0 0))} assume !(~x~0 <= ~X~0); {1859#(and (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (= main_~y~0 0))} is VALID [2022-04-27 12:00:50,986 WARN L290 TraceCheckUtils]: 34: Hoare triple {1859#(and (= (+ (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))) (+ (* (* main_~X~0 main_~y~0) 2) main_~X~0 main_~v~0)) (= main_~y~0 0))} ~xy~0 := ~x~0 * ~y~0;~yx~0 := ~Y~0 * ~x~0; {1866#(and (= main_~y~0 0) (or (and (= (mod (+ (* main_~X~0 main_~y~0 2) main_~X~0 main_~v~0) 2) 0) (= main_~xy~0 0) (= main_~yx~0 0) (= 0 (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)))) (and (= (* main_~y~0 (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0)) main_~xy~0) (= (mod (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0) 0) (= (mod (+ (* main_~X~0 main_~y~0 2) main_~X~0 main_~v~0) 2) 0) (not (= main_~Y~0 0)) (= main_~yx~0 (* main_~Y~0 (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0))))))} is UNKNOWN [2022-04-27 12:00:50,988 INFO L272 TraceCheckUtils]: 35: Hoare triple {1866#(and (= main_~y~0 0) (or (and (= (mod (+ (* main_~X~0 main_~y~0 2) main_~X~0 main_~v~0) 2) 0) (= main_~xy~0 0) (= main_~yx~0 0) (= 0 (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)))) (and (= (* main_~y~0 (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0)) main_~xy~0) (= (mod (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0) 0) (= (mod (+ (* main_~X~0 main_~y~0 2) main_~X~0 main_~v~0) 2) 0) (not (= main_~Y~0 0)) (= main_~yx~0 (* main_~Y~0 (div (+ (* main_~X~0 main_~y~0) (div (+ main_~X~0 main_~v~0) 2) (* (- 1) main_~Y~0)) main_~Y~0))))))} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 + 2 * ~y~0 then 1 else 0)); {1870#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:00:50,989 INFO L290 TraceCheckUtils]: 36: Hoare triple {1870#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1874#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:00:50,989 INFO L290 TraceCheckUtils]: 37: Hoare triple {1874#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1753#false} is VALID [2022-04-27 12:00:50,989 INFO L290 TraceCheckUtils]: 38: Hoare triple {1753#false} assume !false; {1753#false} is VALID [2022-04-27 12:00:50,990 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 10 proven. 11 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2022-04-27 12:00:50,990 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:01:00,271 INFO L290 TraceCheckUtils]: 38: Hoare triple {1753#false} assume !false; {1753#false} is VALID [2022-04-27 12:01:00,272 INFO L290 TraceCheckUtils]: 37: Hoare triple {1874#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1753#false} is VALID [2022-04-27 12:01:00,273 INFO L290 TraceCheckUtils]: 36: Hoare triple {1870#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1874#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:01:00,274 INFO L272 TraceCheckUtils]: 35: Hoare triple {1890#(= (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* 2 main_~xy~0) main_~X~0 main_~v~0))} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 + 2 * ~y~0 then 1 else 0)); {1870#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:01:00,275 INFO L290 TraceCheckUtils]: 34: Hoare triple {1894#(= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} ~xy~0 := ~x~0 * ~y~0;~yx~0 := ~Y~0 * ~x~0; {1890#(= (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* 2 main_~xy~0) main_~X~0 main_~v~0))} is VALID [2022-04-27 12:01:00,275 INFO L290 TraceCheckUtils]: 33: Hoare triple {1894#(= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} assume !(~x~0 <= ~X~0); {1894#(= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} is VALID [2022-04-27 12:01:00,276 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1790#(not (= |__VERIFIER_assert_#in~cond| 0))} {1901#(= (+ (* 2 (* main_~y~0 main_~x~0)) (* (- 2) main_~xy~0) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} #58#return; {1894#(= (+ (* 2 (* main_~y~0 main_~x~0)) main_~X~0 main_~v~0) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} is VALID [2022-04-27 12:01:00,276 INFO L290 TraceCheckUtils]: 31: Hoare triple {1790#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1790#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:01:00,277 INFO L290 TraceCheckUtils]: 30: Hoare triple {1911#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {1790#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:01:00,277 INFO L290 TraceCheckUtils]: 29: Hoare triple {1752#true} ~cond := #in~cond; {1911#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 12:01:00,277 INFO L272 TraceCheckUtils]: 28: Hoare triple {1901#(= (+ (* 2 (* main_~y~0 main_~x~0)) (* (- 2) main_~xy~0) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 then 1 else 0)); {1752#true} is VALID [2022-04-27 12:01:00,278 INFO L290 TraceCheckUtils]: 27: Hoare triple {1797#(= main_~y~0 0)} assume !!(#t~post6 < 10);havoc #t~post6;~yx~0 := ~Y~0 * ~x~0;~xy~0 := ~X~0 * ~y~0; {1901#(= (+ (* 2 (* main_~y~0 main_~x~0)) (* (- 2) main_~xy~0) (* main_~Y~0 2) (* 2 main_~yx~0)) (+ (* main_~y~0 2) (* main_~Y~0 2) (* 2 (* main_~Y~0 main_~x~0))))} is VALID [2022-04-27 12:01:00,278 INFO L290 TraceCheckUtils]: 26: Hoare triple {1797#(= main_~y~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1797#(= main_~y~0 0)} is VALID [2022-04-27 12:01:00,278 INFO L290 TraceCheckUtils]: 25: Hoare triple {1797#(= main_~y~0 0)} #t~post8 := ~x~0;~x~0 := 1 + #t~post8;havoc #t~post8; {1797#(= main_~y~0 0)} is VALID [2022-04-27 12:01:00,279 INFO L290 TraceCheckUtils]: 24: Hoare triple {1797#(= main_~y~0 0)} assume ~v~0 < 0;~v~0 := ~v~0 + 2 * ~Y~0; {1797#(= main_~y~0 0)} is VALID [2022-04-27 12:01:00,279 INFO L290 TraceCheckUtils]: 23: Hoare triple {1797#(= main_~y~0 0)} assume !!(~x~0 <= ~X~0); {1797#(= main_~y~0 0)} is VALID [2022-04-27 12:01:00,280 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {1752#true} {1797#(= main_~y~0 0)} #58#return; {1797#(= main_~y~0 0)} is VALID [2022-04-27 12:01:00,280 INFO L290 TraceCheckUtils]: 21: Hoare triple {1752#true} assume true; {1752#true} is VALID [2022-04-27 12:01:00,280 INFO L290 TraceCheckUtils]: 20: Hoare triple {1752#true} assume !(0 == ~cond); {1752#true} is VALID [2022-04-27 12:01:00,281 INFO L290 TraceCheckUtils]: 19: Hoare triple {1752#true} ~cond := #in~cond; {1752#true} is VALID [2022-04-27 12:01:00,281 INFO L272 TraceCheckUtils]: 18: Hoare triple {1797#(= main_~y~0 0)} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 then 1 else 0)); {1752#true} is VALID [2022-04-27 12:01:00,281 INFO L290 TraceCheckUtils]: 17: Hoare triple {1797#(= main_~y~0 0)} assume !!(#t~post6 < 10);havoc #t~post6;~yx~0 := ~Y~0 * ~x~0;~xy~0 := ~X~0 * ~y~0; {1797#(= main_~y~0 0)} is VALID [2022-04-27 12:01:00,282 INFO L290 TraceCheckUtils]: 16: Hoare triple {1797#(= main_~y~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1797#(= main_~y~0 0)} is VALID [2022-04-27 12:01:00,282 INFO L290 TraceCheckUtils]: 15: Hoare triple {1797#(= main_~y~0 0)} #t~post8 := ~x~0;~x~0 := 1 + #t~post8;havoc #t~post8; {1797#(= main_~y~0 0)} is VALID [2022-04-27 12:01:00,282 INFO L290 TraceCheckUtils]: 14: Hoare triple {1797#(= main_~y~0 0)} assume ~v~0 < 0;~v~0 := ~v~0 + 2 * ~Y~0; {1797#(= main_~y~0 0)} is VALID [2022-04-27 12:01:00,283 INFO L290 TraceCheckUtils]: 13: Hoare triple {1797#(= main_~y~0 0)} assume !!(~x~0 <= ~X~0); {1797#(= main_~y~0 0)} is VALID [2022-04-27 12:01:00,284 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {1790#(not (= |__VERIFIER_assert_#in~cond| 0))} {1963#(or (not (= (+ (* 2 main_~xy~0) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 main_~yx~0)))) (= main_~y~0 0))} #58#return; {1797#(= main_~y~0 0)} is VALID [2022-04-27 12:01:00,284 INFO L290 TraceCheckUtils]: 11: Hoare triple {1790#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1790#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:01:00,285 INFO L290 TraceCheckUtils]: 10: Hoare triple {1911#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {1790#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:01:00,285 INFO L290 TraceCheckUtils]: 9: Hoare triple {1752#true} ~cond := #in~cond; {1911#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 12:01:00,285 INFO L272 TraceCheckUtils]: 8: Hoare triple {1963#(or (not (= (+ (* 2 main_~xy~0) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 main_~yx~0)))) (= main_~y~0 0))} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 then 1 else 0)); {1752#true} is VALID [2022-04-27 12:01:00,287 INFO L290 TraceCheckUtils]: 7: Hoare triple {1979#(or (not (= (mod (+ main_~X~0 main_~v~0) 2) 0)) (= main_~y~0 0) (< (* main_~X~0 main_~y~0) (+ main_~Y~0 (div (+ (* (- 1) main_~X~0) (* (- 1) main_~v~0)) 2) (* main_~Y~0 main_~x~0))))} assume !!(#t~post6 < 10);havoc #t~post6;~yx~0 := ~Y~0 * ~x~0;~xy~0 := ~X~0 * ~y~0; {1963#(or (not (= (+ (* 2 main_~xy~0) main_~X~0 main_~v~0) (+ (* main_~Y~0 2) (* 2 main_~yx~0)))) (= main_~y~0 0))} is VALID [2022-04-27 12:01:00,287 INFO L290 TraceCheckUtils]: 6: Hoare triple {1979#(or (not (= (mod (+ main_~X~0 main_~v~0) 2) 0)) (= main_~y~0 0) (< (* main_~X~0 main_~y~0) (+ main_~Y~0 (div (+ (* (- 1) main_~X~0) (* (- 1) main_~v~0)) 2) (* main_~Y~0 main_~x~0))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1979#(or (not (= (mod (+ main_~X~0 main_~v~0) 2) 0)) (= main_~y~0 0) (< (* main_~X~0 main_~y~0) (+ main_~Y~0 (div (+ (* (- 1) main_~X~0) (* (- 1) main_~v~0)) 2) (* main_~Y~0 main_~x~0))))} is VALID [2022-04-27 12:01:00,288 INFO L290 TraceCheckUtils]: 5: Hoare triple {1752#true} havoc ~X~0;havoc ~Y~0;havoc ~x~0;havoc ~y~0;havoc ~v~0;havoc ~xy~0;havoc ~yx~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;~v~0 := 2 * ~Y~0 - ~X~0;~y~0 := 0;~x~0 := 0; {1979#(or (not (= (mod (+ main_~X~0 main_~v~0) 2) 0)) (= main_~y~0 0) (< (* main_~X~0 main_~y~0) (+ main_~Y~0 (div (+ (* (- 1) main_~X~0) (* (- 1) main_~v~0)) 2) (* main_~Y~0 main_~x~0))))} is VALID [2022-04-27 12:01:00,288 INFO L272 TraceCheckUtils]: 4: Hoare triple {1752#true} call #t~ret9 := main(); {1752#true} is VALID [2022-04-27 12:01:00,288 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1752#true} {1752#true} #62#return; {1752#true} is VALID [2022-04-27 12:01:00,288 INFO L290 TraceCheckUtils]: 2: Hoare triple {1752#true} assume true; {1752#true} is VALID [2022-04-27 12:01:00,289 INFO L290 TraceCheckUtils]: 1: Hoare triple {1752#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(15, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1752#true} is VALID [2022-04-27 12:01:00,289 INFO L272 TraceCheckUtils]: 0: Hoare triple {1752#true} call ULTIMATE.init(); {1752#true} is VALID [2022-04-27 12:01:00,289 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 12 proven. 9 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2022-04-27 12:01:00,289 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:01:00,289 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1257940061] [2022-04-27 12:01:00,289 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:01:00,289 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [302544228] [2022-04-27 12:01:00,290 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [302544228] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 12:01:00,290 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 12:01:00,290 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 18 [2022-04-27 12:01:00,290 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1332327009] [2022-04-27 12:01:00,290 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 12:01:00,291 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 12 states have (on average 2.5) internal successors, (30), 17 states have internal predecessors, (30), 8 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) Word has length 39 [2022-04-27 12:01:00,292 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:01:00,292 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 18 states, 12 states have (on average 2.5) internal successors, (30), 17 states have internal predecessors, (30), 8 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-27 12:01:02,328 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 44 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-27 12:01:02,328 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-04-27 12:01:02,328 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:01:02,328 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-04-27 12:01:02,329 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=58, Invalid=248, Unknown=0, NotChecked=0, Total=306 [2022-04-27 12:01:02,329 INFO L87 Difference]: Start difference. First operand 67 states and 76 transitions. Second operand has 18 states, 12 states have (on average 2.5) internal successors, (30), 17 states have internal predecessors, (30), 8 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-27 12:01:04,804 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 12:01:08,860 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 12:01:10,889 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 12:01:13,239 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:01:13,239 INFO L93 Difference]: Finished difference Result 96 states and 113 transitions. [2022-04-27 12:01:13,240 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-27 12:01:13,240 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 12 states have (on average 2.5) internal successors, (30), 17 states have internal predecessors, (30), 8 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) Word has length 39 [2022-04-27 12:01:13,240 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:01:13,240 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 12 states have (on average 2.5) internal successors, (30), 17 states have internal predecessors, (30), 8 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-27 12:01:13,242 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 49 transitions. [2022-04-27 12:01:13,242 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 12 states have (on average 2.5) internal successors, (30), 17 states have internal predecessors, (30), 8 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-27 12:01:13,244 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 49 transitions. [2022-04-27 12:01:13,244 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 49 transitions. [2022-04-27 12:01:15,292 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 48 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-27 12:01:15,294 INFO L225 Difference]: With dead ends: 96 [2022-04-27 12:01:15,317 INFO L226 Difference]: Without dead ends: 90 [2022-04-27 12:01:15,318 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 83 GetRequests, 59 SyntacticMatches, 2 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 89 ImplicationChecksByTransitivity, 4.6s TimeCoverageRelationStatistics Valid=117, Invalid=433, Unknown=2, NotChecked=0, Total=552 [2022-04-27 12:01:15,319 INFO L413 NwaCegarLoop]: 12 mSDtfsCounter, 34 mSDsluCounter, 111 mSDsCounter, 0 mSdLazyCounter, 182 mSolverCounterSat, 18 mSolverCounterUnsat, 3 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 6.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 35 SdHoareTripleChecker+Valid, 123 SdHoareTripleChecker+Invalid, 203 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 182 IncrementalHoareTripleChecker+Invalid, 3 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 6.2s IncrementalHoareTripleChecker+Time [2022-04-27 12:01:15,319 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [35 Valid, 123 Invalid, 203 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 182 Invalid, 3 Unknown, 0 Unchecked, 6.2s Time] [2022-04-27 12:01:15,319 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 90 states. [2022-04-27 12:01:15,350 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 90 to 88. [2022-04-27 12:01:15,350 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:01:15,351 INFO L82 GeneralOperation]: Start isEquivalent. First operand 90 states. Second operand has 88 states, 70 states have (on average 1.1714285714285715) internal successors, (82), 70 states have internal predecessors, (82), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:01:15,351 INFO L74 IsIncluded]: Start isIncluded. First operand 90 states. Second operand has 88 states, 70 states have (on average 1.1714285714285715) internal successors, (82), 70 states have internal predecessors, (82), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:01:15,351 INFO L87 Difference]: Start difference. First operand 90 states. Second operand has 88 states, 70 states have (on average 1.1714285714285715) internal successors, (82), 70 states have internal predecessors, (82), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:01:15,355 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:01:15,355 INFO L93 Difference]: Finished difference Result 90 states and 106 transitions. [2022-04-27 12:01:15,355 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 106 transitions. [2022-04-27 12:01:15,355 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:01:15,355 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:01:15,356 INFO L74 IsIncluded]: Start isIncluded. First operand has 88 states, 70 states have (on average 1.1714285714285715) internal successors, (82), 70 states have internal predecessors, (82), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 90 states. [2022-04-27 12:01:15,356 INFO L87 Difference]: Start difference. First operand has 88 states, 70 states have (on average 1.1714285714285715) internal successors, (82), 70 states have internal predecessors, (82), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 90 states. [2022-04-27 12:01:15,359 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:01:15,360 INFO L93 Difference]: Finished difference Result 90 states and 106 transitions. [2022-04-27 12:01:15,360 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 106 transitions. [2022-04-27 12:01:15,360 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:01:15,360 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:01:15,360 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:01:15,360 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:01:15,361 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 88 states, 70 states have (on average 1.1714285714285715) internal successors, (82), 70 states have internal predecessors, (82), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:01:15,363 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 104 transitions. [2022-04-27 12:01:15,364 INFO L78 Accepts]: Start accepts. Automaton has 88 states and 104 transitions. Word has length 39 [2022-04-27 12:01:15,364 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:01:15,364 INFO L495 AbstractCegarLoop]: Abstraction has 88 states and 104 transitions. [2022-04-27 12:01:15,364 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 12 states have (on average 2.5) internal successors, (30), 17 states have internal predecessors, (30), 8 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-27 12:01:15,364 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 104 transitions. [2022-04-27 12:01:15,365 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-27 12:01:15,365 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:01:15,365 INFO L195 NwaCegarLoop]: trace histogram [4, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:01:15,399 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-27 12:01:15,587 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:01:15,588 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:01:15,588 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:01:15,588 INFO L85 PathProgramCache]: Analyzing trace with hash -1425187914, now seen corresponding path program 1 times [2022-04-27 12:01:15,588 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:01:15,588 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1968622037] [2022-04-27 12:01:15,589 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:01:15,589 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:01:15,606 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:01:15,606 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [493424255] [2022-04-27 12:01:15,607 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:01:15,607 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:01:15,607 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:01:15,610 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:01:15,611 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-27 12:01:15,651 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:01:15,653 INFO L263 TraceCheckSpWp]: Trace formula consists of 143 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 12:01:15,664 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:01:15,666 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:01:16,835 INFO L272 TraceCheckUtils]: 0: Hoare triple {2444#true} call ULTIMATE.init(); {2444#true} is VALID [2022-04-27 12:01:16,836 INFO L290 TraceCheckUtils]: 1: Hoare triple {2444#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(15, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2444#true} is VALID [2022-04-27 12:01:16,839 INFO L290 TraceCheckUtils]: 2: Hoare triple {2444#true} assume true; {2444#true} is VALID [2022-04-27 12:01:16,839 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2444#true} {2444#true} #62#return; {2444#true} is VALID [2022-04-27 12:01:16,839 INFO L272 TraceCheckUtils]: 4: Hoare triple {2444#true} call #t~ret9 := main(); {2444#true} is VALID [2022-04-27 12:01:16,840 INFO L290 TraceCheckUtils]: 5: Hoare triple {2444#true} havoc ~X~0;havoc ~Y~0;havoc ~x~0;havoc ~y~0;havoc ~v~0;havoc ~xy~0;havoc ~yx~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;~v~0 := 2 * ~Y~0 - ~X~0;~y~0 := 0;~x~0 := 0; {2464#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-27 12:01:16,841 INFO L290 TraceCheckUtils]: 6: Hoare triple {2464#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2464#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-27 12:01:16,841 INFO L290 TraceCheckUtils]: 7: Hoare triple {2464#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} assume !!(#t~post6 < 10);havoc #t~post6;~yx~0 := ~Y~0 * ~x~0;~xy~0 := ~X~0 * ~y~0; {2464#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-27 12:01:16,841 INFO L272 TraceCheckUtils]: 8: Hoare triple {2464#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 then 1 else 0)); {2444#true} is VALID [2022-04-27 12:01:16,841 INFO L290 TraceCheckUtils]: 9: Hoare triple {2444#true} ~cond := #in~cond; {2444#true} is VALID [2022-04-27 12:01:16,842 INFO L290 TraceCheckUtils]: 10: Hoare triple {2444#true} assume !(0 == ~cond); {2444#true} is VALID [2022-04-27 12:01:16,842 INFO L290 TraceCheckUtils]: 11: Hoare triple {2444#true} assume true; {2444#true} is VALID [2022-04-27 12:01:16,842 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {2444#true} {2464#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} #58#return; {2464#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-27 12:01:16,843 INFO L290 TraceCheckUtils]: 13: Hoare triple {2464#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} assume !!(~x~0 <= ~X~0); {2464#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} is VALID [2022-04-27 12:01:16,844 INFO L290 TraceCheckUtils]: 14: Hoare triple {2464#(and (<= main_~x~0 0) (= (+ (* (- 1) main_~X~0) (* main_~Y~0 2)) main_~v~0))} assume !(~v~0 < 0);~v~0 := ~v~0 + 2 * (~Y~0 - ~X~0);#t~post7 := ~y~0;~y~0 := 1 + #t~post7;havoc #t~post7; {2492#(and (<= main_~x~0 0) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} is VALID [2022-04-27 12:01:16,845 INFO L290 TraceCheckUtils]: 15: Hoare triple {2492#(and (<= main_~x~0 0) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} #t~post8 := ~x~0;~x~0 := 1 + #t~post8;havoc #t~post8; {2496#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} is VALID [2022-04-27 12:01:16,846 INFO L290 TraceCheckUtils]: 16: Hoare triple {2496#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2496#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} is VALID [2022-04-27 12:01:16,846 INFO L290 TraceCheckUtils]: 17: Hoare triple {2496#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} assume !!(#t~post6 < 10);havoc #t~post6;~yx~0 := ~Y~0 * ~x~0;~xy~0 := ~X~0 * ~y~0; {2496#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} is VALID [2022-04-27 12:01:16,846 INFO L272 TraceCheckUtils]: 18: Hoare triple {2496#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 then 1 else 0)); {2444#true} is VALID [2022-04-27 12:01:16,846 INFO L290 TraceCheckUtils]: 19: Hoare triple {2444#true} ~cond := #in~cond; {2444#true} is VALID [2022-04-27 12:01:16,846 INFO L290 TraceCheckUtils]: 20: Hoare triple {2444#true} assume !(0 == ~cond); {2444#true} is VALID [2022-04-27 12:01:16,847 INFO L290 TraceCheckUtils]: 21: Hoare triple {2444#true} assume true; {2444#true} is VALID [2022-04-27 12:01:16,847 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {2444#true} {2496#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} #58#return; {2496#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} is VALID [2022-04-27 12:01:16,848 INFO L290 TraceCheckUtils]: 23: Hoare triple {2496#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} assume !!(~x~0 <= ~X~0); {2496#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} is VALID [2022-04-27 12:01:16,849 INFO L290 TraceCheckUtils]: 24: Hoare triple {2496#(and (<= main_~x~0 1) (<= (+ (div (+ (- 1) main_~X~0) 2) 1) (div (+ main_~v~0 (* main_~X~0 3)) 4)))} assume ~v~0 < 0;~v~0 := ~v~0 + 2 * ~Y~0; {2524#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 1))} is VALID [2022-04-27 12:01:16,851 INFO L290 TraceCheckUtils]: 25: Hoare triple {2524#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 1))} #t~post8 := ~x~0;~x~0 := 1 + #t~post8;havoc #t~post8; {2528#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} is VALID [2022-04-27 12:01:16,852 INFO L290 TraceCheckUtils]: 26: Hoare triple {2528#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2528#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} is VALID [2022-04-27 12:01:16,852 INFO L290 TraceCheckUtils]: 27: Hoare triple {2528#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} assume !!(#t~post6 < 10);havoc #t~post6;~yx~0 := ~Y~0 * ~x~0;~xy~0 := ~X~0 * ~y~0; {2528#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} is VALID [2022-04-27 12:01:16,852 INFO L272 TraceCheckUtils]: 28: Hoare triple {2528#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 then 1 else 0)); {2444#true} is VALID [2022-04-27 12:01:16,853 INFO L290 TraceCheckUtils]: 29: Hoare triple {2444#true} ~cond := #in~cond; {2444#true} is VALID [2022-04-27 12:01:16,853 INFO L290 TraceCheckUtils]: 30: Hoare triple {2444#true} assume !(0 == ~cond); {2444#true} is VALID [2022-04-27 12:01:16,854 INFO L290 TraceCheckUtils]: 31: Hoare triple {2444#true} assume true; {2444#true} is VALID [2022-04-27 12:01:16,854 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2444#true} {2528#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} #58#return; {2528#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} is VALID [2022-04-27 12:01:16,855 INFO L290 TraceCheckUtils]: 33: Hoare triple {2528#(and (< (div (+ (- 1) main_~X~0) 2) (div (+ (- 1) (* main_~X~0 3)) 4)) (<= main_~x~0 2))} assume !(~x~0 <= ~X~0); {2445#false} is VALID [2022-04-27 12:01:16,855 INFO L290 TraceCheckUtils]: 34: Hoare triple {2445#false} ~xy~0 := ~x~0 * ~y~0;~yx~0 := ~Y~0 * ~x~0; {2445#false} is VALID [2022-04-27 12:01:16,856 INFO L272 TraceCheckUtils]: 35: Hoare triple {2445#false} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 + 2 * ~y~0 then 1 else 0)); {2445#false} is VALID [2022-04-27 12:01:16,856 INFO L290 TraceCheckUtils]: 36: Hoare triple {2445#false} ~cond := #in~cond; {2445#false} is VALID [2022-04-27 12:01:16,856 INFO L290 TraceCheckUtils]: 37: Hoare triple {2445#false} assume 0 == ~cond; {2445#false} is VALID [2022-04-27 12:01:16,856 INFO L290 TraceCheckUtils]: 38: Hoare triple {2445#false} assume !false; {2445#false} is VALID [2022-04-27 12:01:16,858 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 6 proven. 14 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-27 12:01:16,858 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:01:17,310 INFO L290 TraceCheckUtils]: 38: Hoare triple {2445#false} assume !false; {2445#false} is VALID [2022-04-27 12:01:17,310 INFO L290 TraceCheckUtils]: 37: Hoare triple {2445#false} assume 0 == ~cond; {2445#false} is VALID [2022-04-27 12:01:17,310 INFO L290 TraceCheckUtils]: 36: Hoare triple {2445#false} ~cond := #in~cond; {2445#false} is VALID [2022-04-27 12:01:17,311 INFO L272 TraceCheckUtils]: 35: Hoare triple {2445#false} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 + 2 * ~y~0 then 1 else 0)); {2445#false} is VALID [2022-04-27 12:01:17,311 INFO L290 TraceCheckUtils]: 34: Hoare triple {2445#false} ~xy~0 := ~x~0 * ~y~0;~yx~0 := ~Y~0 * ~x~0; {2445#false} is VALID [2022-04-27 12:01:17,311 INFO L290 TraceCheckUtils]: 33: Hoare triple {2583#(<= main_~x~0 main_~X~0)} assume !(~x~0 <= ~X~0); {2445#false} is VALID [2022-04-27 12:01:17,312 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2444#true} {2583#(<= main_~x~0 main_~X~0)} #58#return; {2583#(<= main_~x~0 main_~X~0)} is VALID [2022-04-27 12:01:17,312 INFO L290 TraceCheckUtils]: 31: Hoare triple {2444#true} assume true; {2444#true} is VALID [2022-04-27 12:01:17,312 INFO L290 TraceCheckUtils]: 30: Hoare triple {2444#true} assume !(0 == ~cond); {2444#true} is VALID [2022-04-27 12:01:17,312 INFO L290 TraceCheckUtils]: 29: Hoare triple {2444#true} ~cond := #in~cond; {2444#true} is VALID [2022-04-27 12:01:17,312 INFO L272 TraceCheckUtils]: 28: Hoare triple {2583#(<= main_~x~0 main_~X~0)} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 then 1 else 0)); {2444#true} is VALID [2022-04-27 12:01:17,312 INFO L290 TraceCheckUtils]: 27: Hoare triple {2583#(<= main_~x~0 main_~X~0)} assume !!(#t~post6 < 10);havoc #t~post6;~yx~0 := ~Y~0 * ~x~0;~xy~0 := ~X~0 * ~y~0; {2583#(<= main_~x~0 main_~X~0)} is VALID [2022-04-27 12:01:17,313 INFO L290 TraceCheckUtils]: 26: Hoare triple {2583#(<= main_~x~0 main_~X~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2583#(<= main_~x~0 main_~X~0)} is VALID [2022-04-27 12:01:17,314 INFO L290 TraceCheckUtils]: 25: Hoare triple {2608#(<= (+ main_~x~0 1) main_~X~0)} #t~post8 := ~x~0;~x~0 := 1 + #t~post8;havoc #t~post8; {2583#(<= main_~x~0 main_~X~0)} is VALID [2022-04-27 12:01:17,314 INFO L290 TraceCheckUtils]: 24: Hoare triple {2612#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} assume ~v~0 < 0;~v~0 := ~v~0 + 2 * ~Y~0; {2608#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-27 12:01:17,315 INFO L290 TraceCheckUtils]: 23: Hoare triple {2612#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} assume !!(~x~0 <= ~X~0); {2612#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-27 12:01:17,316 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {2444#true} {2612#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} #58#return; {2612#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-27 12:01:17,316 INFO L290 TraceCheckUtils]: 21: Hoare triple {2444#true} assume true; {2444#true} is VALID [2022-04-27 12:01:17,316 INFO L290 TraceCheckUtils]: 20: Hoare triple {2444#true} assume !(0 == ~cond); {2444#true} is VALID [2022-04-27 12:01:17,316 INFO L290 TraceCheckUtils]: 19: Hoare triple {2444#true} ~cond := #in~cond; {2444#true} is VALID [2022-04-27 12:01:17,316 INFO L272 TraceCheckUtils]: 18: Hoare triple {2612#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 then 1 else 0)); {2444#true} is VALID [2022-04-27 12:01:17,317 INFO L290 TraceCheckUtils]: 17: Hoare triple {2612#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} assume !!(#t~post6 < 10);havoc #t~post6;~yx~0 := ~Y~0 * ~x~0;~xy~0 := ~X~0 * ~y~0; {2612#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-27 12:01:17,317 INFO L290 TraceCheckUtils]: 16: Hoare triple {2612#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2612#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-27 12:01:17,318 INFO L290 TraceCheckUtils]: 15: Hoare triple {2640#(or (<= (+ main_~x~0 2) main_~X~0) (not (< main_~v~0 0)))} #t~post8 := ~x~0;~x~0 := 1 + #t~post8;havoc #t~post8; {2612#(or (not (< main_~v~0 0)) (<= (+ main_~x~0 1) main_~X~0))} is VALID [2022-04-27 12:01:17,319 INFO L290 TraceCheckUtils]: 14: Hoare triple {2644#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} assume !(~v~0 < 0);~v~0 := ~v~0 + 2 * (~Y~0 - ~X~0);#t~post7 := ~y~0;~y~0 := 1 + #t~post7;havoc #t~post7; {2640#(or (<= (+ main_~x~0 2) main_~X~0) (not (< main_~v~0 0)))} is VALID [2022-04-27 12:01:17,320 INFO L290 TraceCheckUtils]: 13: Hoare triple {2644#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} assume !!(~x~0 <= ~X~0); {2644#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} is VALID [2022-04-27 12:01:17,320 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {2444#true} {2644#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} #58#return; {2644#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} is VALID [2022-04-27 12:01:17,321 INFO L290 TraceCheckUtils]: 11: Hoare triple {2444#true} assume true; {2444#true} is VALID [2022-04-27 12:01:17,321 INFO L290 TraceCheckUtils]: 10: Hoare triple {2444#true} assume !(0 == ~cond); {2444#true} is VALID [2022-04-27 12:01:17,321 INFO L290 TraceCheckUtils]: 9: Hoare triple {2444#true} ~cond := #in~cond; {2444#true} is VALID [2022-04-27 12:01:17,321 INFO L272 TraceCheckUtils]: 8: Hoare triple {2644#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 then 1 else 0)); {2444#true} is VALID [2022-04-27 12:01:17,322 INFO L290 TraceCheckUtils]: 7: Hoare triple {2644#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} assume !!(#t~post6 < 10);havoc #t~post6;~yx~0 := ~Y~0 * ~x~0;~xy~0 := ~X~0 * ~y~0; {2644#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} is VALID [2022-04-27 12:01:17,322 INFO L290 TraceCheckUtils]: 6: Hoare triple {2644#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2644#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} is VALID [2022-04-27 12:01:17,323 INFO L290 TraceCheckUtils]: 5: Hoare triple {2444#true} havoc ~X~0;havoc ~Y~0;havoc ~x~0;havoc ~y~0;havoc ~v~0;havoc ~xy~0;havoc ~yx~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;~v~0 := 2 * ~Y~0 - ~X~0;~y~0 := 0;~x~0 := 0; {2644#(or (<= (+ main_~x~0 2) main_~X~0) (<= (* main_~X~0 2) (+ main_~v~0 (* main_~Y~0 2))) (< main_~v~0 0))} is VALID [2022-04-27 12:01:17,323 INFO L272 TraceCheckUtils]: 4: Hoare triple {2444#true} call #t~ret9 := main(); {2444#true} is VALID [2022-04-27 12:01:17,323 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2444#true} {2444#true} #62#return; {2444#true} is VALID [2022-04-27 12:01:17,324 INFO L290 TraceCheckUtils]: 2: Hoare triple {2444#true} assume true; {2444#true} is VALID [2022-04-27 12:01:17,324 INFO L290 TraceCheckUtils]: 1: Hoare triple {2444#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(15, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2444#true} is VALID [2022-04-27 12:01:17,324 INFO L272 TraceCheckUtils]: 0: Hoare triple {2444#true} call ULTIMATE.init(); {2444#true} is VALID [2022-04-27 12:01:17,324 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 6 proven. 14 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-27 12:01:17,324 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:01:17,324 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1968622037] [2022-04-27 12:01:17,324 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:01:17,324 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [493424255] [2022-04-27 12:01:17,325 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [493424255] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 12:01:17,325 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 12:01:17,325 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-27 12:01:17,325 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1030524243] [2022-04-27 12:01:17,325 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 12:01:17,326 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.0833333333333335) internal successors, (37), 12 states have internal predecessors, (37), 8 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Word has length 39 [2022-04-27 12:01:17,326 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:01:17,326 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 3.0833333333333335) internal successors, (37), 12 states have internal predecessors, (37), 8 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 12:01:17,370 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:01:17,370 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-27 12:01:17,370 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:01:17,371 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-27 12:01:17,371 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=34, Invalid=98, Unknown=0, NotChecked=0, Total=132 [2022-04-27 12:01:17,371 INFO L87 Difference]: Start difference. First operand 88 states and 104 transitions. Second operand has 12 states, 12 states have (on average 3.0833333333333335) internal successors, (37), 12 states have internal predecessors, (37), 8 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 12:01:17,733 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:01:17,734 INFO L93 Difference]: Finished difference Result 97 states and 113 transitions. [2022-04-27 12:01:17,734 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 12:01:17,734 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.0833333333333335) internal successors, (37), 12 states have internal predecessors, (37), 8 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Word has length 39 [2022-04-27 12:01:17,734 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:01:17,734 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 3.0833333333333335) internal successors, (37), 12 states have internal predecessors, (37), 8 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 12:01:17,736 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 54 transitions. [2022-04-27 12:01:17,736 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 3.0833333333333335) internal successors, (37), 12 states have internal predecessors, (37), 8 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 12:01:17,738 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 54 transitions. [2022-04-27 12:01:17,738 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 54 transitions. [2022-04-27 12:01:17,795 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:01:17,797 INFO L225 Difference]: With dead ends: 97 [2022-04-27 12:01:17,797 INFO L226 Difference]: Without dead ends: 91 [2022-04-27 12:01:17,798 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 81 GetRequests, 67 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 27 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=59, Invalid=181, Unknown=0, NotChecked=0, Total=240 [2022-04-27 12:01:17,802 INFO L413 NwaCegarLoop]: 26 mSDtfsCounter, 5 mSDsluCounter, 45 mSDsCounter, 0 mSdLazyCounter, 89 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 5 SdHoareTripleChecker+Valid, 71 SdHoareTripleChecker+Invalid, 102 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 89 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 12:01:17,803 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [5 Valid, 71 Invalid, 102 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 89 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 12:01:17,804 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 91 states. [2022-04-27 12:01:17,847 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 91 to 83. [2022-04-27 12:01:17,848 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:01:17,849 INFO L82 GeneralOperation]: Start isEquivalent. First operand 91 states. Second operand has 83 states, 66 states have (on average 1.1666666666666667) internal successors, (77), 66 states have internal predecessors, (77), 11 states have call successors, (11), 7 states have call predecessors, (11), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 12:01:17,850 INFO L74 IsIncluded]: Start isIncluded. First operand 91 states. Second operand has 83 states, 66 states have (on average 1.1666666666666667) internal successors, (77), 66 states have internal predecessors, (77), 11 states have call successors, (11), 7 states have call predecessors, (11), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 12:01:17,851 INFO L87 Difference]: Start difference. First operand 91 states. Second operand has 83 states, 66 states have (on average 1.1666666666666667) internal successors, (77), 66 states have internal predecessors, (77), 11 states have call successors, (11), 7 states have call predecessors, (11), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 12:01:17,854 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:01:17,854 INFO L93 Difference]: Finished difference Result 91 states and 107 transitions. [2022-04-27 12:01:17,854 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 107 transitions. [2022-04-27 12:01:17,855 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:01:17,855 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:01:17,855 INFO L74 IsIncluded]: Start isIncluded. First operand has 83 states, 66 states have (on average 1.1666666666666667) internal successors, (77), 66 states have internal predecessors, (77), 11 states have call successors, (11), 7 states have call predecessors, (11), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 91 states. [2022-04-27 12:01:17,856 INFO L87 Difference]: Start difference. First operand has 83 states, 66 states have (on average 1.1666666666666667) internal successors, (77), 66 states have internal predecessors, (77), 11 states have call successors, (11), 7 states have call predecessors, (11), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 91 states. [2022-04-27 12:01:17,858 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:01:17,859 INFO L93 Difference]: Finished difference Result 91 states and 107 transitions. [2022-04-27 12:01:17,859 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 107 transitions. [2022-04-27 12:01:17,859 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:01:17,859 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:01:17,859 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:01:17,859 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:01:17,860 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 83 states, 66 states have (on average 1.1666666666666667) internal successors, (77), 66 states have internal predecessors, (77), 11 states have call successors, (11), 7 states have call predecessors, (11), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 12:01:17,863 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 83 states to 83 states and 97 transitions. [2022-04-27 12:01:17,863 INFO L78 Accepts]: Start accepts. Automaton has 83 states and 97 transitions. Word has length 39 [2022-04-27 12:01:17,863 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:01:17,863 INFO L495 AbstractCegarLoop]: Abstraction has 83 states and 97 transitions. [2022-04-27 12:01:17,864 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 3.0833333333333335) internal successors, (37), 12 states have internal predecessors, (37), 8 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 12:01:17,864 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 97 transitions. [2022-04-27 12:01:17,866 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-04-27 12:01:17,867 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:01:17,867 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 4, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:01:17,895 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-27 12:01:18,091 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:01:18,092 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:01:18,092 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:01:18,092 INFO L85 PathProgramCache]: Analyzing trace with hash 736401910, now seen corresponding path program 2 times [2022-04-27 12:01:18,092 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:01:18,092 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1156533911] [2022-04-27 12:01:18,093 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:01:18,093 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:01:18,118 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:01:18,119 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1917062394] [2022-04-27 12:01:18,119 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 12:01:18,119 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:01:18,119 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:01:18,120 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:01:18,121 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-27 12:01:18,174 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 12:01:18,174 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 12:01:18,175 INFO L263 TraceCheckSpWp]: Trace formula consists of 167 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 12:01:18,188 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:01:18,189 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:01:19,261 INFO L272 TraceCheckUtils]: 0: Hoare triple {3121#true} call ULTIMATE.init(); {3121#true} is VALID [2022-04-27 12:01:19,262 INFO L290 TraceCheckUtils]: 1: Hoare triple {3121#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(15, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3121#true} is VALID [2022-04-27 12:01:19,262 INFO L290 TraceCheckUtils]: 2: Hoare triple {3121#true} assume true; {3121#true} is VALID [2022-04-27 12:01:19,262 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3121#true} {3121#true} #62#return; {3121#true} is VALID [2022-04-27 12:01:19,262 INFO L272 TraceCheckUtils]: 4: Hoare triple {3121#true} call #t~ret9 := main(); {3121#true} is VALID [2022-04-27 12:01:19,263 INFO L290 TraceCheckUtils]: 5: Hoare triple {3121#true} havoc ~X~0;havoc ~Y~0;havoc ~x~0;havoc ~y~0;havoc ~v~0;havoc ~xy~0;havoc ~yx~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;~v~0 := 2 * ~Y~0 - ~X~0;~y~0 := 0;~x~0 := 0; {3141#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-27 12:01:19,263 INFO L290 TraceCheckUtils]: 6: Hoare triple {3141#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3141#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-27 12:01:19,264 INFO L290 TraceCheckUtils]: 7: Hoare triple {3141#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} assume !!(#t~post6 < 10);havoc #t~post6;~yx~0 := ~Y~0 * ~x~0;~xy~0 := ~X~0 * ~y~0; {3141#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-27 12:01:19,264 INFO L272 TraceCheckUtils]: 8: Hoare triple {3141#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 then 1 else 0)); {3121#true} is VALID [2022-04-27 12:01:19,264 INFO L290 TraceCheckUtils]: 9: Hoare triple {3121#true} ~cond := #in~cond; {3121#true} is VALID [2022-04-27 12:01:19,264 INFO L290 TraceCheckUtils]: 10: Hoare triple {3121#true} assume !(0 == ~cond); {3121#true} is VALID [2022-04-27 12:01:19,264 INFO L290 TraceCheckUtils]: 11: Hoare triple {3121#true} assume true; {3121#true} is VALID [2022-04-27 12:01:19,265 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {3121#true} {3141#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} #58#return; {3141#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-27 12:01:19,266 INFO L290 TraceCheckUtils]: 13: Hoare triple {3141#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} assume !!(~x~0 <= ~X~0); {3141#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} is VALID [2022-04-27 12:01:19,267 INFO L290 TraceCheckUtils]: 14: Hoare triple {3141#(and (<= main_~x~0 0) (<= (* main_~Y~0 2) (+ main_~X~0 main_~v~0)))} assume ~v~0 < 0;~v~0 := ~v~0 + 2 * ~Y~0; {3169#(and (<= main_~x~0 0) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-27 12:01:19,268 INFO L290 TraceCheckUtils]: 15: Hoare triple {3169#(and (<= main_~x~0 0) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} #t~post8 := ~x~0;~x~0 := 1 + #t~post8;havoc #t~post8; {3173#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-27 12:01:19,268 INFO L290 TraceCheckUtils]: 16: Hoare triple {3173#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3173#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-27 12:01:19,269 INFO L290 TraceCheckUtils]: 17: Hoare triple {3173#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} assume !!(#t~post6 < 10);havoc #t~post6;~yx~0 := ~Y~0 * ~x~0;~xy~0 := ~X~0 * ~y~0; {3173#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-27 12:01:19,269 INFO L272 TraceCheckUtils]: 18: Hoare triple {3173#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 then 1 else 0)); {3121#true} is VALID [2022-04-27 12:01:19,269 INFO L290 TraceCheckUtils]: 19: Hoare triple {3121#true} ~cond := #in~cond; {3121#true} is VALID [2022-04-27 12:01:19,269 INFO L290 TraceCheckUtils]: 20: Hoare triple {3121#true} assume !(0 == ~cond); {3121#true} is VALID [2022-04-27 12:01:19,269 INFO L290 TraceCheckUtils]: 21: Hoare triple {3121#true} assume true; {3121#true} is VALID [2022-04-27 12:01:19,270 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {3121#true} {3173#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} #58#return; {3173#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-27 12:01:19,270 INFO L290 TraceCheckUtils]: 23: Hoare triple {3173#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} assume !!(~x~0 <= ~X~0); {3173#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} is VALID [2022-04-27 12:01:19,271 INFO L290 TraceCheckUtils]: 24: Hoare triple {3173#(and (<= main_~x~0 1) (< (div (+ (- 1) (* (- 1) main_~v~0)) (- 2)) (+ (div (+ (- 1) main_~X~0) 2) 1)))} assume !(~v~0 < 0);~v~0 := ~v~0 + 2 * (~Y~0 - ~X~0);#t~post7 := ~y~0;~y~0 := 1 + #t~post7;havoc #t~post7; {3201#(and (<= main_~x~0 1) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-27 12:01:19,272 INFO L290 TraceCheckUtils]: 25: Hoare triple {3201#(and (<= main_~x~0 1) (< 0 (div (+ (- 1) main_~X~0) 2)))} #t~post8 := ~x~0;~x~0 := 1 + #t~post8;havoc #t~post8; {3205#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-27 12:01:19,273 INFO L290 TraceCheckUtils]: 26: Hoare triple {3205#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3205#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-27 12:01:19,273 INFO L290 TraceCheckUtils]: 27: Hoare triple {3205#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} assume !!(#t~post6 < 10);havoc #t~post6;~yx~0 := ~Y~0 * ~x~0;~xy~0 := ~X~0 * ~y~0; {3205#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-27 12:01:19,273 INFO L272 TraceCheckUtils]: 28: Hoare triple {3205#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 then 1 else 0)); {3121#true} is VALID [2022-04-27 12:01:19,273 INFO L290 TraceCheckUtils]: 29: Hoare triple {3121#true} ~cond := #in~cond; {3121#true} is VALID [2022-04-27 12:01:19,273 INFO L290 TraceCheckUtils]: 30: Hoare triple {3121#true} assume !(0 == ~cond); {3121#true} is VALID [2022-04-27 12:01:19,273 INFO L290 TraceCheckUtils]: 31: Hoare triple {3121#true} assume true; {3121#true} is VALID [2022-04-27 12:01:19,274 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {3121#true} {3205#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} #58#return; {3205#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-27 12:01:19,275 INFO L290 TraceCheckUtils]: 33: Hoare triple {3205#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} assume !!(~x~0 <= ~X~0); {3205#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-27 12:01:19,275 INFO L290 TraceCheckUtils]: 34: Hoare triple {3205#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} assume ~v~0 < 0;~v~0 := ~v~0 + 2 * ~Y~0; {3205#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-27 12:01:19,276 INFO L290 TraceCheckUtils]: 35: Hoare triple {3205#(and (<= main_~x~0 2) (< 0 (div (+ (- 1) main_~X~0) 2)))} #t~post8 := ~x~0;~x~0 := 1 + #t~post8;havoc #t~post8; {3236#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-27 12:01:19,276 INFO L290 TraceCheckUtils]: 36: Hoare triple {3236#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3236#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-27 12:01:19,277 INFO L290 TraceCheckUtils]: 37: Hoare triple {3236#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} assume !!(#t~post6 < 10);havoc #t~post6;~yx~0 := ~Y~0 * ~x~0;~xy~0 := ~X~0 * ~y~0; {3236#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-27 12:01:19,277 INFO L272 TraceCheckUtils]: 38: Hoare triple {3236#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 then 1 else 0)); {3121#true} is VALID [2022-04-27 12:01:19,277 INFO L290 TraceCheckUtils]: 39: Hoare triple {3121#true} ~cond := #in~cond; {3121#true} is VALID [2022-04-27 12:01:19,277 INFO L290 TraceCheckUtils]: 40: Hoare triple {3121#true} assume !(0 == ~cond); {3121#true} is VALID [2022-04-27 12:01:19,277 INFO L290 TraceCheckUtils]: 41: Hoare triple {3121#true} assume true; {3121#true} is VALID [2022-04-27 12:01:19,278 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {3121#true} {3236#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} #58#return; {3236#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} is VALID [2022-04-27 12:01:19,279 INFO L290 TraceCheckUtils]: 43: Hoare triple {3236#(and (<= main_~x~0 3) (< 0 (div (+ (- 1) main_~X~0) 2)))} assume !(~x~0 <= ~X~0); {3122#false} is VALID [2022-04-27 12:01:19,279 INFO L290 TraceCheckUtils]: 44: Hoare triple {3122#false} ~xy~0 := ~x~0 * ~y~0;~yx~0 := ~Y~0 * ~x~0; {3122#false} is VALID [2022-04-27 12:01:19,279 INFO L272 TraceCheckUtils]: 45: Hoare triple {3122#false} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 + 2 * ~y~0 then 1 else 0)); {3122#false} is VALID [2022-04-27 12:01:19,279 INFO L290 TraceCheckUtils]: 46: Hoare triple {3122#false} ~cond := #in~cond; {3122#false} is VALID [2022-04-27 12:01:19,279 INFO L290 TraceCheckUtils]: 47: Hoare triple {3122#false} assume 0 == ~cond; {3122#false} is VALID [2022-04-27 12:01:19,279 INFO L290 TraceCheckUtils]: 48: Hoare triple {3122#false} assume !false; {3122#false} is VALID [2022-04-27 12:01:19,280 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 8 proven. 30 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-27 12:01:19,280 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:01:19,688 INFO L290 TraceCheckUtils]: 48: Hoare triple {3122#false} assume !false; {3122#false} is VALID [2022-04-27 12:01:19,688 INFO L290 TraceCheckUtils]: 47: Hoare triple {3122#false} assume 0 == ~cond; {3122#false} is VALID [2022-04-27 12:01:19,688 INFO L290 TraceCheckUtils]: 46: Hoare triple {3122#false} ~cond := #in~cond; {3122#false} is VALID [2022-04-27 12:01:19,688 INFO L272 TraceCheckUtils]: 45: Hoare triple {3122#false} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 + 2 * ~y~0 then 1 else 0)); {3122#false} is VALID [2022-04-27 12:01:19,689 INFO L290 TraceCheckUtils]: 44: Hoare triple {3122#false} ~xy~0 := ~x~0 * ~y~0;~yx~0 := ~Y~0 * ~x~0; {3122#false} is VALID [2022-04-27 12:01:19,689 INFO L290 TraceCheckUtils]: 43: Hoare triple {3291#(<= main_~x~0 main_~X~0)} assume !(~x~0 <= ~X~0); {3122#false} is VALID [2022-04-27 12:01:19,690 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {3121#true} {3291#(<= main_~x~0 main_~X~0)} #58#return; {3291#(<= main_~x~0 main_~X~0)} is VALID [2022-04-27 12:01:19,690 INFO L290 TraceCheckUtils]: 41: Hoare triple {3121#true} assume true; {3121#true} is VALID [2022-04-27 12:01:19,690 INFO L290 TraceCheckUtils]: 40: Hoare triple {3121#true} assume !(0 == ~cond); {3121#true} is VALID [2022-04-27 12:01:19,690 INFO L290 TraceCheckUtils]: 39: Hoare triple {3121#true} ~cond := #in~cond; {3121#true} is VALID [2022-04-27 12:01:19,690 INFO L272 TraceCheckUtils]: 38: Hoare triple {3291#(<= main_~x~0 main_~X~0)} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 then 1 else 0)); {3121#true} is VALID [2022-04-27 12:01:19,690 INFO L290 TraceCheckUtils]: 37: Hoare triple {3291#(<= main_~x~0 main_~X~0)} assume !!(#t~post6 < 10);havoc #t~post6;~yx~0 := ~Y~0 * ~x~0;~xy~0 := ~X~0 * ~y~0; {3291#(<= main_~x~0 main_~X~0)} is VALID [2022-04-27 12:01:19,691 INFO L290 TraceCheckUtils]: 36: Hoare triple {3291#(<= main_~x~0 main_~X~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3291#(<= main_~x~0 main_~X~0)} is VALID [2022-04-27 12:01:19,692 INFO L290 TraceCheckUtils]: 35: Hoare triple {3316#(<= (+ main_~x~0 1) main_~X~0)} #t~post8 := ~x~0;~x~0 := 1 + #t~post8;havoc #t~post8; {3291#(<= main_~x~0 main_~X~0)} is VALID [2022-04-27 12:01:19,692 INFO L290 TraceCheckUtils]: 34: Hoare triple {3316#(<= (+ main_~x~0 1) main_~X~0)} assume ~v~0 < 0;~v~0 := ~v~0 + 2 * ~Y~0; {3316#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-27 12:01:19,693 INFO L290 TraceCheckUtils]: 33: Hoare triple {3316#(<= (+ main_~x~0 1) main_~X~0)} assume !!(~x~0 <= ~X~0); {3316#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-27 12:01:19,693 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {3121#true} {3316#(<= (+ main_~x~0 1) main_~X~0)} #58#return; {3316#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-27 12:01:19,693 INFO L290 TraceCheckUtils]: 31: Hoare triple {3121#true} assume true; {3121#true} is VALID [2022-04-27 12:01:19,694 INFO L290 TraceCheckUtils]: 30: Hoare triple {3121#true} assume !(0 == ~cond); {3121#true} is VALID [2022-04-27 12:01:19,694 INFO L290 TraceCheckUtils]: 29: Hoare triple {3121#true} ~cond := #in~cond; {3121#true} is VALID [2022-04-27 12:01:19,698 INFO L272 TraceCheckUtils]: 28: Hoare triple {3316#(<= (+ main_~x~0 1) main_~X~0)} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 then 1 else 0)); {3121#true} is VALID [2022-04-27 12:01:19,698 INFO L290 TraceCheckUtils]: 27: Hoare triple {3316#(<= (+ main_~x~0 1) main_~X~0)} assume !!(#t~post6 < 10);havoc #t~post6;~yx~0 := ~Y~0 * ~x~0;~xy~0 := ~X~0 * ~y~0; {3316#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-27 12:01:19,699 INFO L290 TraceCheckUtils]: 26: Hoare triple {3316#(<= (+ main_~x~0 1) main_~X~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3316#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-27 12:01:19,700 INFO L290 TraceCheckUtils]: 25: Hoare triple {3347#(<= (+ main_~x~0 2) main_~X~0)} #t~post8 := ~x~0;~x~0 := 1 + #t~post8;havoc #t~post8; {3316#(<= (+ main_~x~0 1) main_~X~0)} is VALID [2022-04-27 12:01:19,700 INFO L290 TraceCheckUtils]: 24: Hoare triple {3351#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} assume !(~v~0 < 0);~v~0 := ~v~0 + 2 * (~Y~0 - ~X~0);#t~post7 := ~y~0;~y~0 := 1 + #t~post7;havoc #t~post7; {3347#(<= (+ main_~x~0 2) main_~X~0)} is VALID [2022-04-27 12:01:19,700 INFO L290 TraceCheckUtils]: 23: Hoare triple {3351#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} assume !!(~x~0 <= ~X~0); {3351#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-27 12:01:19,701 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {3121#true} {3351#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} #58#return; {3351#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-27 12:01:19,701 INFO L290 TraceCheckUtils]: 21: Hoare triple {3121#true} assume true; {3121#true} is VALID [2022-04-27 12:01:19,701 INFO L290 TraceCheckUtils]: 20: Hoare triple {3121#true} assume !(0 == ~cond); {3121#true} is VALID [2022-04-27 12:01:19,701 INFO L290 TraceCheckUtils]: 19: Hoare triple {3121#true} ~cond := #in~cond; {3121#true} is VALID [2022-04-27 12:01:19,702 INFO L272 TraceCheckUtils]: 18: Hoare triple {3351#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 then 1 else 0)); {3121#true} is VALID [2022-04-27 12:01:19,702 INFO L290 TraceCheckUtils]: 17: Hoare triple {3351#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} assume !!(#t~post6 < 10);havoc #t~post6;~yx~0 := ~Y~0 * ~x~0;~xy~0 := ~X~0 * ~y~0; {3351#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-27 12:01:19,703 INFO L290 TraceCheckUtils]: 16: Hoare triple {3351#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3351#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-27 12:01:19,703 INFO L290 TraceCheckUtils]: 15: Hoare triple {3379#(or (< main_~v~0 0) (<= (+ main_~x~0 3) main_~X~0))} #t~post8 := ~x~0;~x~0 := 1 + #t~post8;havoc #t~post8; {3351#(or (<= (+ main_~x~0 2) main_~X~0) (< main_~v~0 0))} is VALID [2022-04-27 12:01:19,704 INFO L290 TraceCheckUtils]: 14: Hoare triple {3383#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} assume ~v~0 < 0;~v~0 := ~v~0 + 2 * ~Y~0; {3379#(or (< main_~v~0 0) (<= (+ main_~x~0 3) main_~X~0))} is VALID [2022-04-27 12:01:19,705 INFO L290 TraceCheckUtils]: 13: Hoare triple {3383#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} assume !!(~x~0 <= ~X~0); {3383#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} is VALID [2022-04-27 12:01:19,705 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {3121#true} {3383#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} #58#return; {3383#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} is VALID [2022-04-27 12:01:19,705 INFO L290 TraceCheckUtils]: 11: Hoare triple {3121#true} assume true; {3121#true} is VALID [2022-04-27 12:01:19,705 INFO L290 TraceCheckUtils]: 10: Hoare triple {3121#true} assume !(0 == ~cond); {3121#true} is VALID [2022-04-27 12:01:19,706 INFO L290 TraceCheckUtils]: 9: Hoare triple {3121#true} ~cond := #in~cond; {3121#true} is VALID [2022-04-27 12:01:19,706 INFO L272 TraceCheckUtils]: 8: Hoare triple {3383#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} call __VERIFIER_assert((if 0 == 2 * ~yx~0 - 2 * ~xy~0 - ~X~0 + 2 * ~Y~0 - ~v~0 then 1 else 0)); {3121#true} is VALID [2022-04-27 12:01:19,706 INFO L290 TraceCheckUtils]: 7: Hoare triple {3383#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} assume !!(#t~post6 < 10);havoc #t~post6;~yx~0 := ~Y~0 * ~x~0;~xy~0 := ~X~0 * ~y~0; {3383#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} is VALID [2022-04-27 12:01:19,707 INFO L290 TraceCheckUtils]: 6: Hoare triple {3383#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3383#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} is VALID [2022-04-27 12:01:19,708 INFO L290 TraceCheckUtils]: 5: Hoare triple {3121#true} havoc ~X~0;havoc ~Y~0;havoc ~x~0;havoc ~y~0;havoc ~v~0;havoc ~xy~0;havoc ~yx~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;~v~0 := 2 * ~Y~0 - ~X~0;~y~0 := 0;~x~0 := 0; {3383#(or (< (+ main_~v~0 (* main_~Y~0 2)) 0) (not (< main_~v~0 0)) (<= (+ main_~x~0 3) main_~X~0))} is VALID [2022-04-27 12:01:19,708 INFO L272 TraceCheckUtils]: 4: Hoare triple {3121#true} call #t~ret9 := main(); {3121#true} is VALID [2022-04-27 12:01:19,708 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3121#true} {3121#true} #62#return; {3121#true} is VALID [2022-04-27 12:01:19,708 INFO L290 TraceCheckUtils]: 2: Hoare triple {3121#true} assume true; {3121#true} is VALID [2022-04-27 12:01:19,708 INFO L290 TraceCheckUtils]: 1: Hoare triple {3121#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(15, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3121#true} is VALID [2022-04-27 12:01:19,708 INFO L272 TraceCheckUtils]: 0: Hoare triple {3121#true} call ULTIMATE.init(); {3121#true} is VALID [2022-04-27 12:01:19,710 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 8 proven. 30 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-27 12:01:19,710 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:01:19,710 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1156533911] [2022-04-27 12:01:19,710 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:01:19,710 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1917062394] [2022-04-27 12:01:19,710 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1917062394] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 12:01:19,711 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 12:01:19,711 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-27 12:01:19,711 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [53226677] [2022-04-27 12:01:19,711 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 12:01:19,712 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 3.357142857142857) internal successors, (47), 14 states have internal predecessors, (47), 10 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Word has length 49 [2022-04-27 12:01:19,713 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:01:19,713 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 3.357142857142857) internal successors, (47), 14 states have internal predecessors, (47), 10 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 12:01:19,765 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:01:19,765 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-27 12:01:19,765 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:01:19,766 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-27 12:01:19,766 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=45, Invalid=137, Unknown=0, NotChecked=0, Total=182 [2022-04-27 12:01:19,766 INFO L87 Difference]: Start difference. First operand 83 states and 97 transitions. Second operand has 14 states, 14 states have (on average 3.357142857142857) internal successors, (47), 14 states have internal predecessors, (47), 10 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 12:01:20,337 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:01:20,337 INFO L93 Difference]: Finished difference Result 108 states and 127 transitions. [2022-04-27 12:01:20,337 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 12:01:20,338 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 3.357142857142857) internal successors, (47), 14 states have internal predecessors, (47), 10 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Word has length 49 [2022-04-27 12:01:20,338 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:01:20,338 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 3.357142857142857) internal successors, (47), 14 states have internal predecessors, (47), 10 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 12:01:20,341 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 61 transitions. [2022-04-27 12:01:20,342 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 3.357142857142857) internal successors, (47), 14 states have internal predecessors, (47), 10 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 12:01:20,344 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 61 transitions. [2022-04-27 12:01:20,344 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 61 transitions. [2022-04-27 12:01:20,396 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:01:20,398 INFO L225 Difference]: With dead ends: 108 [2022-04-27 12:01:20,398 INFO L226 Difference]: Without dead ends: 102 [2022-04-27 12:01:20,398 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 100 GetRequests, 85 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 41 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=64, Invalid=208, Unknown=0, NotChecked=0, Total=272 [2022-04-27 12:01:20,398 INFO L413 NwaCegarLoop]: 27 mSDtfsCounter, 10 mSDsluCounter, 117 mSDsCounter, 0 mSdLazyCounter, 180 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 144 SdHoareTripleChecker+Invalid, 191 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 180 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 12:01:20,399 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [10 Valid, 144 Invalid, 191 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 180 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 12:01:20,399 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 102 states. [2022-04-27 12:01:20,456 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 102 to 89. [2022-04-27 12:01:20,456 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:01:20,457 INFO L82 GeneralOperation]: Start isEquivalent. First operand 102 states. Second operand has 89 states, 71 states have (on average 1.1690140845070423) internal successors, (83), 71 states have internal predecessors, (83), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:01:20,458 INFO L74 IsIncluded]: Start isIncluded. First operand 102 states. Second operand has 89 states, 71 states have (on average 1.1690140845070423) internal successors, (83), 71 states have internal predecessors, (83), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:01:20,460 INFO L87 Difference]: Start difference. First operand 102 states. Second operand has 89 states, 71 states have (on average 1.1690140845070423) internal successors, (83), 71 states have internal predecessors, (83), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:01:20,466 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:01:20,466 INFO L93 Difference]: Finished difference Result 102 states and 121 transitions. [2022-04-27 12:01:20,466 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 121 transitions. [2022-04-27 12:01:20,467 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:01:20,467 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:01:20,475 INFO L74 IsIncluded]: Start isIncluded. First operand has 89 states, 71 states have (on average 1.1690140845070423) internal successors, (83), 71 states have internal predecessors, (83), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 102 states. [2022-04-27 12:01:20,476 INFO L87 Difference]: Start difference. First operand has 89 states, 71 states have (on average 1.1690140845070423) internal successors, (83), 71 states have internal predecessors, (83), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 102 states. [2022-04-27 12:01:20,480 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:01:20,480 INFO L93 Difference]: Finished difference Result 102 states and 121 transitions. [2022-04-27 12:01:20,480 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 121 transitions. [2022-04-27 12:01:20,480 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:01:20,480 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:01:20,480 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:01:20,481 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:01:20,482 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 89 states, 71 states have (on average 1.1690140845070423) internal successors, (83), 71 states have internal predecessors, (83), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:01:20,486 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 89 states to 89 states and 105 transitions. [2022-04-27 12:01:20,486 INFO L78 Accepts]: Start accepts. Automaton has 89 states and 105 transitions. Word has length 49 [2022-04-27 12:01:20,486 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:01:20,486 INFO L495 AbstractCegarLoop]: Abstraction has 89 states and 105 transitions. [2022-04-27 12:01:20,486 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 3.357142857142857) internal successors, (47), 14 states have internal predecessors, (47), 10 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 12:01:20,487 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 105 transitions. [2022-04-27 12:01:20,489 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-04-27 12:01:20,489 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:01:20,489 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 4, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:01:20,517 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-27 12:01:20,715 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:01:20,715 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:01:20,715 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:01:20,715 INFO L85 PathProgramCache]: Analyzing trace with hash -248152202, now seen corresponding path program 3 times [2022-04-27 12:01:20,716 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:01:20,716 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1660465456] [2022-04-27 12:01:20,716 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:01:20,716 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:01:20,729 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:01:20,729 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [850994063] [2022-04-27 12:01:20,729 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-27 12:01:20,730 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:01:20,730 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:01:20,731 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:01:20,732 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-27 12:01:21,309 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2022-04-27 12:01:21,309 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 12:01:21,311 INFO L263 TraceCheckSpWp]: Trace formula consists of 117 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-27 12:01:21,328 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:01:21,330 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:01:36,689 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 12:01:47,614 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 12:01:53,634 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 12:01:59,756 WARN L833 $PredicateComparison]: unable to prove that (let ((.cse3 (+ c_main_~X~0 1)) (.cse2 (+ (* (- 1) c_main_~Y~0) (div (+ c_main_~v~0 c_main_~X~0) 2) (* c_main_~X~0 c_main_~y~0))) (.cse0 (= c_main_~Y~0 0)) (.cse4 (= (mod (+ (* 2 c_main_~X~0 c_main_~y~0) c_main_~v~0 c_main_~X~0) 2) 0))) (or (let ((.cse1 (div .cse2 c_main_~Y~0))) (and (not .cse0) (not (<= .cse1 c_main_~X~0)) (= (mod .cse2 c_main_~Y~0) 0) (= c_main_~xy~0 (* c_main_~y~0 .cse1)) (<= .cse1 .cse3) (= c_main_~yx~0 (* c_main_~Y~0 .cse1)) .cse4)) (and (let ((.cse6 (= c_main_~y~0 0))) (or (let ((.cse5 (div c_main_~xy~0 c_main_~y~0))) (and (<= .cse5 .cse3) (= (mod c_main_~xy~0 c_main_~y~0) 0) (not .cse6) (< c_main_~X~0 .cse5))) (and .cse6 (= c_main_~xy~0 0)))) (= 0 .cse2) .cse0 (= c_main_~yx~0 0) .cse4))) is different from false [2022-04-27 12:10:37,966 WARN L833 $PredicateComparison]: unable to prove that (or (and (<= 0 |c___VERIFIER_assert_#in~cond|) (exists ((v_main_~v~0_BEFORE_CALL_22 Int) (aux_div_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115 Int) (aux_mod_aux_mod_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115_139 Int) (aux_div_aux_mod_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115_139 Int) (aux_div_v_main_~X~0_BEFORE_CALL_31_65 Int) (v_main_~y~0_BEFORE_CALL_15 Int) (v_main_~Y~0_BEFORE_CALL_21 Int) (aux_div_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93 Int)) (let ((.cse8 (* 2 aux_div_aux_mod_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115_139))) (let ((.cse0 (* 2 aux_div_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115)) (.cse3 (+ .cse8 (* (- 1) v_main_~v~0_BEFORE_CALL_22) aux_mod_aux_mod_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115_139)) (.cse4 (* (- 1) v_main_~Y~0_BEFORE_CALL_21)) (.cse5 (* 2 v_main_~y~0_BEFORE_CALL_15 aux_div_aux_mod_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115_139)) (.cse6 (* v_main_~y~0_BEFORE_CALL_15 aux_mod_aux_mod_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115_139)) (.cse7 (* (- 1) v_main_~v~0_BEFORE_CALL_22 v_main_~y~0_BEFORE_CALL_15)) (.cse2 (* 2 aux_div_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93)) (.cse1 (+ .cse8 aux_mod_aux_mod_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115_139)) (.cse10 (* 2 aux_div_v_main_~X~0_BEFORE_CALL_31_65))) (and (<= .cse0 .cse1) (<= .cse2 .cse1) (< aux_mod_aux_mod_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115_139 2) (= (mod (+ aux_mod_aux_mod_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115_139 (* .cse3 2 v_main_~y~0_BEFORE_CALL_15)) 2) 0) (< .cse1 (+ 2 .cse0)) (< .cse1 (+ v_main_~v~0_BEFORE_CALL_22 (div (+ .cse4 .cse5 .cse6 .cse7 aux_div_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93) v_main_~Y~0_BEFORE_CALL_21))) (not (let ((.cse9 (div (+ .cse4 (* 2 aux_div_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115 v_main_~y~0_BEFORE_CALL_15) (* v_main_~y~0_BEFORE_CALL_15 (+ .cse8 (* (- 2) aux_div_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115) aux_mod_aux_mod_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115_139)) aux_div_aux_mod_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115_139 .cse7) v_main_~Y~0_BEFORE_CALL_21))) (= (+ .cse8 (* (* .cse9 v_main_~y~0_BEFORE_CALL_15) 2) aux_mod_aux_mod_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115_139) (+ (* 2 v_main_~y~0_BEFORE_CALL_15) (* 2 v_main_~Y~0_BEFORE_CALL_21) (* 2 (* .cse9 v_main_~Y~0_BEFORE_CALL_21)))))) (not (= v_main_~Y~0_BEFORE_CALL_21 0)) (<= .cse10 .cse1) (<= 0 aux_mod_aux_mod_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115_139) (= (mod (+ .cse4 (* .cse3 v_main_~y~0_BEFORE_CALL_15) aux_div_v_main_~X~0_BEFORE_CALL_31_65) v_main_~Y~0_BEFORE_CALL_21) 0) (<= (+ v_main_~v~0_BEFORE_CALL_22 (div (+ .cse4 .cse5 .cse6 aux_div_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115 .cse7) v_main_~Y~0_BEFORE_CALL_21)) (+ .cse8 aux_mod_aux_mod_aux_mod_aux_mod_v_main_~X~0_BEFORE_CALL_31_65_93_115_139 1)) (< .cse1 (+ 2 .cse2)) (< .cse1 (+ 2 .cse10))))))) (<= 1 |c___VERIFIER_assert_#in~cond|)) is different from false [2022-04-27 12:14:17,092 WARN L232 SmtUtils]: Spent 5.01s on a formula simplification that was a NOOP. DAG size: 8 (called from [L 988] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify)