/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/automizer/acceleratedInterpolation/acceleratedInterpolationQvasr_64.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/fermat2-ll_unwindbound10.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-e106359-m [2022-04-15 15:14:04,747 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-15 15:14:04,773 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-15 15:14:04,818 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-15 15:14:04,818 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-15 15:14:04,819 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-15 15:14:04,821 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-15 15:14:04,823 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-15 15:14:04,824 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-15 15:14:04,827 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-15 15:14:04,828 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-15 15:14:04,829 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-15 15:14:04,829 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-15 15:14:04,830 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-15 15:14:04,831 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-15 15:14:04,833 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-15 15:14:04,833 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-15 15:14:04,834 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-15 15:14:04,835 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-15 15:14:04,839 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-15 15:14:04,840 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-15 15:14:04,841 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-15 15:14:04,841 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-15 15:14:04,842 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-15 15:14:04,843 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-15 15:14:04,847 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-15 15:14:04,847 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-15 15:14:04,847 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-15 15:14:04,848 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-15 15:14:04,848 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-15 15:14:04,849 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-15 15:14:04,849 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-15 15:14:04,850 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-15 15:14:04,851 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-15 15:14:04,851 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-15 15:14:04,851 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-15 15:14:04,852 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-15 15:14:04,852 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-15 15:14:04,852 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-15 15:14:04,852 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-15 15:14:04,853 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-15 15:14:04,854 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-15 15:14:04,854 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationQvasr_64.epf [2022-04-15 15:14:04,860 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-15 15:14:04,861 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-15 15:14:04,861 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-15 15:14:04,862 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-15 15:14:04,862 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-15 15:14:04,862 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-15 15:14:04,862 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-15 15:14:04,862 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-15 15:14:04,862 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-15 15:14:04,862 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-15 15:14:04,863 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-15 15:14:04,863 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-15 15:14:04,863 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-15 15:14:04,863 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-15 15:14:04,863 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-15 15:14:04,863 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 15:14:04,863 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-15 15:14:04,863 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-15 15:14:04,863 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-15 15:14:04,863 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-15 15:14:04,864 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-15 15:14:04,864 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=QVASR [2022-04-15 15:14:04,864 INFO L138 SettingsManager]: * Use separate solver for trace checks=false 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-15 15:14:05,053 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-15 15:14:05,069 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-15 15:14:05,070 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-15 15:14:05,071 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-15 15:14:05,071 INFO L275 PluginConnector]: CDTParser initialized [2022-04-15 15:14:05,072 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/fermat2-ll_unwindbound10.c [2022-04-15 15:14:05,115 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3cb347ca7/2c6a97579b464c9c8a851971cd09387d/FLAG84ff4f0f4 [2022-04-15 15:14:05,481 INFO L306 CDTParser]: Found 1 translation units. [2022-04-15 15:14:05,481 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/fermat2-ll_unwindbound10.c [2022-04-15 15:14:05,486 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3cb347ca7/2c6a97579b464c9c8a851971cd09387d/FLAG84ff4f0f4 [2022-04-15 15:14:05,496 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3cb347ca7/2c6a97579b464c9c8a851971cd09387d [2022-04-15 15:14:05,498 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-15 15:14:05,499 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-15 15:14:05,501 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-15 15:14:05,501 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-15 15:14:05,504 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-15 15:14:05,505 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 03:14:05" (1/1) ... [2022-04-15 15:14:05,505 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@c94383f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:14:05, skipping insertion in model container [2022-04-15 15:14:05,506 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 03:14:05" (1/1) ... [2022-04-15 15:14:05,510 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-15 15:14:05,520 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-15 15:14:05,674 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/fermat2-ll_unwindbound10.c[524,537] [2022-04-15 15:14:05,697 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 15:14:05,702 INFO L203 MainTranslator]: Completed pre-run [2022-04-15 15:14:05,716 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/fermat2-ll_unwindbound10.c[524,537] [2022-04-15 15:14:05,733 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 15:14:05,742 INFO L208 MainTranslator]: Completed translation [2022-04-15 15:14:05,742 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:14:05 WrapperNode [2022-04-15 15:14:05,742 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-15 15:14:05,743 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-15 15:14:05,743 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-15 15:14:05,743 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-15 15:14:05,750 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:14:05" (1/1) ... [2022-04-15 15:14:05,750 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:14:05" (1/1) ... [2022-04-15 15:14:05,755 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:14:05" (1/1) ... [2022-04-15 15:14:05,755 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:14:05" (1/1) ... [2022-04-15 15:14:05,766 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:14:05" (1/1) ... [2022-04-15 15:14:05,770 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:14:05" (1/1) ... [2022-04-15 15:14:05,773 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:14:05" (1/1) ... [2022-04-15 15:14:05,775 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-15 15:14:05,777 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-15 15:14:05,777 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-15 15:14:05,777 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-15 15:14:05,777 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:14:05" (1/1) ... [2022-04-15 15:14:05,783 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 15:14:05,789 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:14:05,798 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-15 15:14:05,808 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-15 15:14:05,829 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-15 15:14:05,829 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-15 15:14:05,830 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-15 15:14:05,830 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-15 15:14:05,830 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-15 15:14:05,830 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-15 15:14:05,830 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-15 15:14:05,830 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-15 15:14:05,830 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-15 15:14:05,831 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-15 15:14:05,831 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-15 15:14:05,832 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-15 15:14:05,832 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-15 15:14:05,832 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-15 15:14:05,833 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-15 15:14:05,833 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-15 15:14:05,833 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-15 15:14:05,833 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-15 15:14:05,833 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-15 15:14:05,834 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-15 15:14:05,879 INFO L234 CfgBuilder]: Building ICFG [2022-04-15 15:14:05,880 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-15 15:14:06,044 INFO L275 CfgBuilder]: Performing block encoding [2022-04-15 15:14:06,049 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-15 15:14:06,049 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-15 15:14:06,050 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 03:14:06 BoogieIcfgContainer [2022-04-15 15:14:06,050 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-15 15:14:06,051 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-15 15:14:06,051 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-15 15:14:06,053 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-15 15:14:06,053 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 15.04 03:14:05" (1/3) ... [2022-04-15 15:14:06,054 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7f0e50b4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 03:14:06, skipping insertion in model container [2022-04-15 15:14:06,054 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 03:14:05" (2/3) ... [2022-04-15 15:14:06,054 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7f0e50b4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 03:14:06, skipping insertion in model container [2022-04-15 15:14:06,054 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 03:14:06" (3/3) ... [2022-04-15 15:14:06,055 INFO L111 eAbstractionObserver]: Analyzing ICFG fermat2-ll_unwindbound10.c [2022-04-15 15:14:06,058 INFO L202 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-15 15:14:06,058 INFO L161 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-15 15:14:06,113 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-15 15:14:06,117 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=Craig_NestedInterpolation, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-15 15:14:06,117 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-15 15:14:06,128 INFO L276 IsEmpty]: Start isEmpty. Operand has 30 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 19 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-15 15:14:06,132 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-04-15 15:14:06,133 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:14:06,133 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 15:14:06,133 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:14:06,137 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:14:06,138 INFO L85 PathProgramCache]: Analyzing trace with hash -1859024204, now seen corresponding path program 1 times [2022-04-15 15:14:06,143 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:14:06,143 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1276241012] [2022-04-15 15:14:06,156 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:14:06,156 INFO L85 PathProgramCache]: Analyzing trace with hash -1859024204, now seen corresponding path program 2 times [2022-04-15 15:14:06,158 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:14:06,159 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1090793985] [2022-04-15 15:14:06,159 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:14:06,159 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:14:06,251 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:14:06,252 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [527249368] [2022-04-15 15:14:06,252 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 15:14:06,252 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:14:06,252 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:14:06,253 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-15 15:14:06,255 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-15 15:14:06,321 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-15 15:14:06,322 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:14:06,324 INFO L263 TraceCheckSpWp]: Trace formula consists of 80 conjuncts, 1 conjunts are in the unsatisfiable core [2022-04-15 15:14:06,333 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:14:06,335 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:14:06,401 INFO L272 TraceCheckUtils]: 0: Hoare triple {33#true} call ULTIMATE.init(); {33#true} is VALID [2022-04-15 15:14:06,401 INFO L290 TraceCheckUtils]: 1: Hoare triple {33#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {33#true} is VALID [2022-04-15 15:14:06,402 INFO L290 TraceCheckUtils]: 2: Hoare triple {33#true} assume true; {33#true} is VALID [2022-04-15 15:14:06,402 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {33#true} {33#true} #67#return; {33#true} is VALID [2022-04-15 15:14:06,402 INFO L272 TraceCheckUtils]: 4: Hoare triple {33#true} call #t~ret7 := main(); {33#true} is VALID [2022-04-15 15:14:06,402 INFO L290 TraceCheckUtils]: 5: Hoare triple {33#true} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {33#true} is VALID [2022-04-15 15:14:06,402 INFO L272 TraceCheckUtils]: 6: Hoare triple {33#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {33#true} is VALID [2022-04-15 15:14:06,402 INFO L290 TraceCheckUtils]: 7: Hoare triple {33#true} ~cond := #in~cond; {33#true} is VALID [2022-04-15 15:14:06,403 INFO L290 TraceCheckUtils]: 8: Hoare triple {33#true} assume 0 == ~cond;assume false; {33#true} is VALID [2022-04-15 15:14:06,403 INFO L290 TraceCheckUtils]: 9: Hoare triple {33#true} assume true; {33#true} is VALID [2022-04-15 15:14:06,403 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {33#true} {33#true} #59#return; {33#true} is VALID [2022-04-15 15:14:06,403 INFO L272 TraceCheckUtils]: 11: Hoare triple {33#true} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {33#true} is VALID [2022-04-15 15:14:06,403 INFO L290 TraceCheckUtils]: 12: Hoare triple {33#true} ~cond := #in~cond; {33#true} is VALID [2022-04-15 15:14:06,404 INFO L290 TraceCheckUtils]: 13: Hoare triple {33#true} assume 0 == ~cond;assume false; {34#false} is VALID [2022-04-15 15:14:06,404 INFO L290 TraceCheckUtils]: 14: Hoare triple {34#false} assume true; {34#false} is VALID [2022-04-15 15:14:06,404 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {34#false} {33#true} #61#return; {34#false} is VALID [2022-04-15 15:14:06,404 INFO L290 TraceCheckUtils]: 16: Hoare triple {34#false} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {34#false} is VALID [2022-04-15 15:14:06,405 INFO L290 TraceCheckUtils]: 17: Hoare triple {34#false} assume !true; {34#false} is VALID [2022-04-15 15:14:06,406 INFO L272 TraceCheckUtils]: 18: Hoare triple {34#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {34#false} is VALID [2022-04-15 15:14:06,406 INFO L290 TraceCheckUtils]: 19: Hoare triple {34#false} ~cond := #in~cond; {34#false} is VALID [2022-04-15 15:14:06,406 INFO L290 TraceCheckUtils]: 20: Hoare triple {34#false} assume 0 == ~cond; {34#false} is VALID [2022-04-15 15:14:06,407 INFO L290 TraceCheckUtils]: 21: Hoare triple {34#false} assume !false; {34#false} is VALID [2022-04-15 15:14:06,407 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-15 15:14:06,407 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 15:14:06,408 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:14:06,409 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1090793985] [2022-04-15 15:14:06,409 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:14:06,409 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [527249368] [2022-04-15 15:14:06,409 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [527249368] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:14:06,409 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:14:06,409 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-04-15 15:14:06,413 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:14:06,413 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1276241012] [2022-04-15 15:14:06,413 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1276241012] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:14:06,414 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:14:06,414 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-04-15 15:14:06,414 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1959411093] [2022-04-15 15:14:06,415 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:14:06,419 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 6.5) internal successors, (13), 2 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 22 [2022-04-15 15:14:06,420 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:14:06,422 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 2 states, 2 states have (on average 6.5) internal successors, (13), 2 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 15:14:06,448 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 21 edges. 21 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:06,449 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-04-15 15:14:06,449 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:14:06,467 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-04-15 15:14:06,468 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-04-15 15:14:06,469 INFO L87 Difference]: Start difference. First operand has 30 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 19 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand has 2 states, 2 states have (on average 6.5) internal successors, (13), 2 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 15:14:06,522 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:06,522 INFO L93 Difference]: Finished difference Result 53 states and 70 transitions. [2022-04-15 15:14:06,522 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-04-15 15:14:06,523 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 6.5) internal successors, (13), 2 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 22 [2022-04-15 15:14:06,523 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:14:06,524 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 6.5) internal successors, (13), 2 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 15:14:06,530 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 70 transitions. [2022-04-15 15:14:06,530 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 6.5) internal successors, (13), 2 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 15:14:06,533 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 70 transitions. [2022-04-15 15:14:06,533 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 2 states and 70 transitions. [2022-04-15 15:14:06,592 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:06,599 INFO L225 Difference]: With dead ends: 53 [2022-04-15 15:14:06,599 INFO L226 Difference]: Without dead ends: 25 [2022-04-15 15:14:06,602 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 21 GetRequests, 21 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-04-15 15:14:06,606 INFO L913 BasicCegarLoop]: 34 mSDtfsCounter, 0 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 34 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 15:14:06,606 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 34 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 15:14:06,617 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 25 states. [2022-04-15 15:14:06,631 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 25 to 25. [2022-04-15 15:14:06,631 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:14:06,632 INFO L82 GeneralOperation]: Start isEquivalent. First operand 25 states. Second operand has 25 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 6 states have call successors, (6), 4 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-15 15:14:06,633 INFO L74 IsIncluded]: Start isIncluded. First operand 25 states. Second operand has 25 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 6 states have call successors, (6), 4 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-15 15:14:06,633 INFO L87 Difference]: Start difference. First operand 25 states. Second operand has 25 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 6 states have call successors, (6), 4 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-15 15:14:06,639 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:06,640 INFO L93 Difference]: Finished difference Result 25 states and 29 transitions. [2022-04-15 15:14:06,640 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 29 transitions. [2022-04-15 15:14:06,641 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:14:06,643 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:14:06,644 INFO L74 IsIncluded]: Start isIncluded. First operand has 25 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 6 states have call successors, (6), 4 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 25 states. [2022-04-15 15:14:06,649 INFO L87 Difference]: Start difference. First operand has 25 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 6 states have call successors, (6), 4 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 25 states. [2022-04-15 15:14:06,651 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:06,651 INFO L93 Difference]: Finished difference Result 25 states and 29 transitions. [2022-04-15 15:14:06,651 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 29 transitions. [2022-04-15 15:14:06,652 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:14:06,652 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:14:06,652 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:14:06,652 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:14:06,652 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 6 states have call successors, (6), 4 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-15 15:14:06,654 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 29 transitions. [2022-04-15 15:14:06,654 INFO L78 Accepts]: Start accepts. Automaton has 25 states and 29 transitions. Word has length 22 [2022-04-15 15:14:06,655 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:14:06,655 INFO L478 AbstractCegarLoop]: Abstraction has 25 states and 29 transitions. [2022-04-15 15:14:06,655 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 6.5) internal successors, (13), 2 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 15:14:06,655 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 25 states and 29 transitions. [2022-04-15 15:14:06,679 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 29 edges. 29 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:06,680 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 29 transitions. [2022-04-15 15:14:06,680 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-15 15:14:06,680 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:14:06,681 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 15:14:06,700 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-15 15:14:06,900 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable0 [2022-04-15 15:14:06,900 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:14:06,901 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:14:06,901 INFO L85 PathProgramCache]: Analyzing trace with hash 243739414, now seen corresponding path program 1 times [2022-04-15 15:14:06,901 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:14:06,901 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [950799089] [2022-04-15 15:14:06,902 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:14:06,902 INFO L85 PathProgramCache]: Analyzing trace with hash 243739414, now seen corresponding path program 2 times [2022-04-15 15:14:06,902 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:14:06,903 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [106520319] [2022-04-15 15:14:06,903 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:14:06,903 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:14:06,915 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:14:06,915 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1504187427] [2022-04-15 15:14:06,915 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 15:14:06,916 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:14:06,916 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:14:06,917 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-15 15:14:06,921 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-15 15:14:06,957 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-15 15:14:06,957 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:14:06,957 INFO L263 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-15 15:14:06,969 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:14:06,970 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:14:07,174 INFO L272 TraceCheckUtils]: 0: Hoare triple {306#true} call ULTIMATE.init(); {306#true} is VALID [2022-04-15 15:14:07,175 INFO L290 TraceCheckUtils]: 1: Hoare triple {306#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {314#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:07,176 INFO L290 TraceCheckUtils]: 2: Hoare triple {314#(<= ~counter~0 0)} assume true; {314#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:07,176 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {314#(<= ~counter~0 0)} {306#true} #67#return; {314#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:07,177 INFO L272 TraceCheckUtils]: 4: Hoare triple {314#(<= ~counter~0 0)} call #t~ret7 := main(); {314#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:07,177 INFO L290 TraceCheckUtils]: 5: Hoare triple {314#(<= ~counter~0 0)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {314#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:07,178 INFO L272 TraceCheckUtils]: 6: Hoare triple {314#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {314#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:07,178 INFO L290 TraceCheckUtils]: 7: Hoare triple {314#(<= ~counter~0 0)} ~cond := #in~cond; {314#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:07,179 INFO L290 TraceCheckUtils]: 8: Hoare triple {314#(<= ~counter~0 0)} assume !(0 == ~cond); {314#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:07,179 INFO L290 TraceCheckUtils]: 9: Hoare triple {314#(<= ~counter~0 0)} assume true; {314#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:07,180 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {314#(<= ~counter~0 0)} {314#(<= ~counter~0 0)} #59#return; {314#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:07,180 INFO L272 TraceCheckUtils]: 11: Hoare triple {314#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {314#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:07,181 INFO L290 TraceCheckUtils]: 12: Hoare triple {314#(<= ~counter~0 0)} ~cond := #in~cond; {314#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:07,181 INFO L290 TraceCheckUtils]: 13: Hoare triple {314#(<= ~counter~0 0)} assume !(0 == ~cond); {314#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:07,182 INFO L290 TraceCheckUtils]: 14: Hoare triple {314#(<= ~counter~0 0)} assume true; {314#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:07,182 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {314#(<= ~counter~0 0)} {314#(<= ~counter~0 0)} #61#return; {314#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:07,183 INFO L290 TraceCheckUtils]: 16: Hoare triple {314#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {314#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:07,183 INFO L290 TraceCheckUtils]: 17: Hoare triple {314#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {363#(<= |main_#t~post6| 0)} is VALID [2022-04-15 15:14:07,184 INFO L290 TraceCheckUtils]: 18: Hoare triple {363#(<= |main_#t~post6| 0)} assume !(#t~post6 < 10);havoc #t~post6; {307#false} is VALID [2022-04-15 15:14:07,184 INFO L272 TraceCheckUtils]: 19: Hoare triple {307#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {307#false} is VALID [2022-04-15 15:14:07,184 INFO L290 TraceCheckUtils]: 20: Hoare triple {307#false} ~cond := #in~cond; {307#false} is VALID [2022-04-15 15:14:07,184 INFO L290 TraceCheckUtils]: 21: Hoare triple {307#false} assume 0 == ~cond; {307#false} is VALID [2022-04-15 15:14:07,184 INFO L290 TraceCheckUtils]: 22: Hoare triple {307#false} assume !false; {307#false} is VALID [2022-04-15 15:14:07,185 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 15:14:07,185 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 15:14:07,185 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:14:07,185 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [106520319] [2022-04-15 15:14:07,185 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:14:07,185 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1504187427] [2022-04-15 15:14:07,185 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1504187427] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:14:07,186 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:14:07,186 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-15 15:14:07,186 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:14:07,186 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [950799089] [2022-04-15 15:14:07,186 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [950799089] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:14:07,186 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:14:07,186 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-15 15:14:07,186 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [512665854] [2022-04-15 15:14:07,187 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:14:07,187 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-15 15:14:07,187 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:14:07,188 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 15:14:07,203 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:07,203 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-15 15:14:07,203 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:14:07,204 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-15 15:14:07,204 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-15 15:14:07,204 INFO L87 Difference]: Start difference. First operand 25 states and 29 transitions. Second operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 15:14:07,270 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:07,271 INFO L93 Difference]: Finished difference Result 34 states and 38 transitions. [2022-04-15 15:14:07,271 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-15 15:14:07,271 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-15 15:14:07,271 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:14:07,271 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 15:14:07,274 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 38 transitions. [2022-04-15 15:14:07,274 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 15:14:07,276 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 38 transitions. [2022-04-15 15:14:07,276 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 38 transitions. [2022-04-15 15:14:07,317 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:07,319 INFO L225 Difference]: With dead ends: 34 [2022-04-15 15:14:07,319 INFO L226 Difference]: Without dead ends: 27 [2022-04-15 15:14:07,320 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 22 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-15 15:14:07,325 INFO L913 BasicCegarLoop]: 27 mSDtfsCounter, 0 mSDsluCounter, 40 mSDsCounter, 0 mSdLazyCounter, 7 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 67 SdHoareTripleChecker+Invalid, 7 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 7 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 15:14:07,326 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 67 Invalid, 7 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 7 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 15:14:07,327 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2022-04-15 15:14:07,339 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 27. [2022-04-15 15:14:07,340 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:14:07,340 INFO L82 GeneralOperation]: Start isEquivalent. First operand 27 states. Second operand has 27 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 6 states have call successors, (6), 4 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-15 15:14:07,340 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand has 27 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 6 states have call successors, (6), 4 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-15 15:14:07,340 INFO L87 Difference]: Start difference. First operand 27 states. Second operand has 27 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 6 states have call successors, (6), 4 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-15 15:14:07,342 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:07,342 INFO L93 Difference]: Finished difference Result 27 states and 31 transitions. [2022-04-15 15:14:07,342 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-15 15:14:07,342 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:14:07,342 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:14:07,343 INFO L74 IsIncluded]: Start isIncluded. First operand has 27 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 6 states have call successors, (6), 4 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 27 states. [2022-04-15 15:14:07,343 INFO L87 Difference]: Start difference. First operand has 27 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 6 states have call successors, (6), 4 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 27 states. [2022-04-15 15:14:07,344 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:07,344 INFO L93 Difference]: Finished difference Result 27 states and 31 transitions. [2022-04-15 15:14:07,344 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-15 15:14:07,345 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:14:07,345 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:14:07,345 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:14:07,345 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:14:07,345 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 6 states have call successors, (6), 4 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-15 15:14:07,346 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 31 transitions. [2022-04-15 15:14:07,346 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 31 transitions. Word has length 23 [2022-04-15 15:14:07,347 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:14:07,347 INFO L478 AbstractCegarLoop]: Abstraction has 27 states and 31 transitions. [2022-04-15 15:14:07,347 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 15:14:07,347 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 27 states and 31 transitions. [2022-04-15 15:14:07,368 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:07,368 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-15 15:14:07,369 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-15 15:14:07,369 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:14:07,369 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 15:14:07,387 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-15 15:14:07,579 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable1 [2022-04-15 15:14:07,580 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:14:07,580 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:14:07,580 INFO L85 PathProgramCache]: Analyzing trace with hash 245526874, now seen corresponding path program 1 times [2022-04-15 15:14:07,580 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:14:07,580 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1398296792] [2022-04-15 15:14:07,581 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:14:07,581 INFO L85 PathProgramCache]: Analyzing trace with hash 245526874, now seen corresponding path program 2 times [2022-04-15 15:14:07,581 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:14:07,581 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1291218439] [2022-04-15 15:14:07,582 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:14:07,582 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:14:07,598 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:14:07,598 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [750868920] [2022-04-15 15:14:07,598 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 15:14:07,599 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:14:07,599 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:14:07,599 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-15 15:14:07,601 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-15 15:14:07,637 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-15 15:14:07,637 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:14:07,638 INFO L263 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-15 15:14:07,647 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:14:07,648 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:14:07,960 INFO L272 TraceCheckUtils]: 0: Hoare triple {554#true} call ULTIMATE.init(); {554#true} is VALID [2022-04-15 15:14:07,961 INFO L290 TraceCheckUtils]: 1: Hoare triple {554#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {554#true} is VALID [2022-04-15 15:14:07,961 INFO L290 TraceCheckUtils]: 2: Hoare triple {554#true} assume true; {554#true} is VALID [2022-04-15 15:14:07,961 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {554#true} {554#true} #67#return; {554#true} is VALID [2022-04-15 15:14:07,963 INFO L272 TraceCheckUtils]: 4: Hoare triple {554#true} call #t~ret7 := main(); {554#true} is VALID [2022-04-15 15:14:07,963 INFO L290 TraceCheckUtils]: 5: Hoare triple {554#true} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {554#true} is VALID [2022-04-15 15:14:07,964 INFO L272 TraceCheckUtils]: 6: Hoare triple {554#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {554#true} is VALID [2022-04-15 15:14:07,964 INFO L290 TraceCheckUtils]: 7: Hoare triple {554#true} ~cond := #in~cond; {554#true} is VALID [2022-04-15 15:14:07,964 INFO L290 TraceCheckUtils]: 8: Hoare triple {554#true} assume !(0 == ~cond); {554#true} is VALID [2022-04-15 15:14:07,964 INFO L290 TraceCheckUtils]: 9: Hoare triple {554#true} assume true; {554#true} is VALID [2022-04-15 15:14:07,965 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {554#true} {554#true} #59#return; {554#true} is VALID [2022-04-15 15:14:07,966 INFO L272 TraceCheckUtils]: 11: Hoare triple {554#true} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {554#true} is VALID [2022-04-15 15:14:07,966 INFO L290 TraceCheckUtils]: 12: Hoare triple {554#true} ~cond := #in~cond; {554#true} is VALID [2022-04-15 15:14:07,966 INFO L290 TraceCheckUtils]: 13: Hoare triple {554#true} assume !(0 == ~cond); {554#true} is VALID [2022-04-15 15:14:07,966 INFO L290 TraceCheckUtils]: 14: Hoare triple {554#true} assume true; {554#true} is VALID [2022-04-15 15:14:07,966 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {554#true} {554#true} #61#return; {554#true} is VALID [2022-04-15 15:14:08,747 INFO L290 TraceCheckUtils]: 16: Hoare triple {554#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {607#(and (= (+ (* (- 1) main_~A~0) (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) main_~r~0) (= (mod (+ main_~u~0 1) 2) 0) (= main_~v~0 1))} is VALID [2022-04-15 15:14:08,748 INFO L290 TraceCheckUtils]: 17: Hoare triple {607#(and (= (+ (* (- 1) main_~A~0) (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) main_~r~0) (= (mod (+ main_~u~0 1) 2) 0) (= main_~v~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {607#(and (= (+ (* (- 1) main_~A~0) (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) main_~r~0) (= (mod (+ main_~u~0 1) 2) 0) (= main_~v~0 1))} is VALID [2022-04-15 15:14:08,748 INFO L290 TraceCheckUtils]: 18: Hoare triple {607#(and (= (+ (* (- 1) main_~A~0) (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) main_~r~0) (= (mod (+ main_~u~0 1) 2) 0) (= main_~v~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {607#(and (= (+ (* (- 1) main_~A~0) (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) main_~r~0) (= (mod (+ main_~u~0 1) 2) 0) (= main_~v~0 1))} is VALID [2022-04-15 15:14:09,187 INFO L272 TraceCheckUtils]: 19: Hoare triple {607#(and (= (+ (* (- 1) main_~A~0) (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) main_~r~0) (= (mod (+ main_~u~0 1) 2) 0) (= main_~v~0 1))} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {617#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 15:14:09,191 INFO L290 TraceCheckUtils]: 20: Hoare triple {617#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {621#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:14:09,192 INFO L290 TraceCheckUtils]: 21: Hoare triple {621#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {555#false} is VALID [2022-04-15 15:14:09,192 INFO L290 TraceCheckUtils]: 22: Hoare triple {555#false} assume !false; {555#false} is VALID [2022-04-15 15:14:09,192 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 15:14:09,192 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 15:14:09,193 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:14:09,193 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1291218439] [2022-04-15 15:14:09,193 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:14:09,193 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [750868920] [2022-04-15 15:14:09,193 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [750868920] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:14:09,193 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:14:09,193 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 15:14:09,194 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:14:09,194 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1398296792] [2022-04-15 15:14:09,194 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1398296792] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:14:09,194 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:14:09,194 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 15:14:09,194 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [928690450] [2022-04-15 15:14:09,194 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:14:09,195 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 23 [2022-04-15 15:14:09,195 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:14:09,195 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 15:14:10,170 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:10,170 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 15:14:10,170 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:14:10,171 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 15:14:10,171 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-15 15:14:10,171 INFO L87 Difference]: Start difference. First operand 27 states and 31 transitions. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 15:14:13,142 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-15 15:14:13,188 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:13,188 INFO L93 Difference]: Finished difference Result 37 states and 43 transitions. [2022-04-15 15:14:13,188 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 15:14:13,188 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 23 [2022-04-15 15:14:13,189 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:14:13,189 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 15:14:13,190 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 43 transitions. [2022-04-15 15:14:13,190 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 15:14:13,191 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 43 transitions. [2022-04-15 15:14:13,191 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 43 transitions. [2022-04-15 15:14:15,973 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 42 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:15,974 INFO L225 Difference]: With dead ends: 37 [2022-04-15 15:14:15,974 INFO L226 Difference]: Without dead ends: 35 [2022-04-15 15:14:15,974 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 23 GetRequests, 19 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-15 15:14:15,975 INFO L913 BasicCegarLoop]: 23 mSDtfsCounter, 7 mSDsluCounter, 59 mSDsCounter, 0 mSdLazyCounter, 35 mSolverCounterSat, 0 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 82 SdHoareTripleChecker+Invalid, 36 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 35 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.8s IncrementalHoareTripleChecker+Time [2022-04-15 15:14:15,975 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [8 Valid, 82 Invalid, 36 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 35 Invalid, 1 Unknown, 0 Unchecked, 2.8s Time] [2022-04-15 15:14:15,976 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-15 15:14:15,989 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 32. [2022-04-15 15:14:15,989 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:14:15,989 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand has 32 states, 20 states have (on average 1.2) internal successors, (24), 22 states have internal predecessors, (24), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-15 15:14:15,990 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand has 32 states, 20 states have (on average 1.2) internal successors, (24), 22 states have internal predecessors, (24), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-15 15:14:15,990 INFO L87 Difference]: Start difference. First operand 35 states. Second operand has 32 states, 20 states have (on average 1.2) internal successors, (24), 22 states have internal predecessors, (24), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-15 15:14:15,992 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:15,992 INFO L93 Difference]: Finished difference Result 35 states and 41 transitions. [2022-04-15 15:14:15,992 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 41 transitions. [2022-04-15 15:14:15,992 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:14:15,992 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:14:15,993 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 20 states have (on average 1.2) internal successors, (24), 22 states have internal predecessors, (24), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) Second operand 35 states. [2022-04-15 15:14:15,993 INFO L87 Difference]: Start difference. First operand has 32 states, 20 states have (on average 1.2) internal successors, (24), 22 states have internal predecessors, (24), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) Second operand 35 states. [2022-04-15 15:14:15,994 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:15,994 INFO L93 Difference]: Finished difference Result 35 states and 41 transitions. [2022-04-15 15:14:15,994 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 41 transitions. [2022-04-15 15:14:15,995 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:14:15,995 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:14:15,995 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:14:15,995 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:14:15,995 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 20 states have (on average 1.2) internal successors, (24), 22 states have internal predecessors, (24), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-15 15:14:15,996 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 36 transitions. [2022-04-15 15:14:15,996 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 36 transitions. Word has length 23 [2022-04-15 15:14:15,997 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:14:15,997 INFO L478 AbstractCegarLoop]: Abstraction has 32 states and 36 transitions. [2022-04-15 15:14:15,997 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 15:14:15,997 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 32 states and 36 transitions. [2022-04-15 15:14:19,929 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 35 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:19,929 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 36 transitions. [2022-04-15 15:14:19,929 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-15 15:14:19,929 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:14:19,929 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 15:14:19,957 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-15 15:14:20,130 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:14:20,130 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:14:20,131 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:14:20,131 INFO L85 PathProgramCache]: Analyzing trace with hash -1019533657, now seen corresponding path program 1 times [2022-04-15 15:14:20,131 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:14:20,131 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [702895207] [2022-04-15 15:14:20,132 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:14:20,132 INFO L85 PathProgramCache]: Analyzing trace with hash -1019533657, now seen corresponding path program 2 times [2022-04-15 15:14:20,132 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:14:20,132 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1990315363] [2022-04-15 15:14:20,132 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:14:20,132 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:14:20,142 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:14:20,142 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [246953150] [2022-04-15 15:14:20,142 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 15:14:20,142 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:14:20,142 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:14:20,147 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-15 15:14:20,161 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-15 15:14:20,186 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 15:14:20,187 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:14:20,187 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-15 15:14:20,215 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:14:20,216 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:14:20,357 INFO L272 TraceCheckUtils]: 0: Hoare triple {837#true} call ULTIMATE.init(); {837#true} is VALID [2022-04-15 15:14:20,357 INFO L290 TraceCheckUtils]: 1: Hoare triple {837#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {837#true} is VALID [2022-04-15 15:14:20,357 INFO L290 TraceCheckUtils]: 2: Hoare triple {837#true} assume true; {837#true} is VALID [2022-04-15 15:14:20,357 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {837#true} {837#true} #67#return; {837#true} is VALID [2022-04-15 15:14:20,357 INFO L272 TraceCheckUtils]: 4: Hoare triple {837#true} call #t~ret7 := main(); {837#true} is VALID [2022-04-15 15:14:20,357 INFO L290 TraceCheckUtils]: 5: Hoare triple {837#true} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {837#true} is VALID [2022-04-15 15:14:20,358 INFO L272 TraceCheckUtils]: 6: Hoare triple {837#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {837#true} is VALID [2022-04-15 15:14:20,358 INFO L290 TraceCheckUtils]: 7: Hoare triple {837#true} ~cond := #in~cond; {837#true} is VALID [2022-04-15 15:14:20,358 INFO L290 TraceCheckUtils]: 8: Hoare triple {837#true} assume !(0 == ~cond); {837#true} is VALID [2022-04-15 15:14:20,358 INFO L290 TraceCheckUtils]: 9: Hoare triple {837#true} assume true; {837#true} is VALID [2022-04-15 15:14:20,358 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {837#true} {837#true} #59#return; {837#true} is VALID [2022-04-15 15:14:20,358 INFO L272 TraceCheckUtils]: 11: Hoare triple {837#true} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {837#true} is VALID [2022-04-15 15:14:20,358 INFO L290 TraceCheckUtils]: 12: Hoare triple {837#true} ~cond := #in~cond; {837#true} is VALID [2022-04-15 15:14:20,358 INFO L290 TraceCheckUtils]: 13: Hoare triple {837#true} assume !(0 == ~cond); {837#true} is VALID [2022-04-15 15:14:20,358 INFO L290 TraceCheckUtils]: 14: Hoare triple {837#true} assume true; {837#true} is VALID [2022-04-15 15:14:20,359 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {837#true} {837#true} #61#return; {837#true} is VALID [2022-04-15 15:14:20,359 INFO L290 TraceCheckUtils]: 16: Hoare triple {837#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {837#true} is VALID [2022-04-15 15:14:20,359 INFO L290 TraceCheckUtils]: 17: Hoare triple {837#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {837#true} is VALID [2022-04-15 15:14:20,359 INFO L290 TraceCheckUtils]: 18: Hoare triple {837#true} assume !!(#t~post6 < 10);havoc #t~post6; {837#true} is VALID [2022-04-15 15:14:20,359 INFO L272 TraceCheckUtils]: 19: Hoare triple {837#true} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {837#true} is VALID [2022-04-15 15:14:20,359 INFO L290 TraceCheckUtils]: 20: Hoare triple {837#true} ~cond := #in~cond; {902#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:14:20,360 INFO L290 TraceCheckUtils]: 21: Hoare triple {902#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {906#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:14:20,360 INFO L290 TraceCheckUtils]: 22: Hoare triple {906#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {906#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:14:20,361 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {906#(not (= |__VERIFIER_assert_#in~cond| 0))} {837#true} #63#return; {913#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4) (* main_~r~0 4)))} is VALID [2022-04-15 15:14:20,361 INFO L290 TraceCheckUtils]: 24: Hoare triple {913#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4) (* main_~r~0 4)))} assume !(0 != ~r~0); {917#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4)))} is VALID [2022-04-15 15:14:20,362 INFO L272 TraceCheckUtils]: 25: Hoare triple {917#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4)))} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {921#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 15:14:20,362 INFO L290 TraceCheckUtils]: 26: Hoare triple {921#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {925#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:14:20,363 INFO L290 TraceCheckUtils]: 27: Hoare triple {925#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {838#false} is VALID [2022-04-15 15:14:20,363 INFO L290 TraceCheckUtils]: 28: Hoare triple {838#false} assume !false; {838#false} is VALID [2022-04-15 15:14:20,363 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 15:14:20,363 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 15:14:20,707 INFO L290 TraceCheckUtils]: 28: Hoare triple {838#false} assume !false; {838#false} is VALID [2022-04-15 15:14:20,707 INFO L290 TraceCheckUtils]: 27: Hoare triple {925#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {838#false} is VALID [2022-04-15 15:14:20,708 INFO L290 TraceCheckUtils]: 26: Hoare triple {921#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {925#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 15:14:20,709 INFO L272 TraceCheckUtils]: 25: Hoare triple {917#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4)))} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {921#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 15:14:20,709 INFO L290 TraceCheckUtils]: 24: Hoare triple {944#(or (not (= main_~r~0 0)) (= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4))))} assume !(0 != ~r~0); {917#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4)))} is VALID [2022-04-15 15:14:20,710 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {906#(not (= |__VERIFIER_assert_#in~cond| 0))} {837#true} #63#return; {944#(or (not (= main_~r~0 0)) (= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4))))} is VALID [2022-04-15 15:14:20,712 INFO L290 TraceCheckUtils]: 22: Hoare triple {906#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {906#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:14:20,712 INFO L290 TraceCheckUtils]: 21: Hoare triple {957#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {906#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 15:14:20,713 INFO L290 TraceCheckUtils]: 20: Hoare triple {837#true} ~cond := #in~cond; {957#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 15:14:20,713 INFO L272 TraceCheckUtils]: 19: Hoare triple {837#true} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {837#true} is VALID [2022-04-15 15:14:20,713 INFO L290 TraceCheckUtils]: 18: Hoare triple {837#true} assume !!(#t~post6 < 10);havoc #t~post6; {837#true} is VALID [2022-04-15 15:14:20,713 INFO L290 TraceCheckUtils]: 17: Hoare triple {837#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {837#true} is VALID [2022-04-15 15:14:20,713 INFO L290 TraceCheckUtils]: 16: Hoare triple {837#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {837#true} is VALID [2022-04-15 15:14:20,713 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {837#true} {837#true} #61#return; {837#true} is VALID [2022-04-15 15:14:20,713 INFO L290 TraceCheckUtils]: 14: Hoare triple {837#true} assume true; {837#true} is VALID [2022-04-15 15:14:20,713 INFO L290 TraceCheckUtils]: 13: Hoare triple {837#true} assume !(0 == ~cond); {837#true} is VALID [2022-04-15 15:14:20,714 INFO L290 TraceCheckUtils]: 12: Hoare triple {837#true} ~cond := #in~cond; {837#true} is VALID [2022-04-15 15:14:20,714 INFO L272 TraceCheckUtils]: 11: Hoare triple {837#true} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {837#true} is VALID [2022-04-15 15:14:20,714 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {837#true} {837#true} #59#return; {837#true} is VALID [2022-04-15 15:14:20,714 INFO L290 TraceCheckUtils]: 9: Hoare triple {837#true} assume true; {837#true} is VALID [2022-04-15 15:14:20,714 INFO L290 TraceCheckUtils]: 8: Hoare triple {837#true} assume !(0 == ~cond); {837#true} is VALID [2022-04-15 15:14:20,714 INFO L290 TraceCheckUtils]: 7: Hoare triple {837#true} ~cond := #in~cond; {837#true} is VALID [2022-04-15 15:14:20,714 INFO L272 TraceCheckUtils]: 6: Hoare triple {837#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {837#true} is VALID [2022-04-15 15:14:20,714 INFO L290 TraceCheckUtils]: 5: Hoare triple {837#true} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {837#true} is VALID [2022-04-15 15:14:20,714 INFO L272 TraceCheckUtils]: 4: Hoare triple {837#true} call #t~ret7 := main(); {837#true} is VALID [2022-04-15 15:14:20,715 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {837#true} {837#true} #67#return; {837#true} is VALID [2022-04-15 15:14:20,715 INFO L290 TraceCheckUtils]: 2: Hoare triple {837#true} assume true; {837#true} is VALID [2022-04-15 15:14:20,715 INFO L290 TraceCheckUtils]: 1: Hoare triple {837#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {837#true} is VALID [2022-04-15 15:14:20,715 INFO L272 TraceCheckUtils]: 0: Hoare triple {837#true} call ULTIMATE.init(); {837#true} is VALID [2022-04-15 15:14:20,715 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 15:14:20,715 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:14:20,715 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1990315363] [2022-04-15 15:14:20,715 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:14:20,716 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [246953150] [2022-04-15 15:14:20,716 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [246953150] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 15:14:20,716 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 15:14:20,716 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-15 15:14:20,716 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:14:20,716 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [702895207] [2022-04-15 15:14:20,716 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [702895207] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:14:20,716 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:14:20,716 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-15 15:14:20,716 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1229152060] [2022-04-15 15:14:20,716 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:14:20,717 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 2.2857142857142856) internal successors, (16), 6 states have internal predecessors, (16), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 29 [2022-04-15 15:14:20,717 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:14:20,717 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 2.2857142857142856) internal successors, (16), 6 states have internal predecessors, (16), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-15 15:14:20,739 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:20,740 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-15 15:14:20,740 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:14:20,740 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-15 15:14:20,740 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=67, Unknown=0, NotChecked=0, Total=90 [2022-04-15 15:14:20,740 INFO L87 Difference]: Start difference. First operand 32 states and 36 transitions. Second operand has 8 states, 7 states have (on average 2.2857142857142856) internal successors, (16), 6 states have internal predecessors, (16), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-15 15:14:20,998 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:20,998 INFO L93 Difference]: Finished difference Result 39 states and 42 transitions. [2022-04-15 15:14:20,998 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-15 15:14:20,998 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 2.2857142857142856) internal successors, (16), 6 states have internal predecessors, (16), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) Word has length 29 [2022-04-15 15:14:20,998 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:14:20,998 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 2.2857142857142856) internal successors, (16), 6 states have internal predecessors, (16), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-15 15:14:21,000 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 35 transitions. [2022-04-15 15:14:21,000 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 2.2857142857142856) internal successors, (16), 6 states have internal predecessors, (16), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-15 15:14:21,001 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 35 transitions. [2022-04-15 15:14:21,001 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 35 transitions. [2022-04-15 15:14:21,051 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:21,052 INFO L225 Difference]: With dead ends: 39 [2022-04-15 15:14:21,052 INFO L226 Difference]: Without dead ends: 34 [2022-04-15 15:14:21,052 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 60 GetRequests, 48 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=41, Invalid=115, Unknown=0, NotChecked=0, Total=156 [2022-04-15 15:14:21,053 INFO L913 BasicCegarLoop]: 21 mSDtfsCounter, 17 mSDsluCounter, 82 mSDsCounter, 0 mSdLazyCounter, 55 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 103 SdHoareTripleChecker+Invalid, 61 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 55 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 15:14:21,053 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [17 Valid, 103 Invalid, 61 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 55 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 15:14:21,054 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-15 15:14:21,067 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 29. [2022-04-15 15:14:21,067 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:14:21,067 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand has 29 states, 19 states have (on average 1.105263157894737) internal successors, (21), 19 states have internal predecessors, (21), 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-15 15:14:21,068 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand has 29 states, 19 states have (on average 1.105263157894737) internal successors, (21), 19 states have internal predecessors, (21), 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-15 15:14:21,068 INFO L87 Difference]: Start difference. First operand 34 states. Second operand has 29 states, 19 states have (on average 1.105263157894737) internal successors, (21), 19 states have internal predecessors, (21), 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-15 15:14:21,069 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:21,069 INFO L93 Difference]: Finished difference Result 34 states and 36 transitions. [2022-04-15 15:14:21,069 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 36 transitions. [2022-04-15 15:14:21,069 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:14:21,070 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:14:21,070 INFO L74 IsIncluded]: Start isIncluded. First operand has 29 states, 19 states have (on average 1.105263157894737) internal successors, (21), 19 states have internal predecessors, (21), 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 34 states. [2022-04-15 15:14:21,070 INFO L87 Difference]: Start difference. First operand has 29 states, 19 states have (on average 1.105263157894737) internal successors, (21), 19 states have internal predecessors, (21), 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 34 states. [2022-04-15 15:14:21,071 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:21,071 INFO L93 Difference]: Finished difference Result 34 states and 36 transitions. [2022-04-15 15:14:21,071 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 36 transitions. [2022-04-15 15:14:21,071 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:14:21,071 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:14:21,071 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:14:21,072 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:14:21,072 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 19 states have (on average 1.105263157894737) internal successors, (21), 19 states have internal predecessors, (21), 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-15 15:14:21,072 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 31 transitions. [2022-04-15 15:14:21,073 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 31 transitions. Word has length 29 [2022-04-15 15:14:21,073 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:14:21,073 INFO L478 AbstractCegarLoop]: Abstraction has 29 states and 31 transitions. [2022-04-15 15:14:21,073 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 2.2857142857142856) internal successors, (16), 6 states have internal predecessors, (16), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-15 15:14:21,073 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 29 states and 31 transitions. [2022-04-15 15:14:21,982 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:21,982 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 31 transitions. [2022-04-15 15:14:21,982 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2022-04-15 15:14:21,982 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:14:21,983 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 15:14:22,000 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-15 15:14:22,183 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:14:22,183 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:14:22,183 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:14:22,184 INFO L85 PathProgramCache]: Analyzing trace with hash 1080225052, now seen corresponding path program 1 times [2022-04-15 15:14:22,184 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:14:22,184 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [556009286] [2022-04-15 15:14:22,184 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:14:22,184 INFO L85 PathProgramCache]: Analyzing trace with hash 1080225052, now seen corresponding path program 2 times [2022-04-15 15:14:22,184 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:14:22,184 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1537140609] [2022-04-15 15:14:22,184 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:14:22,185 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:14:22,194 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:14:22,194 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [149710588] [2022-04-15 15:14:22,194 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 15:14:22,194 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:14:22,194 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:14:22,195 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-15 15:14:22,204 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-15 15:14:22,229 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 15:14:22,230 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:14:22,230 INFO L263 TraceCheckSpWp]: Trace formula consists of 113 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-15 15:14:22,237 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:14:22,238 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:14:22,382 INFO L272 TraceCheckUtils]: 0: Hoare triple {1230#true} call ULTIMATE.init(); {1230#true} is VALID [2022-04-15 15:14:22,382 INFO L290 TraceCheckUtils]: 1: Hoare triple {1230#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1238#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:22,383 INFO L290 TraceCheckUtils]: 2: Hoare triple {1238#(<= ~counter~0 0)} assume true; {1238#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:22,383 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1238#(<= ~counter~0 0)} {1230#true} #67#return; {1238#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:22,383 INFO L272 TraceCheckUtils]: 4: Hoare triple {1238#(<= ~counter~0 0)} call #t~ret7 := main(); {1238#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:22,384 INFO L290 TraceCheckUtils]: 5: Hoare triple {1238#(<= ~counter~0 0)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {1238#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:22,384 INFO L272 TraceCheckUtils]: 6: Hoare triple {1238#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {1238#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:22,385 INFO L290 TraceCheckUtils]: 7: Hoare triple {1238#(<= ~counter~0 0)} ~cond := #in~cond; {1238#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:22,385 INFO L290 TraceCheckUtils]: 8: Hoare triple {1238#(<= ~counter~0 0)} assume !(0 == ~cond); {1238#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:22,385 INFO L290 TraceCheckUtils]: 9: Hoare triple {1238#(<= ~counter~0 0)} assume true; {1238#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:22,386 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1238#(<= ~counter~0 0)} {1238#(<= ~counter~0 0)} #59#return; {1238#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:22,386 INFO L272 TraceCheckUtils]: 11: Hoare triple {1238#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {1238#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:22,386 INFO L290 TraceCheckUtils]: 12: Hoare triple {1238#(<= ~counter~0 0)} ~cond := #in~cond; {1238#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:22,387 INFO L290 TraceCheckUtils]: 13: Hoare triple {1238#(<= ~counter~0 0)} assume !(0 == ~cond); {1238#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:22,387 INFO L290 TraceCheckUtils]: 14: Hoare triple {1238#(<= ~counter~0 0)} assume true; {1238#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:22,388 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1238#(<= ~counter~0 0)} {1238#(<= ~counter~0 0)} #61#return; {1238#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:22,388 INFO L290 TraceCheckUtils]: 16: Hoare triple {1238#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {1238#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:22,388 INFO L290 TraceCheckUtils]: 17: Hoare triple {1238#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1287#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:22,389 INFO L290 TraceCheckUtils]: 18: Hoare triple {1287#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {1287#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:22,390 INFO L272 TraceCheckUtils]: 19: Hoare triple {1287#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {1287#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:22,390 INFO L290 TraceCheckUtils]: 20: Hoare triple {1287#(<= ~counter~0 1)} ~cond := #in~cond; {1287#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:22,390 INFO L290 TraceCheckUtils]: 21: Hoare triple {1287#(<= ~counter~0 1)} assume !(0 == ~cond); {1287#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:22,391 INFO L290 TraceCheckUtils]: 22: Hoare triple {1287#(<= ~counter~0 1)} assume true; {1287#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:22,391 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1287#(<= ~counter~0 1)} {1287#(<= ~counter~0 1)} #63#return; {1287#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:22,392 INFO L290 TraceCheckUtils]: 24: Hoare triple {1287#(<= ~counter~0 1)} assume !!(0 != ~r~0); {1287#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:22,392 INFO L290 TraceCheckUtils]: 25: Hoare triple {1287#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {1287#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:22,392 INFO L290 TraceCheckUtils]: 26: Hoare triple {1287#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1315#(<= |main_#t~post6| 1)} is VALID [2022-04-15 15:14:22,393 INFO L290 TraceCheckUtils]: 27: Hoare triple {1315#(<= |main_#t~post6| 1)} assume !(#t~post6 < 10);havoc #t~post6; {1231#false} is VALID [2022-04-15 15:14:22,393 INFO L272 TraceCheckUtils]: 28: Hoare triple {1231#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {1231#false} is VALID [2022-04-15 15:14:22,393 INFO L290 TraceCheckUtils]: 29: Hoare triple {1231#false} ~cond := #in~cond; {1231#false} is VALID [2022-04-15 15:14:22,393 INFO L290 TraceCheckUtils]: 30: Hoare triple {1231#false} assume 0 == ~cond; {1231#false} is VALID [2022-04-15 15:14:22,393 INFO L290 TraceCheckUtils]: 31: Hoare triple {1231#false} assume !false; {1231#false} is VALID [2022-04-15 15:14:22,394 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 15:14:22,394 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 15:14:22,566 INFO L290 TraceCheckUtils]: 31: Hoare triple {1231#false} assume !false; {1231#false} is VALID [2022-04-15 15:14:22,566 INFO L290 TraceCheckUtils]: 30: Hoare triple {1231#false} assume 0 == ~cond; {1231#false} is VALID [2022-04-15 15:14:22,567 INFO L290 TraceCheckUtils]: 29: Hoare triple {1231#false} ~cond := #in~cond; {1231#false} is VALID [2022-04-15 15:14:22,567 INFO L272 TraceCheckUtils]: 28: Hoare triple {1231#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {1231#false} is VALID [2022-04-15 15:14:22,567 INFO L290 TraceCheckUtils]: 27: Hoare triple {1343#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {1231#false} is VALID [2022-04-15 15:14:22,567 INFO L290 TraceCheckUtils]: 26: Hoare triple {1347#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1343#(< |main_#t~post6| 10)} is VALID [2022-04-15 15:14:22,568 INFO L290 TraceCheckUtils]: 25: Hoare triple {1347#(< ~counter~0 10)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {1347#(< ~counter~0 10)} is VALID [2022-04-15 15:14:22,568 INFO L290 TraceCheckUtils]: 24: Hoare triple {1347#(< ~counter~0 10)} assume !!(0 != ~r~0); {1347#(< ~counter~0 10)} is VALID [2022-04-15 15:14:22,569 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1230#true} {1347#(< ~counter~0 10)} #63#return; {1347#(< ~counter~0 10)} is VALID [2022-04-15 15:14:22,569 INFO L290 TraceCheckUtils]: 22: Hoare triple {1230#true} assume true; {1230#true} is VALID [2022-04-15 15:14:22,569 INFO L290 TraceCheckUtils]: 21: Hoare triple {1230#true} assume !(0 == ~cond); {1230#true} is VALID [2022-04-15 15:14:22,569 INFO L290 TraceCheckUtils]: 20: Hoare triple {1230#true} ~cond := #in~cond; {1230#true} is VALID [2022-04-15 15:14:22,569 INFO L272 TraceCheckUtils]: 19: Hoare triple {1347#(< ~counter~0 10)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {1230#true} is VALID [2022-04-15 15:14:22,570 INFO L290 TraceCheckUtils]: 18: Hoare triple {1347#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {1347#(< ~counter~0 10)} is VALID [2022-04-15 15:14:22,570 INFO L290 TraceCheckUtils]: 17: Hoare triple {1375#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1347#(< ~counter~0 10)} is VALID [2022-04-15 15:14:22,571 INFO L290 TraceCheckUtils]: 16: Hoare triple {1375#(< ~counter~0 9)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {1375#(< ~counter~0 9)} is VALID [2022-04-15 15:14:22,571 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1230#true} {1375#(< ~counter~0 9)} #61#return; {1375#(< ~counter~0 9)} is VALID [2022-04-15 15:14:22,571 INFO L290 TraceCheckUtils]: 14: Hoare triple {1230#true} assume true; {1230#true} is VALID [2022-04-15 15:14:22,571 INFO L290 TraceCheckUtils]: 13: Hoare triple {1230#true} assume !(0 == ~cond); {1230#true} is VALID [2022-04-15 15:14:22,572 INFO L290 TraceCheckUtils]: 12: Hoare triple {1230#true} ~cond := #in~cond; {1230#true} is VALID [2022-04-15 15:14:22,572 INFO L272 TraceCheckUtils]: 11: Hoare triple {1375#(< ~counter~0 9)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {1230#true} is VALID [2022-04-15 15:14:22,572 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1230#true} {1375#(< ~counter~0 9)} #59#return; {1375#(< ~counter~0 9)} is VALID [2022-04-15 15:14:22,572 INFO L290 TraceCheckUtils]: 9: Hoare triple {1230#true} assume true; {1230#true} is VALID [2022-04-15 15:14:22,572 INFO L290 TraceCheckUtils]: 8: Hoare triple {1230#true} assume !(0 == ~cond); {1230#true} is VALID [2022-04-15 15:14:22,573 INFO L290 TraceCheckUtils]: 7: Hoare triple {1230#true} ~cond := #in~cond; {1230#true} is VALID [2022-04-15 15:14:22,573 INFO L272 TraceCheckUtils]: 6: Hoare triple {1375#(< ~counter~0 9)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {1230#true} is VALID [2022-04-15 15:14:22,573 INFO L290 TraceCheckUtils]: 5: Hoare triple {1375#(< ~counter~0 9)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {1375#(< ~counter~0 9)} is VALID [2022-04-15 15:14:22,573 INFO L272 TraceCheckUtils]: 4: Hoare triple {1375#(< ~counter~0 9)} call #t~ret7 := main(); {1375#(< ~counter~0 9)} is VALID [2022-04-15 15:14:22,574 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1375#(< ~counter~0 9)} {1230#true} #67#return; {1375#(< ~counter~0 9)} is VALID [2022-04-15 15:14:22,574 INFO L290 TraceCheckUtils]: 2: Hoare triple {1375#(< ~counter~0 9)} assume true; {1375#(< ~counter~0 9)} is VALID [2022-04-15 15:14:22,575 INFO L290 TraceCheckUtils]: 1: Hoare triple {1230#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1375#(< ~counter~0 9)} is VALID [2022-04-15 15:14:22,575 INFO L272 TraceCheckUtils]: 0: Hoare triple {1230#true} call ULTIMATE.init(); {1230#true} is VALID [2022-04-15 15:14:22,575 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 15:14:22,575 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:14:22,575 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1537140609] [2022-04-15 15:14:22,575 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:14:22,575 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [149710588] [2022-04-15 15:14:22,575 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [149710588] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 15:14:22,575 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 15:14:22,575 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-15 15:14:22,576 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:14:22,576 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [556009286] [2022-04-15 15:14:22,576 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [556009286] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:14:22,576 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:14:22,576 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 15:14:22,576 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1120758667] [2022-04-15 15:14:22,576 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:14:22,576 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) Word has length 32 [2022-04-15 15:14:22,576 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:14:22,577 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 15:14:22,597 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 29 edges. 29 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:22,597 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 15:14:22,597 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:14:22,597 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 15:14:22,597 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-15 15:14:22,597 INFO L87 Difference]: Start difference. First operand 29 states and 31 transitions. Second operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 15:14:22,696 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:22,697 INFO L93 Difference]: Finished difference Result 43 states and 46 transitions. [2022-04-15 15:14:22,697 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-15 15:14:22,697 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) Word has length 32 [2022-04-15 15:14:22,697 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:14:22,697 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 15:14:22,698 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 45 transitions. [2022-04-15 15:14:22,699 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 15:14:22,700 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 45 transitions. [2022-04-15 15:14:22,700 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 45 transitions. [2022-04-15 15:14:22,727 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:22,728 INFO L225 Difference]: With dead ends: 43 [2022-04-15 15:14:22,728 INFO L226 Difference]: Without dead ends: 38 [2022-04-15 15:14:22,729 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 64 GetRequests, 57 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=27, Invalid=45, Unknown=0, NotChecked=0, Total=72 [2022-04-15 15:14:22,729 INFO L913 BasicCegarLoop]: 27 mSDtfsCounter, 7 mSDsluCounter, 51 mSDsCounter, 0 mSdLazyCounter, 11 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 7 SdHoareTripleChecker+Valid, 78 SdHoareTripleChecker+Invalid, 18 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 11 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 15:14:22,729 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [7 Valid, 78 Invalid, 18 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 11 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 15:14:22,730 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 38 states. [2022-04-15 15:14:22,748 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 38 to 38. [2022-04-15 15:14:22,748 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:14:22,748 INFO L82 GeneralOperation]: Start isEquivalent. First operand 38 states. Second operand has 38 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 26 states have internal predecessors, (29), 7 states have call successors, (7), 6 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-15 15:14:22,748 INFO L74 IsIncluded]: Start isIncluded. First operand 38 states. Second operand has 38 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 26 states have internal predecessors, (29), 7 states have call successors, (7), 6 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-15 15:14:22,748 INFO L87 Difference]: Start difference. First operand 38 states. Second operand has 38 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 26 states have internal predecessors, (29), 7 states have call successors, (7), 6 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-15 15:14:22,750 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:22,750 INFO L93 Difference]: Finished difference Result 38 states and 41 transitions. [2022-04-15 15:14:22,750 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 41 transitions. [2022-04-15 15:14:22,750 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:14:22,750 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:14:22,750 INFO L74 IsIncluded]: Start isIncluded. First operand has 38 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 26 states have internal predecessors, (29), 7 states have call successors, (7), 6 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 38 states. [2022-04-15 15:14:22,750 INFO L87 Difference]: Start difference. First operand has 38 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 26 states have internal predecessors, (29), 7 states have call successors, (7), 6 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 38 states. [2022-04-15 15:14:22,752 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:22,752 INFO L93 Difference]: Finished difference Result 38 states and 41 transitions. [2022-04-15 15:14:22,752 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 41 transitions. [2022-04-15 15:14:22,752 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:14:22,752 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:14:22,752 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:14:22,752 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:14:22,752 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 38 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 26 states have internal predecessors, (29), 7 states have call successors, (7), 6 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-15 15:14:22,753 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 41 transitions. [2022-04-15 15:14:22,753 INFO L78 Accepts]: Start accepts. Automaton has 38 states and 41 transitions. Word has length 32 [2022-04-15 15:14:22,753 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:14:22,753 INFO L478 AbstractCegarLoop]: Abstraction has 38 states and 41 transitions. [2022-04-15 15:14:22,754 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 15:14:22,754 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 38 states and 41 transitions. [2022-04-15 15:14:23,627 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:23,627 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 41 transitions. [2022-04-15 15:14:23,628 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-15 15:14:23,628 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:14:23,628 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 15:14:23,643 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Ended with exit code 0 [2022-04-15 15:14:23,839 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:14:23,839 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:14:23,840 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:14:23,840 INFO L85 PathProgramCache]: Analyzing trace with hash 1448743382, now seen corresponding path program 3 times [2022-04-15 15:14:23,840 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:14:23,840 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [762260644] [2022-04-15 15:14:23,841 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:14:23,841 INFO L85 PathProgramCache]: Analyzing trace with hash 1448743382, now seen corresponding path program 4 times [2022-04-15 15:14:23,841 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:14:23,841 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [954729688] [2022-04-15 15:14:23,841 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:14:23,841 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:14:23,856 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:14:23,856 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2101409520] [2022-04-15 15:14:23,857 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 15:14:23,857 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:14:23,857 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:14:23,858 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-15 15:14:23,858 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-15 15:14:23,905 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 15:14:23,905 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:14:23,906 INFO L263 TraceCheckSpWp]: Trace formula consists of 133 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-15 15:14:23,913 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:14:23,914 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:14:24,063 INFO L272 TraceCheckUtils]: 0: Hoare triple {1669#true} call ULTIMATE.init(); {1669#true} is VALID [2022-04-15 15:14:24,063 INFO L290 TraceCheckUtils]: 1: Hoare triple {1669#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1677#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:24,064 INFO L290 TraceCheckUtils]: 2: Hoare triple {1677#(<= ~counter~0 0)} assume true; {1677#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:24,064 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1677#(<= ~counter~0 0)} {1669#true} #67#return; {1677#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:24,064 INFO L272 TraceCheckUtils]: 4: Hoare triple {1677#(<= ~counter~0 0)} call #t~ret7 := main(); {1677#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:24,065 INFO L290 TraceCheckUtils]: 5: Hoare triple {1677#(<= ~counter~0 0)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {1677#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:24,065 INFO L272 TraceCheckUtils]: 6: Hoare triple {1677#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {1677#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:24,065 INFO L290 TraceCheckUtils]: 7: Hoare triple {1677#(<= ~counter~0 0)} ~cond := #in~cond; {1677#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:24,069 INFO L290 TraceCheckUtils]: 8: Hoare triple {1677#(<= ~counter~0 0)} assume !(0 == ~cond); {1677#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:24,069 INFO L290 TraceCheckUtils]: 9: Hoare triple {1677#(<= ~counter~0 0)} assume true; {1677#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:24,069 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1677#(<= ~counter~0 0)} {1677#(<= ~counter~0 0)} #59#return; {1677#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:24,070 INFO L272 TraceCheckUtils]: 11: Hoare triple {1677#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {1677#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:24,070 INFO L290 TraceCheckUtils]: 12: Hoare triple {1677#(<= ~counter~0 0)} ~cond := #in~cond; {1677#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:24,070 INFO L290 TraceCheckUtils]: 13: Hoare triple {1677#(<= ~counter~0 0)} assume !(0 == ~cond); {1677#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:24,071 INFO L290 TraceCheckUtils]: 14: Hoare triple {1677#(<= ~counter~0 0)} assume true; {1677#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:24,071 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1677#(<= ~counter~0 0)} {1677#(<= ~counter~0 0)} #61#return; {1677#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:24,071 INFO L290 TraceCheckUtils]: 16: Hoare triple {1677#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {1677#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:24,072 INFO L290 TraceCheckUtils]: 17: Hoare triple {1677#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1726#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:24,072 INFO L290 TraceCheckUtils]: 18: Hoare triple {1726#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {1726#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:24,073 INFO L272 TraceCheckUtils]: 19: Hoare triple {1726#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {1726#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:24,073 INFO L290 TraceCheckUtils]: 20: Hoare triple {1726#(<= ~counter~0 1)} ~cond := #in~cond; {1726#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:24,073 INFO L290 TraceCheckUtils]: 21: Hoare triple {1726#(<= ~counter~0 1)} assume !(0 == ~cond); {1726#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:24,074 INFO L290 TraceCheckUtils]: 22: Hoare triple {1726#(<= ~counter~0 1)} assume true; {1726#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:24,074 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1726#(<= ~counter~0 1)} {1726#(<= ~counter~0 1)} #63#return; {1726#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:24,074 INFO L290 TraceCheckUtils]: 24: Hoare triple {1726#(<= ~counter~0 1)} assume !!(0 != ~r~0); {1726#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:24,074 INFO L290 TraceCheckUtils]: 25: Hoare triple {1726#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {1726#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:24,075 INFO L290 TraceCheckUtils]: 26: Hoare triple {1726#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1754#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:24,075 INFO L290 TraceCheckUtils]: 27: Hoare triple {1754#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {1754#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:24,076 INFO L272 TraceCheckUtils]: 28: Hoare triple {1754#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {1754#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:24,076 INFO L290 TraceCheckUtils]: 29: Hoare triple {1754#(<= ~counter~0 2)} ~cond := #in~cond; {1754#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:24,076 INFO L290 TraceCheckUtils]: 30: Hoare triple {1754#(<= ~counter~0 2)} assume !(0 == ~cond); {1754#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:24,076 INFO L290 TraceCheckUtils]: 31: Hoare triple {1754#(<= ~counter~0 2)} assume true; {1754#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:24,077 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1754#(<= ~counter~0 2)} {1754#(<= ~counter~0 2)} #63#return; {1754#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:24,077 INFO L290 TraceCheckUtils]: 33: Hoare triple {1754#(<= ~counter~0 2)} assume !!(0 != ~r~0); {1754#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:24,077 INFO L290 TraceCheckUtils]: 34: Hoare triple {1754#(<= ~counter~0 2)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {1754#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:24,078 INFO L290 TraceCheckUtils]: 35: Hoare triple {1754#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1782#(<= |main_#t~post6| 2)} is VALID [2022-04-15 15:14:24,078 INFO L290 TraceCheckUtils]: 36: Hoare triple {1782#(<= |main_#t~post6| 2)} assume !(#t~post6 < 10);havoc #t~post6; {1670#false} is VALID [2022-04-15 15:14:24,078 INFO L272 TraceCheckUtils]: 37: Hoare triple {1670#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {1670#false} is VALID [2022-04-15 15:14:24,078 INFO L290 TraceCheckUtils]: 38: Hoare triple {1670#false} ~cond := #in~cond; {1670#false} is VALID [2022-04-15 15:14:24,078 INFO L290 TraceCheckUtils]: 39: Hoare triple {1670#false} assume 0 == ~cond; {1670#false} is VALID [2022-04-15 15:14:24,078 INFO L290 TraceCheckUtils]: 40: Hoare triple {1670#false} assume !false; {1670#false} is VALID [2022-04-15 15:14:24,079 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 4 proven. 13 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 15:14:24,080 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 15:14:24,245 INFO L290 TraceCheckUtils]: 40: Hoare triple {1670#false} assume !false; {1670#false} is VALID [2022-04-15 15:14:24,246 INFO L290 TraceCheckUtils]: 39: Hoare triple {1670#false} assume 0 == ~cond; {1670#false} is VALID [2022-04-15 15:14:24,246 INFO L290 TraceCheckUtils]: 38: Hoare triple {1670#false} ~cond := #in~cond; {1670#false} is VALID [2022-04-15 15:14:24,246 INFO L272 TraceCheckUtils]: 37: Hoare triple {1670#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {1670#false} is VALID [2022-04-15 15:14:24,246 INFO L290 TraceCheckUtils]: 36: Hoare triple {1810#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {1670#false} is VALID [2022-04-15 15:14:24,246 INFO L290 TraceCheckUtils]: 35: Hoare triple {1814#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1810#(< |main_#t~post6| 10)} is VALID [2022-04-15 15:14:24,247 INFO L290 TraceCheckUtils]: 34: Hoare triple {1814#(< ~counter~0 10)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {1814#(< ~counter~0 10)} is VALID [2022-04-15 15:14:24,247 INFO L290 TraceCheckUtils]: 33: Hoare triple {1814#(< ~counter~0 10)} assume !!(0 != ~r~0); {1814#(< ~counter~0 10)} is VALID [2022-04-15 15:14:24,247 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1669#true} {1814#(< ~counter~0 10)} #63#return; {1814#(< ~counter~0 10)} is VALID [2022-04-15 15:14:24,248 INFO L290 TraceCheckUtils]: 31: Hoare triple {1669#true} assume true; {1669#true} is VALID [2022-04-15 15:14:24,248 INFO L290 TraceCheckUtils]: 30: Hoare triple {1669#true} assume !(0 == ~cond); {1669#true} is VALID [2022-04-15 15:14:24,252 INFO L290 TraceCheckUtils]: 29: Hoare triple {1669#true} ~cond := #in~cond; {1669#true} is VALID [2022-04-15 15:14:24,252 INFO L272 TraceCheckUtils]: 28: Hoare triple {1814#(< ~counter~0 10)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {1669#true} is VALID [2022-04-15 15:14:24,253 INFO L290 TraceCheckUtils]: 27: Hoare triple {1814#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {1814#(< ~counter~0 10)} is VALID [2022-04-15 15:14:24,254 INFO L290 TraceCheckUtils]: 26: Hoare triple {1842#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1814#(< ~counter~0 10)} is VALID [2022-04-15 15:14:24,256 INFO L290 TraceCheckUtils]: 25: Hoare triple {1842#(< ~counter~0 9)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {1842#(< ~counter~0 9)} is VALID [2022-04-15 15:14:24,257 INFO L290 TraceCheckUtils]: 24: Hoare triple {1842#(< ~counter~0 9)} assume !!(0 != ~r~0); {1842#(< ~counter~0 9)} is VALID [2022-04-15 15:14:24,258 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1669#true} {1842#(< ~counter~0 9)} #63#return; {1842#(< ~counter~0 9)} is VALID [2022-04-15 15:14:24,258 INFO L290 TraceCheckUtils]: 22: Hoare triple {1669#true} assume true; {1669#true} is VALID [2022-04-15 15:14:24,258 INFO L290 TraceCheckUtils]: 21: Hoare triple {1669#true} assume !(0 == ~cond); {1669#true} is VALID [2022-04-15 15:14:24,258 INFO L290 TraceCheckUtils]: 20: Hoare triple {1669#true} ~cond := #in~cond; {1669#true} is VALID [2022-04-15 15:14:24,259 INFO L272 TraceCheckUtils]: 19: Hoare triple {1842#(< ~counter~0 9)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {1669#true} is VALID [2022-04-15 15:14:24,261 INFO L290 TraceCheckUtils]: 18: Hoare triple {1842#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {1842#(< ~counter~0 9)} is VALID [2022-04-15 15:14:24,262 INFO L290 TraceCheckUtils]: 17: Hoare triple {1870#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1842#(< ~counter~0 9)} is VALID [2022-04-15 15:14:24,264 INFO L290 TraceCheckUtils]: 16: Hoare triple {1870#(< ~counter~0 8)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {1870#(< ~counter~0 8)} is VALID [2022-04-15 15:14:24,265 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1669#true} {1870#(< ~counter~0 8)} #61#return; {1870#(< ~counter~0 8)} is VALID [2022-04-15 15:14:24,265 INFO L290 TraceCheckUtils]: 14: Hoare triple {1669#true} assume true; {1669#true} is VALID [2022-04-15 15:14:24,265 INFO L290 TraceCheckUtils]: 13: Hoare triple {1669#true} assume !(0 == ~cond); {1669#true} is VALID [2022-04-15 15:14:24,265 INFO L290 TraceCheckUtils]: 12: Hoare triple {1669#true} ~cond := #in~cond; {1669#true} is VALID [2022-04-15 15:14:24,265 INFO L272 TraceCheckUtils]: 11: Hoare triple {1870#(< ~counter~0 8)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {1669#true} is VALID [2022-04-15 15:14:24,265 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1669#true} {1870#(< ~counter~0 8)} #59#return; {1870#(< ~counter~0 8)} is VALID [2022-04-15 15:14:24,265 INFO L290 TraceCheckUtils]: 9: Hoare triple {1669#true} assume true; {1669#true} is VALID [2022-04-15 15:14:24,265 INFO L290 TraceCheckUtils]: 8: Hoare triple {1669#true} assume !(0 == ~cond); {1669#true} is VALID [2022-04-15 15:14:24,266 INFO L290 TraceCheckUtils]: 7: Hoare triple {1669#true} ~cond := #in~cond; {1669#true} is VALID [2022-04-15 15:14:24,266 INFO L272 TraceCheckUtils]: 6: Hoare triple {1870#(< ~counter~0 8)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {1669#true} is VALID [2022-04-15 15:14:24,266 INFO L290 TraceCheckUtils]: 5: Hoare triple {1870#(< ~counter~0 8)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {1870#(< ~counter~0 8)} is VALID [2022-04-15 15:14:24,266 INFO L272 TraceCheckUtils]: 4: Hoare triple {1870#(< ~counter~0 8)} call #t~ret7 := main(); {1870#(< ~counter~0 8)} is VALID [2022-04-15 15:14:24,266 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1870#(< ~counter~0 8)} {1669#true} #67#return; {1870#(< ~counter~0 8)} is VALID [2022-04-15 15:14:24,267 INFO L290 TraceCheckUtils]: 2: Hoare triple {1870#(< ~counter~0 8)} assume true; {1870#(< ~counter~0 8)} is VALID [2022-04-15 15:14:24,267 INFO L290 TraceCheckUtils]: 1: Hoare triple {1669#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1870#(< ~counter~0 8)} is VALID [2022-04-15 15:14:24,267 INFO L272 TraceCheckUtils]: 0: Hoare triple {1669#true} call ULTIMATE.init(); {1669#true} is VALID [2022-04-15 15:14:24,269 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 4 proven. 9 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-04-15 15:14:24,269 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:14:24,269 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [954729688] [2022-04-15 15:14:24,269 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:14:24,269 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2101409520] [2022-04-15 15:14:24,269 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2101409520] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 15:14:24,269 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 15:14:24,269 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-15 15:14:24,270 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:14:24,270 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [762260644] [2022-04-15 15:14:24,270 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [762260644] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:14:24,270 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:14:24,270 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 15:14:24,270 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2103420788] [2022-04-15 15:14:24,270 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:14:24,271 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (7), 5 states have call predecessors, (7), 3 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) Word has length 41 [2022-04-15 15:14:24,272 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:14:24,272 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (7), 5 states have call predecessors, (7), 3 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-15 15:14:24,292 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:24,292 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 15:14:24,292 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:14:24,293 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 15:14:24,293 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-15 15:14:24,294 INFO L87 Difference]: Start difference. First operand 38 states and 41 transitions. Second operand has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (7), 5 states have call predecessors, (7), 3 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-15 15:14:24,418 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:24,418 INFO L93 Difference]: Finished difference Result 52 states and 56 transitions. [2022-04-15 15:14:24,418 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-15 15:14:24,419 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (7), 5 states have call predecessors, (7), 3 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) Word has length 41 [2022-04-15 15:14:24,419 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:14:24,419 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (7), 5 states have call predecessors, (7), 3 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-15 15:14:24,420 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 55 transitions. [2022-04-15 15:14:24,420 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (7), 5 states have call predecessors, (7), 3 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-15 15:14:24,422 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 55 transitions. [2022-04-15 15:14:24,422 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 55 transitions. [2022-04-15 15:14:24,456 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:24,457 INFO L225 Difference]: With dead ends: 52 [2022-04-15 15:14:24,457 INFO L226 Difference]: Without dead ends: 47 [2022-04-15 15:14:24,457 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 83 GetRequests, 73 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=51, Invalid=81, Unknown=0, NotChecked=0, Total=132 [2022-04-15 15:14:24,458 INFO L913 BasicCegarLoop]: 28 mSDtfsCounter, 15 mSDsluCounter, 58 mSDsCounter, 0 mSdLazyCounter, 16 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 15 SdHoareTripleChecker+Valid, 86 SdHoareTripleChecker+Invalid, 30 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 16 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 15:14:24,458 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [15 Valid, 86 Invalid, 30 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 16 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 15:14:24,458 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 47 states. [2022-04-15 15:14:24,485 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 47 to 47. [2022-04-15 15:14:24,485 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:14:24,485 INFO L82 GeneralOperation]: Start isEquivalent. First operand 47 states. Second operand has 47 states, 33 states have (on average 1.121212121212121) internal successors, (37), 33 states have internal predecessors, (37), 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-15 15:14:24,485 INFO L74 IsIncluded]: Start isIncluded. First operand 47 states. Second operand has 47 states, 33 states have (on average 1.121212121212121) internal successors, (37), 33 states have internal predecessors, (37), 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-15 15:14:24,486 INFO L87 Difference]: Start difference. First operand 47 states. Second operand has 47 states, 33 states have (on average 1.121212121212121) internal successors, (37), 33 states have internal predecessors, (37), 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-15 15:14:24,487 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:24,487 INFO L93 Difference]: Finished difference Result 47 states and 51 transitions. [2022-04-15 15:14:24,487 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 51 transitions. [2022-04-15 15:14:24,487 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:14:24,487 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:14:24,487 INFO L74 IsIncluded]: Start isIncluded. First operand has 47 states, 33 states have (on average 1.121212121212121) internal successors, (37), 33 states have internal predecessors, (37), 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 47 states. [2022-04-15 15:14:24,488 INFO L87 Difference]: Start difference. First operand has 47 states, 33 states have (on average 1.121212121212121) internal successors, (37), 33 states have internal predecessors, (37), 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 47 states. [2022-04-15 15:14:24,489 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:24,489 INFO L93 Difference]: Finished difference Result 47 states and 51 transitions. [2022-04-15 15:14:24,489 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 51 transitions. [2022-04-15 15:14:24,489 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:14:24,489 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:14:24,489 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:14:24,489 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:14:24,489 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 47 states, 33 states have (on average 1.121212121212121) internal successors, (37), 33 states have internal predecessors, (37), 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-15 15:14:24,490 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 51 transitions. [2022-04-15 15:14:24,491 INFO L78 Accepts]: Start accepts. Automaton has 47 states and 51 transitions. Word has length 41 [2022-04-15 15:14:24,491 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:14:24,491 INFO L478 AbstractCegarLoop]: Abstraction has 47 states and 51 transitions. [2022-04-15 15:14:24,491 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (7), 5 states have call predecessors, (7), 3 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-15 15:14:24,491 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 47 states and 51 transitions. [2022-04-15 15:14:26,537 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 50 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:26,537 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 51 transitions. [2022-04-15 15:14:26,537 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-04-15 15:14:26,537 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:14:26,537 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 15:14:26,553 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-15 15:14:26,743 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:14:26,743 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:14:26,744 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:14:26,744 INFO L85 PathProgramCache]: Analyzing trace with hash -678977956, now seen corresponding path program 5 times [2022-04-15 15:14:26,744 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:14:26,744 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [452050512] [2022-04-15 15:14:26,744 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:14:26,744 INFO L85 PathProgramCache]: Analyzing trace with hash -678977956, now seen corresponding path program 6 times [2022-04-15 15:14:26,744 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:14:26,744 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [975994701] [2022-04-15 15:14:26,744 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:14:26,745 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:14:26,768 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:14:26,768 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1470353437] [2022-04-15 15:14:26,769 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-15 15:14:26,769 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:14:26,769 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:14:26,772 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-15 15:14:26,772 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-15 15:14:26,824 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 4 check-sat command(s) [2022-04-15 15:14:26,825 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:14:26,825 INFO L263 TraceCheckSpWp]: Trace formula consists of 153 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-15 15:14:26,842 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:14:26,843 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:14:27,098 INFO L272 TraceCheckUtils]: 0: Hoare triple {2220#true} call ULTIMATE.init(); {2220#true} is VALID [2022-04-15 15:14:27,099 INFO L290 TraceCheckUtils]: 1: Hoare triple {2220#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2228#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:27,099 INFO L290 TraceCheckUtils]: 2: Hoare triple {2228#(<= ~counter~0 0)} assume true; {2228#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:27,100 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2228#(<= ~counter~0 0)} {2220#true} #67#return; {2228#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:27,100 INFO L272 TraceCheckUtils]: 4: Hoare triple {2228#(<= ~counter~0 0)} call #t~ret7 := main(); {2228#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:27,100 INFO L290 TraceCheckUtils]: 5: Hoare triple {2228#(<= ~counter~0 0)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {2228#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:27,101 INFO L272 TraceCheckUtils]: 6: Hoare triple {2228#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {2228#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:27,101 INFO L290 TraceCheckUtils]: 7: Hoare triple {2228#(<= ~counter~0 0)} ~cond := #in~cond; {2228#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:27,101 INFO L290 TraceCheckUtils]: 8: Hoare triple {2228#(<= ~counter~0 0)} assume !(0 == ~cond); {2228#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:27,101 INFO L290 TraceCheckUtils]: 9: Hoare triple {2228#(<= ~counter~0 0)} assume true; {2228#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:27,102 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2228#(<= ~counter~0 0)} {2228#(<= ~counter~0 0)} #59#return; {2228#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:27,102 INFO L272 TraceCheckUtils]: 11: Hoare triple {2228#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {2228#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:27,103 INFO L290 TraceCheckUtils]: 12: Hoare triple {2228#(<= ~counter~0 0)} ~cond := #in~cond; {2228#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:27,103 INFO L290 TraceCheckUtils]: 13: Hoare triple {2228#(<= ~counter~0 0)} assume !(0 == ~cond); {2228#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:27,103 INFO L290 TraceCheckUtils]: 14: Hoare triple {2228#(<= ~counter~0 0)} assume true; {2228#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:27,103 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2228#(<= ~counter~0 0)} {2228#(<= ~counter~0 0)} #61#return; {2228#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:27,104 INFO L290 TraceCheckUtils]: 16: Hoare triple {2228#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {2228#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:27,104 INFO L290 TraceCheckUtils]: 17: Hoare triple {2228#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2277#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:27,105 INFO L290 TraceCheckUtils]: 18: Hoare triple {2277#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {2277#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:27,105 INFO L272 TraceCheckUtils]: 19: Hoare triple {2277#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2277#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:27,105 INFO L290 TraceCheckUtils]: 20: Hoare triple {2277#(<= ~counter~0 1)} ~cond := #in~cond; {2277#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:27,106 INFO L290 TraceCheckUtils]: 21: Hoare triple {2277#(<= ~counter~0 1)} assume !(0 == ~cond); {2277#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:27,106 INFO L290 TraceCheckUtils]: 22: Hoare triple {2277#(<= ~counter~0 1)} assume true; {2277#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:27,107 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2277#(<= ~counter~0 1)} {2277#(<= ~counter~0 1)} #63#return; {2277#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:27,107 INFO L290 TraceCheckUtils]: 24: Hoare triple {2277#(<= ~counter~0 1)} assume !!(0 != ~r~0); {2277#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:27,107 INFO L290 TraceCheckUtils]: 25: Hoare triple {2277#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2277#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:27,108 INFO L290 TraceCheckUtils]: 26: Hoare triple {2277#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2305#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:27,108 INFO L290 TraceCheckUtils]: 27: Hoare triple {2305#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {2305#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:27,108 INFO L272 TraceCheckUtils]: 28: Hoare triple {2305#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2305#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:27,109 INFO L290 TraceCheckUtils]: 29: Hoare triple {2305#(<= ~counter~0 2)} ~cond := #in~cond; {2305#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:27,109 INFO L290 TraceCheckUtils]: 30: Hoare triple {2305#(<= ~counter~0 2)} assume !(0 == ~cond); {2305#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:27,110 INFO L290 TraceCheckUtils]: 31: Hoare triple {2305#(<= ~counter~0 2)} assume true; {2305#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:27,110 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2305#(<= ~counter~0 2)} {2305#(<= ~counter~0 2)} #63#return; {2305#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:27,111 INFO L290 TraceCheckUtils]: 33: Hoare triple {2305#(<= ~counter~0 2)} assume !!(0 != ~r~0); {2305#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:27,119 INFO L290 TraceCheckUtils]: 34: Hoare triple {2305#(<= ~counter~0 2)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2305#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:27,120 INFO L290 TraceCheckUtils]: 35: Hoare triple {2305#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2333#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:27,120 INFO L290 TraceCheckUtils]: 36: Hoare triple {2333#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {2333#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:27,121 INFO L272 TraceCheckUtils]: 37: Hoare triple {2333#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2333#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:27,121 INFO L290 TraceCheckUtils]: 38: Hoare triple {2333#(<= ~counter~0 3)} ~cond := #in~cond; {2333#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:27,121 INFO L290 TraceCheckUtils]: 39: Hoare triple {2333#(<= ~counter~0 3)} assume !(0 == ~cond); {2333#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:27,122 INFO L290 TraceCheckUtils]: 40: Hoare triple {2333#(<= ~counter~0 3)} assume true; {2333#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:27,122 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2333#(<= ~counter~0 3)} {2333#(<= ~counter~0 3)} #63#return; {2333#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:27,123 INFO L290 TraceCheckUtils]: 42: Hoare triple {2333#(<= ~counter~0 3)} assume !!(0 != ~r~0); {2333#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:27,123 INFO L290 TraceCheckUtils]: 43: Hoare triple {2333#(<= ~counter~0 3)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2333#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:27,123 INFO L290 TraceCheckUtils]: 44: Hoare triple {2333#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2361#(<= |main_#t~post6| 3)} is VALID [2022-04-15 15:14:27,124 INFO L290 TraceCheckUtils]: 45: Hoare triple {2361#(<= |main_#t~post6| 3)} assume !(#t~post6 < 10);havoc #t~post6; {2221#false} is VALID [2022-04-15 15:14:27,124 INFO L272 TraceCheckUtils]: 46: Hoare triple {2221#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2221#false} is VALID [2022-04-15 15:14:27,124 INFO L290 TraceCheckUtils]: 47: Hoare triple {2221#false} ~cond := #in~cond; {2221#false} is VALID [2022-04-15 15:14:27,124 INFO L290 TraceCheckUtils]: 48: Hoare triple {2221#false} assume 0 == ~cond; {2221#false} is VALID [2022-04-15 15:14:27,124 INFO L290 TraceCheckUtils]: 49: Hoare triple {2221#false} assume !false; {2221#false} is VALID [2022-04-15 15:14:27,124 INFO L134 CoverageAnalysis]: Checked inductivity of 43 backedges. 6 proven. 33 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 15:14:27,124 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 15:14:27,366 INFO L290 TraceCheckUtils]: 49: Hoare triple {2221#false} assume !false; {2221#false} is VALID [2022-04-15 15:14:27,366 INFO L290 TraceCheckUtils]: 48: Hoare triple {2221#false} assume 0 == ~cond; {2221#false} is VALID [2022-04-15 15:14:27,366 INFO L290 TraceCheckUtils]: 47: Hoare triple {2221#false} ~cond := #in~cond; {2221#false} is VALID [2022-04-15 15:14:27,366 INFO L272 TraceCheckUtils]: 46: Hoare triple {2221#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2221#false} is VALID [2022-04-15 15:14:27,367 INFO L290 TraceCheckUtils]: 45: Hoare triple {2389#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {2221#false} is VALID [2022-04-15 15:14:27,367 INFO L290 TraceCheckUtils]: 44: Hoare triple {2393#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2389#(< |main_#t~post6| 10)} is VALID [2022-04-15 15:14:27,367 INFO L290 TraceCheckUtils]: 43: Hoare triple {2393#(< ~counter~0 10)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2393#(< ~counter~0 10)} is VALID [2022-04-15 15:14:27,368 INFO L290 TraceCheckUtils]: 42: Hoare triple {2393#(< ~counter~0 10)} assume !!(0 != ~r~0); {2393#(< ~counter~0 10)} is VALID [2022-04-15 15:14:27,368 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2220#true} {2393#(< ~counter~0 10)} #63#return; {2393#(< ~counter~0 10)} is VALID [2022-04-15 15:14:27,368 INFO L290 TraceCheckUtils]: 40: Hoare triple {2220#true} assume true; {2220#true} is VALID [2022-04-15 15:14:27,368 INFO L290 TraceCheckUtils]: 39: Hoare triple {2220#true} assume !(0 == ~cond); {2220#true} is VALID [2022-04-15 15:14:27,368 INFO L290 TraceCheckUtils]: 38: Hoare triple {2220#true} ~cond := #in~cond; {2220#true} is VALID [2022-04-15 15:14:27,369 INFO L272 TraceCheckUtils]: 37: Hoare triple {2393#(< ~counter~0 10)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2220#true} is VALID [2022-04-15 15:14:27,369 INFO L290 TraceCheckUtils]: 36: Hoare triple {2393#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {2393#(< ~counter~0 10)} is VALID [2022-04-15 15:14:27,369 INFO L290 TraceCheckUtils]: 35: Hoare triple {2421#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2393#(< ~counter~0 10)} is VALID [2022-04-15 15:14:27,370 INFO L290 TraceCheckUtils]: 34: Hoare triple {2421#(< ~counter~0 9)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2421#(< ~counter~0 9)} is VALID [2022-04-15 15:14:27,370 INFO L290 TraceCheckUtils]: 33: Hoare triple {2421#(< ~counter~0 9)} assume !!(0 != ~r~0); {2421#(< ~counter~0 9)} is VALID [2022-04-15 15:14:27,370 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2220#true} {2421#(< ~counter~0 9)} #63#return; {2421#(< ~counter~0 9)} is VALID [2022-04-15 15:14:27,370 INFO L290 TraceCheckUtils]: 31: Hoare triple {2220#true} assume true; {2220#true} is VALID [2022-04-15 15:14:27,370 INFO L290 TraceCheckUtils]: 30: Hoare triple {2220#true} assume !(0 == ~cond); {2220#true} is VALID [2022-04-15 15:14:27,371 INFO L290 TraceCheckUtils]: 29: Hoare triple {2220#true} ~cond := #in~cond; {2220#true} is VALID [2022-04-15 15:14:27,371 INFO L272 TraceCheckUtils]: 28: Hoare triple {2421#(< ~counter~0 9)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2220#true} is VALID [2022-04-15 15:14:27,371 INFO L290 TraceCheckUtils]: 27: Hoare triple {2421#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {2421#(< ~counter~0 9)} is VALID [2022-04-15 15:14:27,371 INFO L290 TraceCheckUtils]: 26: Hoare triple {2449#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2421#(< ~counter~0 9)} is VALID [2022-04-15 15:14:27,372 INFO L290 TraceCheckUtils]: 25: Hoare triple {2449#(< ~counter~0 8)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2449#(< ~counter~0 8)} is VALID [2022-04-15 15:14:27,372 INFO L290 TraceCheckUtils]: 24: Hoare triple {2449#(< ~counter~0 8)} assume !!(0 != ~r~0); {2449#(< ~counter~0 8)} is VALID [2022-04-15 15:14:27,373 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2220#true} {2449#(< ~counter~0 8)} #63#return; {2449#(< ~counter~0 8)} is VALID [2022-04-15 15:14:27,373 INFO L290 TraceCheckUtils]: 22: Hoare triple {2220#true} assume true; {2220#true} is VALID [2022-04-15 15:14:27,373 INFO L290 TraceCheckUtils]: 21: Hoare triple {2220#true} assume !(0 == ~cond); {2220#true} is VALID [2022-04-15 15:14:27,373 INFO L290 TraceCheckUtils]: 20: Hoare triple {2220#true} ~cond := #in~cond; {2220#true} is VALID [2022-04-15 15:14:27,373 INFO L272 TraceCheckUtils]: 19: Hoare triple {2449#(< ~counter~0 8)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2220#true} is VALID [2022-04-15 15:14:27,373 INFO L290 TraceCheckUtils]: 18: Hoare triple {2449#(< ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {2449#(< ~counter~0 8)} is VALID [2022-04-15 15:14:27,374 INFO L290 TraceCheckUtils]: 17: Hoare triple {2477#(< ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2449#(< ~counter~0 8)} is VALID [2022-04-15 15:14:27,374 INFO L290 TraceCheckUtils]: 16: Hoare triple {2477#(< ~counter~0 7)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {2477#(< ~counter~0 7)} is VALID [2022-04-15 15:14:27,374 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2220#true} {2477#(< ~counter~0 7)} #61#return; {2477#(< ~counter~0 7)} is VALID [2022-04-15 15:14:27,374 INFO L290 TraceCheckUtils]: 14: Hoare triple {2220#true} assume true; {2220#true} is VALID [2022-04-15 15:14:27,374 INFO L290 TraceCheckUtils]: 13: Hoare triple {2220#true} assume !(0 == ~cond); {2220#true} is VALID [2022-04-15 15:14:27,374 INFO L290 TraceCheckUtils]: 12: Hoare triple {2220#true} ~cond := #in~cond; {2220#true} is VALID [2022-04-15 15:14:27,375 INFO L272 TraceCheckUtils]: 11: Hoare triple {2477#(< ~counter~0 7)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {2220#true} is VALID [2022-04-15 15:14:27,375 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2220#true} {2477#(< ~counter~0 7)} #59#return; {2477#(< ~counter~0 7)} is VALID [2022-04-15 15:14:27,375 INFO L290 TraceCheckUtils]: 9: Hoare triple {2220#true} assume true; {2220#true} is VALID [2022-04-15 15:14:27,375 INFO L290 TraceCheckUtils]: 8: Hoare triple {2220#true} assume !(0 == ~cond); {2220#true} is VALID [2022-04-15 15:14:27,375 INFO L290 TraceCheckUtils]: 7: Hoare triple {2220#true} ~cond := #in~cond; {2220#true} is VALID [2022-04-15 15:14:27,375 INFO L272 TraceCheckUtils]: 6: Hoare triple {2477#(< ~counter~0 7)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {2220#true} is VALID [2022-04-15 15:14:27,376 INFO L290 TraceCheckUtils]: 5: Hoare triple {2477#(< ~counter~0 7)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {2477#(< ~counter~0 7)} is VALID [2022-04-15 15:14:27,376 INFO L272 TraceCheckUtils]: 4: Hoare triple {2477#(< ~counter~0 7)} call #t~ret7 := main(); {2477#(< ~counter~0 7)} is VALID [2022-04-15 15:14:27,376 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2477#(< ~counter~0 7)} {2220#true} #67#return; {2477#(< ~counter~0 7)} is VALID [2022-04-15 15:14:27,376 INFO L290 TraceCheckUtils]: 2: Hoare triple {2477#(< ~counter~0 7)} assume true; {2477#(< ~counter~0 7)} is VALID [2022-04-15 15:14:27,377 INFO L290 TraceCheckUtils]: 1: Hoare triple {2220#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2477#(< ~counter~0 7)} is VALID [2022-04-15 15:14:27,377 INFO L272 TraceCheckUtils]: 0: Hoare triple {2220#true} call ULTIMATE.init(); {2220#true} is VALID [2022-04-15 15:14:27,377 INFO L134 CoverageAnalysis]: Checked inductivity of 43 backedges. 6 proven. 21 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-15 15:14:27,377 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:14:27,378 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [975994701] [2022-04-15 15:14:27,378 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:14:27,378 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1470353437] [2022-04-15 15:14:27,378 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1470353437] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 15:14:27,378 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 15:14:27,378 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-15 15:14:27,378 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:14:27,378 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [452050512] [2022-04-15 15:14:27,378 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [452050512] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:14:27,378 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:14:27,378 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-15 15:14:27,378 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1553804462] [2022-04-15 15:14:27,379 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:14:27,379 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 6 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) Word has length 50 [2022-04-15 15:14:27,379 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:14:27,379 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 6 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-15 15:14:27,407 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:27,407 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-15 15:14:27,407 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:14:27,407 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-15 15:14:27,408 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=82, Unknown=0, NotChecked=0, Total=132 [2022-04-15 15:14:27,408 INFO L87 Difference]: Start difference. First operand 47 states and 51 transitions. Second operand has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 6 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-15 15:14:27,542 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:27,542 INFO L93 Difference]: Finished difference Result 61 states and 66 transitions. [2022-04-15 15:14:27,542 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-15 15:14:27,543 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 6 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) Word has length 50 [2022-04-15 15:14:27,543 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:14:27,543 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 6 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-15 15:14:27,544 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 65 transitions. [2022-04-15 15:14:27,545 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 6 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-15 15:14:27,546 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 65 transitions. [2022-04-15 15:14:27,546 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 65 transitions. [2022-04-15 15:14:27,588 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:27,589 INFO L225 Difference]: With dead ends: 61 [2022-04-15 15:14:27,589 INFO L226 Difference]: Without dead ends: 56 [2022-04-15 15:14:27,589 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 102 GetRequests, 89 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=83, Invalid=127, Unknown=0, NotChecked=0, Total=210 [2022-04-15 15:14:27,589 INFO L913 BasicCegarLoop]: 29 mSDtfsCounter, 10 mSDsluCounter, 65 mSDsCounter, 0 mSdLazyCounter, 20 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 94 SdHoareTripleChecker+Invalid, 27 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 20 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 15:14:27,590 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [10 Valid, 94 Invalid, 27 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 20 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 15:14:27,590 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 56 states. [2022-04-15 15:14:27,627 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 56 to 56. [2022-04-15 15:14:27,628 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:14:27,628 INFO L82 GeneralOperation]: Start isEquivalent. First operand 56 states. Second operand has 56 states, 40 states have (on average 1.125) internal successors, (45), 40 states have internal predecessors, (45), 9 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 15:14:27,629 INFO L74 IsIncluded]: Start isIncluded. First operand 56 states. Second operand has 56 states, 40 states have (on average 1.125) internal successors, (45), 40 states have internal predecessors, (45), 9 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 15:14:27,629 INFO L87 Difference]: Start difference. First operand 56 states. Second operand has 56 states, 40 states have (on average 1.125) internal successors, (45), 40 states have internal predecessors, (45), 9 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 15:14:27,631 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:27,631 INFO L93 Difference]: Finished difference Result 56 states and 61 transitions. [2022-04-15 15:14:27,631 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 61 transitions. [2022-04-15 15:14:27,631 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:14:27,632 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:14:27,632 INFO L74 IsIncluded]: Start isIncluded. First operand has 56 states, 40 states have (on average 1.125) internal successors, (45), 40 states have internal predecessors, (45), 9 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 56 states. [2022-04-15 15:14:27,633 INFO L87 Difference]: Start difference. First operand has 56 states, 40 states have (on average 1.125) internal successors, (45), 40 states have internal predecessors, (45), 9 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 56 states. [2022-04-15 15:14:27,634 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:27,634 INFO L93 Difference]: Finished difference Result 56 states and 61 transitions. [2022-04-15 15:14:27,634 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 61 transitions. [2022-04-15 15:14:27,635 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:14:27,635 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:14:27,635 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:14:27,635 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:14:27,635 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 56 states, 40 states have (on average 1.125) internal successors, (45), 40 states have internal predecessors, (45), 9 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 15:14:27,636 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 61 transitions. [2022-04-15 15:14:27,636 INFO L78 Accepts]: Start accepts. Automaton has 56 states and 61 transitions. Word has length 50 [2022-04-15 15:14:27,636 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:14:27,636 INFO L478 AbstractCegarLoop]: Abstraction has 56 states and 61 transitions. [2022-04-15 15:14:27,636 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 6 states have internal predecessors, (33), 6 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-15 15:14:27,637 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 56 states and 61 transitions. [2022-04-15 15:14:29,693 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 60 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:29,693 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 61 transitions. [2022-04-15 15:14:29,694 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 60 [2022-04-15 15:14:29,694 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:14:29,694 INFO L499 BasicCegarLoop]: trace histogram [5, 5, 4, 4, 4, 4, 4, 4, 4, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 15:14:29,710 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-15 15:14:29,903 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:14:29,903 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:14:29,904 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:14:29,904 INFO L85 PathProgramCache]: Analyzing trace with hash 1632159894, now seen corresponding path program 7 times [2022-04-15 15:14:29,904 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:14:29,904 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1249318997] [2022-04-15 15:14:29,904 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:14:29,904 INFO L85 PathProgramCache]: Analyzing trace with hash 1632159894, now seen corresponding path program 8 times [2022-04-15 15:14:29,904 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:14:29,905 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [911065241] [2022-04-15 15:14:29,905 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:14:29,905 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:14:29,926 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:14:29,926 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [846531790] [2022-04-15 15:14:29,926 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 15:14:29,926 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:14:29,926 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:14:29,943 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-15 15:14:29,946 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-15 15:14:29,984 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 15:14:29,984 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:14:29,985 INFO L263 TraceCheckSpWp]: Trace formula consists of 173 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-15 15:14:29,997 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:14:30,001 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:14:30,263 INFO L272 TraceCheckUtils]: 0: Hoare triple {2883#true} call ULTIMATE.init(); {2883#true} is VALID [2022-04-15 15:14:30,266 INFO L290 TraceCheckUtils]: 1: Hoare triple {2883#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2891#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:30,267 INFO L290 TraceCheckUtils]: 2: Hoare triple {2891#(<= ~counter~0 0)} assume true; {2891#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:30,268 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2891#(<= ~counter~0 0)} {2883#true} #67#return; {2891#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:30,268 INFO L272 TraceCheckUtils]: 4: Hoare triple {2891#(<= ~counter~0 0)} call #t~ret7 := main(); {2891#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:30,269 INFO L290 TraceCheckUtils]: 5: Hoare triple {2891#(<= ~counter~0 0)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {2891#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:30,269 INFO L272 TraceCheckUtils]: 6: Hoare triple {2891#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {2891#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:30,269 INFO L290 TraceCheckUtils]: 7: Hoare triple {2891#(<= ~counter~0 0)} ~cond := #in~cond; {2891#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:30,269 INFO L290 TraceCheckUtils]: 8: Hoare triple {2891#(<= ~counter~0 0)} assume !(0 == ~cond); {2891#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:30,270 INFO L290 TraceCheckUtils]: 9: Hoare triple {2891#(<= ~counter~0 0)} assume true; {2891#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:30,270 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2891#(<= ~counter~0 0)} {2891#(<= ~counter~0 0)} #59#return; {2891#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:30,270 INFO L272 TraceCheckUtils]: 11: Hoare triple {2891#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {2891#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:30,271 INFO L290 TraceCheckUtils]: 12: Hoare triple {2891#(<= ~counter~0 0)} ~cond := #in~cond; {2891#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:30,271 INFO L290 TraceCheckUtils]: 13: Hoare triple {2891#(<= ~counter~0 0)} assume !(0 == ~cond); {2891#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:30,271 INFO L290 TraceCheckUtils]: 14: Hoare triple {2891#(<= ~counter~0 0)} assume true; {2891#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:30,272 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2891#(<= ~counter~0 0)} {2891#(<= ~counter~0 0)} #61#return; {2891#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:30,272 INFO L290 TraceCheckUtils]: 16: Hoare triple {2891#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {2891#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:30,272 INFO L290 TraceCheckUtils]: 17: Hoare triple {2891#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2940#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:30,272 INFO L290 TraceCheckUtils]: 18: Hoare triple {2940#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {2940#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:30,273 INFO L272 TraceCheckUtils]: 19: Hoare triple {2940#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2940#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:30,273 INFO L290 TraceCheckUtils]: 20: Hoare triple {2940#(<= ~counter~0 1)} ~cond := #in~cond; {2940#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:30,273 INFO L290 TraceCheckUtils]: 21: Hoare triple {2940#(<= ~counter~0 1)} assume !(0 == ~cond); {2940#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:30,274 INFO L290 TraceCheckUtils]: 22: Hoare triple {2940#(<= ~counter~0 1)} assume true; {2940#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:30,274 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2940#(<= ~counter~0 1)} {2940#(<= ~counter~0 1)} #63#return; {2940#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:30,274 INFO L290 TraceCheckUtils]: 24: Hoare triple {2940#(<= ~counter~0 1)} assume !!(0 != ~r~0); {2940#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:30,275 INFO L290 TraceCheckUtils]: 25: Hoare triple {2940#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2940#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:30,278 INFO L290 TraceCheckUtils]: 26: Hoare triple {2940#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2968#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:30,278 INFO L290 TraceCheckUtils]: 27: Hoare triple {2968#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {2968#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:30,279 INFO L272 TraceCheckUtils]: 28: Hoare triple {2968#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2968#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:30,279 INFO L290 TraceCheckUtils]: 29: Hoare triple {2968#(<= ~counter~0 2)} ~cond := #in~cond; {2968#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:30,279 INFO L290 TraceCheckUtils]: 30: Hoare triple {2968#(<= ~counter~0 2)} assume !(0 == ~cond); {2968#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:30,280 INFO L290 TraceCheckUtils]: 31: Hoare triple {2968#(<= ~counter~0 2)} assume true; {2968#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:30,280 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2968#(<= ~counter~0 2)} {2968#(<= ~counter~0 2)} #63#return; {2968#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:30,280 INFO L290 TraceCheckUtils]: 33: Hoare triple {2968#(<= ~counter~0 2)} assume !!(0 != ~r~0); {2968#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:30,281 INFO L290 TraceCheckUtils]: 34: Hoare triple {2968#(<= ~counter~0 2)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2968#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:30,281 INFO L290 TraceCheckUtils]: 35: Hoare triple {2968#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2996#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:30,281 INFO L290 TraceCheckUtils]: 36: Hoare triple {2996#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {2996#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:30,282 INFO L272 TraceCheckUtils]: 37: Hoare triple {2996#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2996#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:30,282 INFO L290 TraceCheckUtils]: 38: Hoare triple {2996#(<= ~counter~0 3)} ~cond := #in~cond; {2996#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:30,282 INFO L290 TraceCheckUtils]: 39: Hoare triple {2996#(<= ~counter~0 3)} assume !(0 == ~cond); {2996#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:30,283 INFO L290 TraceCheckUtils]: 40: Hoare triple {2996#(<= ~counter~0 3)} assume true; {2996#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:30,283 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2996#(<= ~counter~0 3)} {2996#(<= ~counter~0 3)} #63#return; {2996#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:30,283 INFO L290 TraceCheckUtils]: 42: Hoare triple {2996#(<= ~counter~0 3)} assume !!(0 != ~r~0); {2996#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:30,284 INFO L290 TraceCheckUtils]: 43: Hoare triple {2996#(<= ~counter~0 3)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2996#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:30,284 INFO L290 TraceCheckUtils]: 44: Hoare triple {2996#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3024#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:30,284 INFO L290 TraceCheckUtils]: 45: Hoare triple {3024#(<= ~counter~0 4)} assume !!(#t~post6 < 10);havoc #t~post6; {3024#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:30,285 INFO L272 TraceCheckUtils]: 46: Hoare triple {3024#(<= ~counter~0 4)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {3024#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:30,285 INFO L290 TraceCheckUtils]: 47: Hoare triple {3024#(<= ~counter~0 4)} ~cond := #in~cond; {3024#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:30,285 INFO L290 TraceCheckUtils]: 48: Hoare triple {3024#(<= ~counter~0 4)} assume !(0 == ~cond); {3024#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:30,285 INFO L290 TraceCheckUtils]: 49: Hoare triple {3024#(<= ~counter~0 4)} assume true; {3024#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:30,286 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {3024#(<= ~counter~0 4)} {3024#(<= ~counter~0 4)} #63#return; {3024#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:30,286 INFO L290 TraceCheckUtils]: 51: Hoare triple {3024#(<= ~counter~0 4)} assume !!(0 != ~r~0); {3024#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:30,286 INFO L290 TraceCheckUtils]: 52: Hoare triple {3024#(<= ~counter~0 4)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3024#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:30,287 INFO L290 TraceCheckUtils]: 53: Hoare triple {3024#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3052#(<= |main_#t~post6| 4)} is VALID [2022-04-15 15:14:30,287 INFO L290 TraceCheckUtils]: 54: Hoare triple {3052#(<= |main_#t~post6| 4)} assume !(#t~post6 < 10);havoc #t~post6; {2884#false} is VALID [2022-04-15 15:14:30,287 INFO L272 TraceCheckUtils]: 55: Hoare triple {2884#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2884#false} is VALID [2022-04-15 15:14:30,287 INFO L290 TraceCheckUtils]: 56: Hoare triple {2884#false} ~cond := #in~cond; {2884#false} is VALID [2022-04-15 15:14:30,287 INFO L290 TraceCheckUtils]: 57: Hoare triple {2884#false} assume 0 == ~cond; {2884#false} is VALID [2022-04-15 15:14:30,287 INFO L290 TraceCheckUtils]: 58: Hoare triple {2884#false} assume !false; {2884#false} is VALID [2022-04-15 15:14:30,288 INFO L134 CoverageAnalysis]: Checked inductivity of 74 backedges. 8 proven. 62 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 15:14:30,288 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 15:14:30,546 INFO L290 TraceCheckUtils]: 58: Hoare triple {2884#false} assume !false; {2884#false} is VALID [2022-04-15 15:14:30,546 INFO L290 TraceCheckUtils]: 57: Hoare triple {2884#false} assume 0 == ~cond; {2884#false} is VALID [2022-04-15 15:14:30,546 INFO L290 TraceCheckUtils]: 56: Hoare triple {2884#false} ~cond := #in~cond; {2884#false} is VALID [2022-04-15 15:14:30,546 INFO L272 TraceCheckUtils]: 55: Hoare triple {2884#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2884#false} is VALID [2022-04-15 15:14:30,546 INFO L290 TraceCheckUtils]: 54: Hoare triple {3080#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {2884#false} is VALID [2022-04-15 15:14:30,547 INFO L290 TraceCheckUtils]: 53: Hoare triple {3084#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3080#(< |main_#t~post6| 10)} is VALID [2022-04-15 15:14:30,547 INFO L290 TraceCheckUtils]: 52: Hoare triple {3084#(< ~counter~0 10)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3084#(< ~counter~0 10)} is VALID [2022-04-15 15:14:30,547 INFO L290 TraceCheckUtils]: 51: Hoare triple {3084#(< ~counter~0 10)} assume !!(0 != ~r~0); {3084#(< ~counter~0 10)} is VALID [2022-04-15 15:14:30,548 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2883#true} {3084#(< ~counter~0 10)} #63#return; {3084#(< ~counter~0 10)} is VALID [2022-04-15 15:14:30,548 INFO L290 TraceCheckUtils]: 49: Hoare triple {2883#true} assume true; {2883#true} is VALID [2022-04-15 15:14:30,548 INFO L290 TraceCheckUtils]: 48: Hoare triple {2883#true} assume !(0 == ~cond); {2883#true} is VALID [2022-04-15 15:14:30,548 INFO L290 TraceCheckUtils]: 47: Hoare triple {2883#true} ~cond := #in~cond; {2883#true} is VALID [2022-04-15 15:14:30,548 INFO L272 TraceCheckUtils]: 46: Hoare triple {3084#(< ~counter~0 10)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2883#true} is VALID [2022-04-15 15:14:30,548 INFO L290 TraceCheckUtils]: 45: Hoare triple {3084#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {3084#(< ~counter~0 10)} is VALID [2022-04-15 15:14:30,549 INFO L290 TraceCheckUtils]: 44: Hoare triple {3112#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3084#(< ~counter~0 10)} is VALID [2022-04-15 15:14:30,549 INFO L290 TraceCheckUtils]: 43: Hoare triple {3112#(< ~counter~0 9)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3112#(< ~counter~0 9)} is VALID [2022-04-15 15:14:30,549 INFO L290 TraceCheckUtils]: 42: Hoare triple {3112#(< ~counter~0 9)} assume !!(0 != ~r~0); {3112#(< ~counter~0 9)} is VALID [2022-04-15 15:14:30,550 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2883#true} {3112#(< ~counter~0 9)} #63#return; {3112#(< ~counter~0 9)} is VALID [2022-04-15 15:14:30,550 INFO L290 TraceCheckUtils]: 40: Hoare triple {2883#true} assume true; {2883#true} is VALID [2022-04-15 15:14:30,550 INFO L290 TraceCheckUtils]: 39: Hoare triple {2883#true} assume !(0 == ~cond); {2883#true} is VALID [2022-04-15 15:14:30,550 INFO L290 TraceCheckUtils]: 38: Hoare triple {2883#true} ~cond := #in~cond; {2883#true} is VALID [2022-04-15 15:14:30,550 INFO L272 TraceCheckUtils]: 37: Hoare triple {3112#(< ~counter~0 9)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2883#true} is VALID [2022-04-15 15:14:30,550 INFO L290 TraceCheckUtils]: 36: Hoare triple {3112#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {3112#(< ~counter~0 9)} is VALID [2022-04-15 15:14:30,550 INFO L290 TraceCheckUtils]: 35: Hoare triple {3140#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3112#(< ~counter~0 9)} is VALID [2022-04-15 15:14:30,551 INFO L290 TraceCheckUtils]: 34: Hoare triple {3140#(< ~counter~0 8)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3140#(< ~counter~0 8)} is VALID [2022-04-15 15:14:30,551 INFO L290 TraceCheckUtils]: 33: Hoare triple {3140#(< ~counter~0 8)} assume !!(0 != ~r~0); {3140#(< ~counter~0 8)} is VALID [2022-04-15 15:14:30,551 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2883#true} {3140#(< ~counter~0 8)} #63#return; {3140#(< ~counter~0 8)} is VALID [2022-04-15 15:14:30,552 INFO L290 TraceCheckUtils]: 31: Hoare triple {2883#true} assume true; {2883#true} is VALID [2022-04-15 15:14:30,552 INFO L290 TraceCheckUtils]: 30: Hoare triple {2883#true} assume !(0 == ~cond); {2883#true} is VALID [2022-04-15 15:14:30,552 INFO L290 TraceCheckUtils]: 29: Hoare triple {2883#true} ~cond := #in~cond; {2883#true} is VALID [2022-04-15 15:14:30,552 INFO L272 TraceCheckUtils]: 28: Hoare triple {3140#(< ~counter~0 8)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2883#true} is VALID [2022-04-15 15:14:30,552 INFO L290 TraceCheckUtils]: 27: Hoare triple {3140#(< ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {3140#(< ~counter~0 8)} is VALID [2022-04-15 15:14:30,552 INFO L290 TraceCheckUtils]: 26: Hoare triple {3168#(< ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3140#(< ~counter~0 8)} is VALID [2022-04-15 15:14:30,553 INFO L290 TraceCheckUtils]: 25: Hoare triple {3168#(< ~counter~0 7)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3168#(< ~counter~0 7)} is VALID [2022-04-15 15:14:30,553 INFO L290 TraceCheckUtils]: 24: Hoare triple {3168#(< ~counter~0 7)} assume !!(0 != ~r~0); {3168#(< ~counter~0 7)} is VALID [2022-04-15 15:14:30,553 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2883#true} {3168#(< ~counter~0 7)} #63#return; {3168#(< ~counter~0 7)} is VALID [2022-04-15 15:14:30,553 INFO L290 TraceCheckUtils]: 22: Hoare triple {2883#true} assume true; {2883#true} is VALID [2022-04-15 15:14:30,554 INFO L290 TraceCheckUtils]: 21: Hoare triple {2883#true} assume !(0 == ~cond); {2883#true} is VALID [2022-04-15 15:14:30,554 INFO L290 TraceCheckUtils]: 20: Hoare triple {2883#true} ~cond := #in~cond; {2883#true} is VALID [2022-04-15 15:14:30,554 INFO L272 TraceCheckUtils]: 19: Hoare triple {3168#(< ~counter~0 7)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2883#true} is VALID [2022-04-15 15:14:30,554 INFO L290 TraceCheckUtils]: 18: Hoare triple {3168#(< ~counter~0 7)} assume !!(#t~post6 < 10);havoc #t~post6; {3168#(< ~counter~0 7)} is VALID [2022-04-15 15:14:30,554 INFO L290 TraceCheckUtils]: 17: Hoare triple {3196#(< ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3168#(< ~counter~0 7)} is VALID [2022-04-15 15:14:30,555 INFO L290 TraceCheckUtils]: 16: Hoare triple {3196#(< ~counter~0 6)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {3196#(< ~counter~0 6)} is VALID [2022-04-15 15:14:30,555 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2883#true} {3196#(< ~counter~0 6)} #61#return; {3196#(< ~counter~0 6)} is VALID [2022-04-15 15:14:30,555 INFO L290 TraceCheckUtils]: 14: Hoare triple {2883#true} assume true; {2883#true} is VALID [2022-04-15 15:14:30,555 INFO L290 TraceCheckUtils]: 13: Hoare triple {2883#true} assume !(0 == ~cond); {2883#true} is VALID [2022-04-15 15:14:30,555 INFO L290 TraceCheckUtils]: 12: Hoare triple {2883#true} ~cond := #in~cond; {2883#true} is VALID [2022-04-15 15:14:30,555 INFO L272 TraceCheckUtils]: 11: Hoare triple {3196#(< ~counter~0 6)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {2883#true} is VALID [2022-04-15 15:14:30,556 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2883#true} {3196#(< ~counter~0 6)} #59#return; {3196#(< ~counter~0 6)} is VALID [2022-04-15 15:14:30,556 INFO L290 TraceCheckUtils]: 9: Hoare triple {2883#true} assume true; {2883#true} is VALID [2022-04-15 15:14:30,556 INFO L290 TraceCheckUtils]: 8: Hoare triple {2883#true} assume !(0 == ~cond); {2883#true} is VALID [2022-04-15 15:14:30,556 INFO L290 TraceCheckUtils]: 7: Hoare triple {2883#true} ~cond := #in~cond; {2883#true} is VALID [2022-04-15 15:14:30,556 INFO L272 TraceCheckUtils]: 6: Hoare triple {3196#(< ~counter~0 6)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {2883#true} is VALID [2022-04-15 15:14:30,556 INFO L290 TraceCheckUtils]: 5: Hoare triple {3196#(< ~counter~0 6)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {3196#(< ~counter~0 6)} is VALID [2022-04-15 15:14:30,556 INFO L272 TraceCheckUtils]: 4: Hoare triple {3196#(< ~counter~0 6)} call #t~ret7 := main(); {3196#(< ~counter~0 6)} is VALID [2022-04-15 15:14:30,557 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3196#(< ~counter~0 6)} {2883#true} #67#return; {3196#(< ~counter~0 6)} is VALID [2022-04-15 15:14:30,557 INFO L290 TraceCheckUtils]: 2: Hoare triple {3196#(< ~counter~0 6)} assume true; {3196#(< ~counter~0 6)} is VALID [2022-04-15 15:14:30,557 INFO L290 TraceCheckUtils]: 1: Hoare triple {2883#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3196#(< ~counter~0 6)} is VALID [2022-04-15 15:14:30,558 INFO L272 TraceCheckUtils]: 0: Hoare triple {2883#true} call ULTIMATE.init(); {2883#true} is VALID [2022-04-15 15:14:30,558 INFO L134 CoverageAnalysis]: Checked inductivity of 74 backedges. 8 proven. 38 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-15 15:14:30,558 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:14:30,558 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [911065241] [2022-04-15 15:14:30,558 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:14:30,558 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [846531790] [2022-04-15 15:14:30,558 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [846531790] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 15:14:30,558 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 15:14:30,558 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-15 15:14:30,558 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:14:30,559 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1249318997] [2022-04-15 15:14:30,559 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1249318997] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:14:30,559 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:14:30,559 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-15 15:14:30,559 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1417065041] [2022-04-15 15:14:30,559 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:14:30,560 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 7 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 6 states have call successors, (7) Word has length 59 [2022-04-15 15:14:30,560 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:14:30,560 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 7 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 6 states have call successors, (7) [2022-04-15 15:14:30,593 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:30,602 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-15 15:14:30,602 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:14:30,602 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-15 15:14:30,603 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-15 15:14:30,603 INFO L87 Difference]: Start difference. First operand 56 states and 61 transitions. Second operand has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 7 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 6 states have call successors, (7) [2022-04-15 15:14:30,780 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:30,780 INFO L93 Difference]: Finished difference Result 70 states and 76 transitions. [2022-04-15 15:14:30,780 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-15 15:14:30,780 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 7 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 6 states have call successors, (7) Word has length 59 [2022-04-15 15:14:30,780 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:14:30,780 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 7 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 6 states have call successors, (7) [2022-04-15 15:14:30,782 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 75 transitions. [2022-04-15 15:14:30,782 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 7 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 6 states have call successors, (7) [2022-04-15 15:14:30,783 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 75 transitions. [2022-04-15 15:14:30,783 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 75 transitions. [2022-04-15 15:14:30,838 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:30,839 INFO L225 Difference]: With dead ends: 70 [2022-04-15 15:14:30,839 INFO L226 Difference]: Without dead ends: 65 [2022-04-15 15:14:30,839 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 121 GetRequests, 105 SyntacticMatches, 0 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 19 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=123, Invalid=183, Unknown=0, NotChecked=0, Total=306 [2022-04-15 15:14:30,839 INFO L913 BasicCegarLoop]: 30 mSDtfsCounter, 18 mSDsluCounter, 72 mSDsCounter, 0 mSdLazyCounter, 24 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 102 SdHoareTripleChecker+Invalid, 38 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 24 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 15:14:30,840 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [18 Valid, 102 Invalid, 38 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 24 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 15:14:30,840 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 65 states. [2022-04-15 15:14:30,892 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 65 to 65. [2022-04-15 15:14:30,892 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:14:30,893 INFO L82 GeneralOperation]: Start isEquivalent. First operand 65 states. Second operand has 65 states, 47 states have (on average 1.127659574468085) internal successors, (53), 47 states have internal predecessors, (53), 10 states have call successors, (10), 9 states have call predecessors, (10), 7 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 15:14:30,893 INFO L74 IsIncluded]: Start isIncluded. First operand 65 states. Second operand has 65 states, 47 states have (on average 1.127659574468085) internal successors, (53), 47 states have internal predecessors, (53), 10 states have call successors, (10), 9 states have call predecessors, (10), 7 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 15:14:30,894 INFO L87 Difference]: Start difference. First operand 65 states. Second operand has 65 states, 47 states have (on average 1.127659574468085) internal successors, (53), 47 states have internal predecessors, (53), 10 states have call successors, (10), 9 states have call predecessors, (10), 7 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 15:14:30,895 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:30,895 INFO L93 Difference]: Finished difference Result 65 states and 71 transitions. [2022-04-15 15:14:30,895 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 71 transitions. [2022-04-15 15:14:30,896 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:14:30,896 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:14:30,896 INFO L74 IsIncluded]: Start isIncluded. First operand has 65 states, 47 states have (on average 1.127659574468085) internal successors, (53), 47 states have internal predecessors, (53), 10 states have call successors, (10), 9 states have call predecessors, (10), 7 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 65 states. [2022-04-15 15:14:30,897 INFO L87 Difference]: Start difference. First operand has 65 states, 47 states have (on average 1.127659574468085) internal successors, (53), 47 states have internal predecessors, (53), 10 states have call successors, (10), 9 states have call predecessors, (10), 7 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 65 states. [2022-04-15 15:14:30,898 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:30,898 INFO L93 Difference]: Finished difference Result 65 states and 71 transitions. [2022-04-15 15:14:30,898 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 71 transitions. [2022-04-15 15:14:30,899 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:14:30,899 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:14:30,899 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:14:30,899 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:14:30,907 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 65 states, 47 states have (on average 1.127659574468085) internal successors, (53), 47 states have internal predecessors, (53), 10 states have call successors, (10), 9 states have call predecessors, (10), 7 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 15:14:30,908 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 65 states to 65 states and 71 transitions. [2022-04-15 15:14:30,909 INFO L78 Accepts]: Start accepts. Automaton has 65 states and 71 transitions. Word has length 59 [2022-04-15 15:14:30,909 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:14:30,909 INFO L478 AbstractCegarLoop]: Abstraction has 65 states and 71 transitions. [2022-04-15 15:14:30,909 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 7 states have call successors, (9), 7 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 6 states have call successors, (7) [2022-04-15 15:14:30,910 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 65 states and 71 transitions. [2022-04-15 15:14:31,185 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 71 edges. 71 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:31,185 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 71 transitions. [2022-04-15 15:14:31,186 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 69 [2022-04-15 15:14:31,186 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:14:31,186 INFO L499 BasicCegarLoop]: trace histogram [6, 6, 5, 5, 5, 5, 5, 5, 5, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 15:14:31,202 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-04-15 15:14:31,399 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable7 [2022-04-15 15:14:31,399 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:14:31,399 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:14:31,400 INFO L85 PathProgramCache]: Analyzing trace with hash -1512407140, now seen corresponding path program 9 times [2022-04-15 15:14:31,400 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:14:31,400 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2012281616] [2022-04-15 15:14:31,400 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:14:31,400 INFO L85 PathProgramCache]: Analyzing trace with hash -1512407140, now seen corresponding path program 10 times [2022-04-15 15:14:31,400 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:14:31,400 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [981951335] [2022-04-15 15:14:31,400 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:14:31,400 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:14:31,414 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:14:31,414 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [439921205] [2022-04-15 15:14:31,414 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 15:14:31,414 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:14:31,414 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:14:31,415 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 15:14:31,416 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-04-15 15:14:31,530 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 15:14:31,530 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:14:31,531 INFO L263 TraceCheckSpWp]: Trace formula consists of 193 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-15 15:14:31,543 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:14:31,544 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:14:31,880 INFO L272 TraceCheckUtils]: 0: Hoare triple {3658#true} call ULTIMATE.init(); {3658#true} is VALID [2022-04-15 15:14:31,881 INFO L290 TraceCheckUtils]: 1: Hoare triple {3658#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3666#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:31,881 INFO L290 TraceCheckUtils]: 2: Hoare triple {3666#(<= ~counter~0 0)} assume true; {3666#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:31,881 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3666#(<= ~counter~0 0)} {3658#true} #67#return; {3666#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:31,882 INFO L272 TraceCheckUtils]: 4: Hoare triple {3666#(<= ~counter~0 0)} call #t~ret7 := main(); {3666#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:31,882 INFO L290 TraceCheckUtils]: 5: Hoare triple {3666#(<= ~counter~0 0)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {3666#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:31,883 INFO L272 TraceCheckUtils]: 6: Hoare triple {3666#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {3666#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:31,883 INFO L290 TraceCheckUtils]: 7: Hoare triple {3666#(<= ~counter~0 0)} ~cond := #in~cond; {3666#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:31,883 INFO L290 TraceCheckUtils]: 8: Hoare triple {3666#(<= ~counter~0 0)} assume !(0 == ~cond); {3666#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:31,884 INFO L290 TraceCheckUtils]: 9: Hoare triple {3666#(<= ~counter~0 0)} assume true; {3666#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:31,884 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3666#(<= ~counter~0 0)} {3666#(<= ~counter~0 0)} #59#return; {3666#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:31,885 INFO L272 TraceCheckUtils]: 11: Hoare triple {3666#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {3666#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:31,885 INFO L290 TraceCheckUtils]: 12: Hoare triple {3666#(<= ~counter~0 0)} ~cond := #in~cond; {3666#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:31,885 INFO L290 TraceCheckUtils]: 13: Hoare triple {3666#(<= ~counter~0 0)} assume !(0 == ~cond); {3666#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:31,885 INFO L290 TraceCheckUtils]: 14: Hoare triple {3666#(<= ~counter~0 0)} assume true; {3666#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:31,886 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3666#(<= ~counter~0 0)} {3666#(<= ~counter~0 0)} #61#return; {3666#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:31,886 INFO L290 TraceCheckUtils]: 16: Hoare triple {3666#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {3666#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:31,887 INFO L290 TraceCheckUtils]: 17: Hoare triple {3666#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3715#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:31,887 INFO L290 TraceCheckUtils]: 18: Hoare triple {3715#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {3715#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:31,888 INFO L272 TraceCheckUtils]: 19: Hoare triple {3715#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {3715#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:31,888 INFO L290 TraceCheckUtils]: 20: Hoare triple {3715#(<= ~counter~0 1)} ~cond := #in~cond; {3715#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:31,888 INFO L290 TraceCheckUtils]: 21: Hoare triple {3715#(<= ~counter~0 1)} assume !(0 == ~cond); {3715#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:31,888 INFO L290 TraceCheckUtils]: 22: Hoare triple {3715#(<= ~counter~0 1)} assume true; {3715#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:31,889 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3715#(<= ~counter~0 1)} {3715#(<= ~counter~0 1)} #63#return; {3715#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:31,889 INFO L290 TraceCheckUtils]: 24: Hoare triple {3715#(<= ~counter~0 1)} assume !!(0 != ~r~0); {3715#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:31,890 INFO L290 TraceCheckUtils]: 25: Hoare triple {3715#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3715#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:31,890 INFO L290 TraceCheckUtils]: 26: Hoare triple {3715#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3743#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:31,890 INFO L290 TraceCheckUtils]: 27: Hoare triple {3743#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {3743#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:31,891 INFO L272 TraceCheckUtils]: 28: Hoare triple {3743#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {3743#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:31,891 INFO L290 TraceCheckUtils]: 29: Hoare triple {3743#(<= ~counter~0 2)} ~cond := #in~cond; {3743#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:31,891 INFO L290 TraceCheckUtils]: 30: Hoare triple {3743#(<= ~counter~0 2)} assume !(0 == ~cond); {3743#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:31,892 INFO L290 TraceCheckUtils]: 31: Hoare triple {3743#(<= ~counter~0 2)} assume true; {3743#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:31,892 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {3743#(<= ~counter~0 2)} {3743#(<= ~counter~0 2)} #63#return; {3743#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:31,892 INFO L290 TraceCheckUtils]: 33: Hoare triple {3743#(<= ~counter~0 2)} assume !!(0 != ~r~0); {3743#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:31,893 INFO L290 TraceCheckUtils]: 34: Hoare triple {3743#(<= ~counter~0 2)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3743#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:31,893 INFO L290 TraceCheckUtils]: 35: Hoare triple {3743#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3771#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:31,894 INFO L290 TraceCheckUtils]: 36: Hoare triple {3771#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {3771#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:31,894 INFO L272 TraceCheckUtils]: 37: Hoare triple {3771#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {3771#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:31,894 INFO L290 TraceCheckUtils]: 38: Hoare triple {3771#(<= ~counter~0 3)} ~cond := #in~cond; {3771#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:31,895 INFO L290 TraceCheckUtils]: 39: Hoare triple {3771#(<= ~counter~0 3)} assume !(0 == ~cond); {3771#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:31,895 INFO L290 TraceCheckUtils]: 40: Hoare triple {3771#(<= ~counter~0 3)} assume true; {3771#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:31,895 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3771#(<= ~counter~0 3)} {3771#(<= ~counter~0 3)} #63#return; {3771#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:31,896 INFO L290 TraceCheckUtils]: 42: Hoare triple {3771#(<= ~counter~0 3)} assume !!(0 != ~r~0); {3771#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:31,896 INFO L290 TraceCheckUtils]: 43: Hoare triple {3771#(<= ~counter~0 3)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3771#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:31,896 INFO L290 TraceCheckUtils]: 44: Hoare triple {3771#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3799#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:31,897 INFO L290 TraceCheckUtils]: 45: Hoare triple {3799#(<= ~counter~0 4)} assume !!(#t~post6 < 10);havoc #t~post6; {3799#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:31,897 INFO L272 TraceCheckUtils]: 46: Hoare triple {3799#(<= ~counter~0 4)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {3799#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:31,898 INFO L290 TraceCheckUtils]: 47: Hoare triple {3799#(<= ~counter~0 4)} ~cond := #in~cond; {3799#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:31,898 INFO L290 TraceCheckUtils]: 48: Hoare triple {3799#(<= ~counter~0 4)} assume !(0 == ~cond); {3799#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:31,898 INFO L290 TraceCheckUtils]: 49: Hoare triple {3799#(<= ~counter~0 4)} assume true; {3799#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:31,899 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {3799#(<= ~counter~0 4)} {3799#(<= ~counter~0 4)} #63#return; {3799#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:31,899 INFO L290 TraceCheckUtils]: 51: Hoare triple {3799#(<= ~counter~0 4)} assume !!(0 != ~r~0); {3799#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:31,899 INFO L290 TraceCheckUtils]: 52: Hoare triple {3799#(<= ~counter~0 4)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3799#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:31,900 INFO L290 TraceCheckUtils]: 53: Hoare triple {3799#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3827#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:31,900 INFO L290 TraceCheckUtils]: 54: Hoare triple {3827#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {3827#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:31,901 INFO L272 TraceCheckUtils]: 55: Hoare triple {3827#(<= ~counter~0 5)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {3827#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:31,901 INFO L290 TraceCheckUtils]: 56: Hoare triple {3827#(<= ~counter~0 5)} ~cond := #in~cond; {3827#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:31,901 INFO L290 TraceCheckUtils]: 57: Hoare triple {3827#(<= ~counter~0 5)} assume !(0 == ~cond); {3827#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:31,901 INFO L290 TraceCheckUtils]: 58: Hoare triple {3827#(<= ~counter~0 5)} assume true; {3827#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:31,902 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {3827#(<= ~counter~0 5)} {3827#(<= ~counter~0 5)} #63#return; {3827#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:31,902 INFO L290 TraceCheckUtils]: 60: Hoare triple {3827#(<= ~counter~0 5)} assume !!(0 != ~r~0); {3827#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:31,903 INFO L290 TraceCheckUtils]: 61: Hoare triple {3827#(<= ~counter~0 5)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3827#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:31,903 INFO L290 TraceCheckUtils]: 62: Hoare triple {3827#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3855#(<= |main_#t~post6| 5)} is VALID [2022-04-15 15:14:31,903 INFO L290 TraceCheckUtils]: 63: Hoare triple {3855#(<= |main_#t~post6| 5)} assume !(#t~post6 < 10);havoc #t~post6; {3659#false} is VALID [2022-04-15 15:14:31,903 INFO L272 TraceCheckUtils]: 64: Hoare triple {3659#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {3659#false} is VALID [2022-04-15 15:14:31,903 INFO L290 TraceCheckUtils]: 65: Hoare triple {3659#false} ~cond := #in~cond; {3659#false} is VALID [2022-04-15 15:14:31,904 INFO L290 TraceCheckUtils]: 66: Hoare triple {3659#false} assume 0 == ~cond; {3659#false} is VALID [2022-04-15 15:14:31,904 INFO L290 TraceCheckUtils]: 67: Hoare triple {3659#false} assume !false; {3659#false} is VALID [2022-04-15 15:14:31,904 INFO L134 CoverageAnalysis]: Checked inductivity of 114 backedges. 10 proven. 100 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 15:14:31,905 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 15:14:32,228 INFO L290 TraceCheckUtils]: 67: Hoare triple {3659#false} assume !false; {3659#false} is VALID [2022-04-15 15:14:32,229 INFO L290 TraceCheckUtils]: 66: Hoare triple {3659#false} assume 0 == ~cond; {3659#false} is VALID [2022-04-15 15:14:32,229 INFO L290 TraceCheckUtils]: 65: Hoare triple {3659#false} ~cond := #in~cond; {3659#false} is VALID [2022-04-15 15:14:32,229 INFO L272 TraceCheckUtils]: 64: Hoare triple {3659#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {3659#false} is VALID [2022-04-15 15:14:32,229 INFO L290 TraceCheckUtils]: 63: Hoare triple {3883#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {3659#false} is VALID [2022-04-15 15:14:32,229 INFO L290 TraceCheckUtils]: 62: Hoare triple {3887#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3883#(< |main_#t~post6| 10)} is VALID [2022-04-15 15:14:32,230 INFO L290 TraceCheckUtils]: 61: Hoare triple {3887#(< ~counter~0 10)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3887#(< ~counter~0 10)} is VALID [2022-04-15 15:14:32,230 INFO L290 TraceCheckUtils]: 60: Hoare triple {3887#(< ~counter~0 10)} assume !!(0 != ~r~0); {3887#(< ~counter~0 10)} is VALID [2022-04-15 15:14:32,231 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {3658#true} {3887#(< ~counter~0 10)} #63#return; {3887#(< ~counter~0 10)} is VALID [2022-04-15 15:14:32,231 INFO L290 TraceCheckUtils]: 58: Hoare triple {3658#true} assume true; {3658#true} is VALID [2022-04-15 15:14:32,231 INFO L290 TraceCheckUtils]: 57: Hoare triple {3658#true} assume !(0 == ~cond); {3658#true} is VALID [2022-04-15 15:14:32,231 INFO L290 TraceCheckUtils]: 56: Hoare triple {3658#true} ~cond := #in~cond; {3658#true} is VALID [2022-04-15 15:14:32,231 INFO L272 TraceCheckUtils]: 55: Hoare triple {3887#(< ~counter~0 10)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {3658#true} is VALID [2022-04-15 15:14:32,231 INFO L290 TraceCheckUtils]: 54: Hoare triple {3887#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {3887#(< ~counter~0 10)} is VALID [2022-04-15 15:14:32,232 INFO L290 TraceCheckUtils]: 53: Hoare triple {3915#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3887#(< ~counter~0 10)} is VALID [2022-04-15 15:14:32,232 INFO L290 TraceCheckUtils]: 52: Hoare triple {3915#(< ~counter~0 9)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3915#(< ~counter~0 9)} is VALID [2022-04-15 15:14:32,232 INFO L290 TraceCheckUtils]: 51: Hoare triple {3915#(< ~counter~0 9)} assume !!(0 != ~r~0); {3915#(< ~counter~0 9)} is VALID [2022-04-15 15:14:32,233 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {3658#true} {3915#(< ~counter~0 9)} #63#return; {3915#(< ~counter~0 9)} is VALID [2022-04-15 15:14:32,233 INFO L290 TraceCheckUtils]: 49: Hoare triple {3658#true} assume true; {3658#true} is VALID [2022-04-15 15:14:32,233 INFO L290 TraceCheckUtils]: 48: Hoare triple {3658#true} assume !(0 == ~cond); {3658#true} is VALID [2022-04-15 15:14:32,233 INFO L290 TraceCheckUtils]: 47: Hoare triple {3658#true} ~cond := #in~cond; {3658#true} is VALID [2022-04-15 15:14:32,233 INFO L272 TraceCheckUtils]: 46: Hoare triple {3915#(< ~counter~0 9)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {3658#true} is VALID [2022-04-15 15:14:32,233 INFO L290 TraceCheckUtils]: 45: Hoare triple {3915#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {3915#(< ~counter~0 9)} is VALID [2022-04-15 15:14:32,234 INFO L290 TraceCheckUtils]: 44: Hoare triple {3943#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3915#(< ~counter~0 9)} is VALID [2022-04-15 15:14:32,234 INFO L290 TraceCheckUtils]: 43: Hoare triple {3943#(< ~counter~0 8)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3943#(< ~counter~0 8)} is VALID [2022-04-15 15:14:32,234 INFO L290 TraceCheckUtils]: 42: Hoare triple {3943#(< ~counter~0 8)} assume !!(0 != ~r~0); {3943#(< ~counter~0 8)} is VALID [2022-04-15 15:14:32,235 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3658#true} {3943#(< ~counter~0 8)} #63#return; {3943#(< ~counter~0 8)} is VALID [2022-04-15 15:14:32,235 INFO L290 TraceCheckUtils]: 40: Hoare triple {3658#true} assume true; {3658#true} is VALID [2022-04-15 15:14:32,235 INFO L290 TraceCheckUtils]: 39: Hoare triple {3658#true} assume !(0 == ~cond); {3658#true} is VALID [2022-04-15 15:14:32,235 INFO L290 TraceCheckUtils]: 38: Hoare triple {3658#true} ~cond := #in~cond; {3658#true} is VALID [2022-04-15 15:14:32,235 INFO L272 TraceCheckUtils]: 37: Hoare triple {3943#(< ~counter~0 8)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {3658#true} is VALID [2022-04-15 15:14:32,235 INFO L290 TraceCheckUtils]: 36: Hoare triple {3943#(< ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {3943#(< ~counter~0 8)} is VALID [2022-04-15 15:14:32,236 INFO L290 TraceCheckUtils]: 35: Hoare triple {3971#(< ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3943#(< ~counter~0 8)} is VALID [2022-04-15 15:14:32,236 INFO L290 TraceCheckUtils]: 34: Hoare triple {3971#(< ~counter~0 7)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3971#(< ~counter~0 7)} is VALID [2022-04-15 15:14:32,236 INFO L290 TraceCheckUtils]: 33: Hoare triple {3971#(< ~counter~0 7)} assume !!(0 != ~r~0); {3971#(< ~counter~0 7)} is VALID [2022-04-15 15:14:32,237 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {3658#true} {3971#(< ~counter~0 7)} #63#return; {3971#(< ~counter~0 7)} is VALID [2022-04-15 15:14:32,237 INFO L290 TraceCheckUtils]: 31: Hoare triple {3658#true} assume true; {3658#true} is VALID [2022-04-15 15:14:32,237 INFO L290 TraceCheckUtils]: 30: Hoare triple {3658#true} assume !(0 == ~cond); {3658#true} is VALID [2022-04-15 15:14:32,237 INFO L290 TraceCheckUtils]: 29: Hoare triple {3658#true} ~cond := #in~cond; {3658#true} is VALID [2022-04-15 15:14:32,237 INFO L272 TraceCheckUtils]: 28: Hoare triple {3971#(< ~counter~0 7)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {3658#true} is VALID [2022-04-15 15:14:32,237 INFO L290 TraceCheckUtils]: 27: Hoare triple {3971#(< ~counter~0 7)} assume !!(#t~post6 < 10);havoc #t~post6; {3971#(< ~counter~0 7)} is VALID [2022-04-15 15:14:32,251 INFO L290 TraceCheckUtils]: 26: Hoare triple {3827#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3971#(< ~counter~0 7)} is VALID [2022-04-15 15:14:32,252 INFO L290 TraceCheckUtils]: 25: Hoare triple {3827#(<= ~counter~0 5)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3827#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:32,252 INFO L290 TraceCheckUtils]: 24: Hoare triple {3827#(<= ~counter~0 5)} assume !!(0 != ~r~0); {3827#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:32,252 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3658#true} {3827#(<= ~counter~0 5)} #63#return; {3827#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:32,253 INFO L290 TraceCheckUtils]: 22: Hoare triple {3658#true} assume true; {3658#true} is VALID [2022-04-15 15:14:32,253 INFO L290 TraceCheckUtils]: 21: Hoare triple {3658#true} assume !(0 == ~cond); {3658#true} is VALID [2022-04-15 15:14:32,253 INFO L290 TraceCheckUtils]: 20: Hoare triple {3658#true} ~cond := #in~cond; {3658#true} is VALID [2022-04-15 15:14:32,253 INFO L272 TraceCheckUtils]: 19: Hoare triple {3827#(<= ~counter~0 5)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {3658#true} is VALID [2022-04-15 15:14:32,253 INFO L290 TraceCheckUtils]: 18: Hoare triple {3827#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {3827#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:32,253 INFO L290 TraceCheckUtils]: 17: Hoare triple {3799#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3827#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:32,254 INFO L290 TraceCheckUtils]: 16: Hoare triple {3799#(<= ~counter~0 4)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {3799#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:32,254 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3658#true} {3799#(<= ~counter~0 4)} #61#return; {3799#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:32,254 INFO L290 TraceCheckUtils]: 14: Hoare triple {3658#true} assume true; {3658#true} is VALID [2022-04-15 15:14:32,254 INFO L290 TraceCheckUtils]: 13: Hoare triple {3658#true} assume !(0 == ~cond); {3658#true} is VALID [2022-04-15 15:14:32,254 INFO L290 TraceCheckUtils]: 12: Hoare triple {3658#true} ~cond := #in~cond; {3658#true} is VALID [2022-04-15 15:14:32,254 INFO L272 TraceCheckUtils]: 11: Hoare triple {3799#(<= ~counter~0 4)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {3658#true} is VALID [2022-04-15 15:14:32,255 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3658#true} {3799#(<= ~counter~0 4)} #59#return; {3799#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:32,255 INFO L290 TraceCheckUtils]: 9: Hoare triple {3658#true} assume true; {3658#true} is VALID [2022-04-15 15:14:32,255 INFO L290 TraceCheckUtils]: 8: Hoare triple {3658#true} assume !(0 == ~cond); {3658#true} is VALID [2022-04-15 15:14:32,255 INFO L290 TraceCheckUtils]: 7: Hoare triple {3658#true} ~cond := #in~cond; {3658#true} is VALID [2022-04-15 15:14:32,255 INFO L272 TraceCheckUtils]: 6: Hoare triple {3799#(<= ~counter~0 4)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {3658#true} is VALID [2022-04-15 15:14:32,256 INFO L290 TraceCheckUtils]: 5: Hoare triple {3799#(<= ~counter~0 4)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {3799#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:32,256 INFO L272 TraceCheckUtils]: 4: Hoare triple {3799#(<= ~counter~0 4)} call #t~ret7 := main(); {3799#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:32,256 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3799#(<= ~counter~0 4)} {3658#true} #67#return; {3799#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:32,256 INFO L290 TraceCheckUtils]: 2: Hoare triple {3799#(<= ~counter~0 4)} assume true; {3799#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:32,257 INFO L290 TraceCheckUtils]: 1: Hoare triple {3658#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3799#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:32,257 INFO L272 TraceCheckUtils]: 0: Hoare triple {3658#true} call ULTIMATE.init(); {3658#true} is VALID [2022-04-15 15:14:32,257 INFO L134 CoverageAnalysis]: Checked inductivity of 114 backedges. 10 proven. 60 refuted. 0 times theorem prover too weak. 44 trivial. 0 not checked. [2022-04-15 15:14:32,257 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:14:32,257 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [981951335] [2022-04-15 15:14:32,258 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:14:32,258 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [439921205] [2022-04-15 15:14:32,258 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [439921205] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 15:14:32,258 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 15:14:32,258 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 14 [2022-04-15 15:14:32,258 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:14:32,258 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2012281616] [2022-04-15 15:14:32,258 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2012281616] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:14:32,258 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:14:32,258 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-15 15:14:32,258 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [927885542] [2022-04-15 15:14:32,258 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:14:32,259 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 5.222222222222222) internal successors, (47), 8 states have internal predecessors, (47), 8 states have call successors, (10), 8 states have call predecessors, (10), 6 states have return successors, (8), 6 states have call predecessors, (8), 7 states have call successors, (8) Word has length 68 [2022-04-15 15:14:32,259 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:14:32,259 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 5.222222222222222) internal successors, (47), 8 states have internal predecessors, (47), 8 states have call successors, (10), 8 states have call predecessors, (10), 6 states have return successors, (8), 6 states have call predecessors, (8), 7 states have call successors, (8) [2022-04-15 15:14:32,302 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:32,302 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-15 15:14:32,302 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:14:32,302 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-15 15:14:32,302 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-15 15:14:32,303 INFO L87 Difference]: Start difference. First operand 65 states and 71 transitions. Second operand has 9 states, 9 states have (on average 5.222222222222222) internal successors, (47), 8 states have internal predecessors, (47), 8 states have call successors, (10), 8 states have call predecessors, (10), 6 states have return successors, (8), 6 states have call predecessors, (8), 7 states have call successors, (8) [2022-04-15 15:14:32,525 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:32,525 INFO L93 Difference]: Finished difference Result 79 states and 86 transitions. [2022-04-15 15:14:32,525 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-15 15:14:32,525 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 5.222222222222222) internal successors, (47), 8 states have internal predecessors, (47), 8 states have call successors, (10), 8 states have call predecessors, (10), 6 states have return successors, (8), 6 states have call predecessors, (8), 7 states have call successors, (8) Word has length 68 [2022-04-15 15:14:32,526 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:14:32,526 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 5.222222222222222) internal successors, (47), 8 states have internal predecessors, (47), 8 states have call successors, (10), 8 states have call predecessors, (10), 6 states have return successors, (8), 6 states have call predecessors, (8), 7 states have call successors, (8) [2022-04-15 15:14:32,527 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 85 transitions. [2022-04-15 15:14:32,527 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 5.222222222222222) internal successors, (47), 8 states have internal predecessors, (47), 8 states have call successors, (10), 8 states have call predecessors, (10), 6 states have return successors, (8), 6 states have call predecessors, (8), 7 states have call successors, (8) [2022-04-15 15:14:32,529 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 85 transitions. [2022-04-15 15:14:32,529 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 85 transitions. [2022-04-15 15:14:32,586 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 85 edges. 85 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:32,587 INFO L225 Difference]: With dead ends: 79 [2022-04-15 15:14:32,587 INFO L226 Difference]: Without dead ends: 74 [2022-04-15 15:14:32,588 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 140 GetRequests, 122 SyntacticMatches, 1 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 28 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=136, Invalid=206, Unknown=0, NotChecked=0, Total=342 [2022-04-15 15:14:32,588 INFO L913 BasicCegarLoop]: 31 mSDtfsCounter, 21 mSDsluCounter, 79 mSDsCounter, 0 mSdLazyCounter, 30 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 21 SdHoareTripleChecker+Valid, 110 SdHoareTripleChecker+Invalid, 44 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 30 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 15:14:32,588 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [21 Valid, 110 Invalid, 44 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 30 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 15:14:32,589 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2022-04-15 15:14:32,665 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 74. [2022-04-15 15:14:32,665 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:14:32,665 INFO L82 GeneralOperation]: Start isEquivalent. First operand 74 states. Second operand has 74 states, 54 states have (on average 1.1296296296296295) internal successors, (61), 54 states have internal predecessors, (61), 11 states have call successors, (11), 10 states have call predecessors, (11), 8 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 15:14:32,665 INFO L74 IsIncluded]: Start isIncluded. First operand 74 states. Second operand has 74 states, 54 states have (on average 1.1296296296296295) internal successors, (61), 54 states have internal predecessors, (61), 11 states have call successors, (11), 10 states have call predecessors, (11), 8 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 15:14:32,665 INFO L87 Difference]: Start difference. First operand 74 states. Second operand has 74 states, 54 states have (on average 1.1296296296296295) internal successors, (61), 54 states have internal predecessors, (61), 11 states have call successors, (11), 10 states have call predecessors, (11), 8 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 15:14:32,671 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:32,672 INFO L93 Difference]: Finished difference Result 74 states and 81 transitions. [2022-04-15 15:14:32,672 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 81 transitions. [2022-04-15 15:14:32,672 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:14:32,672 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:14:32,672 INFO L74 IsIncluded]: Start isIncluded. First operand has 74 states, 54 states have (on average 1.1296296296296295) internal successors, (61), 54 states have internal predecessors, (61), 11 states have call successors, (11), 10 states have call predecessors, (11), 8 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 74 states. [2022-04-15 15:14:32,672 INFO L87 Difference]: Start difference. First operand has 74 states, 54 states have (on average 1.1296296296296295) internal successors, (61), 54 states have internal predecessors, (61), 11 states have call successors, (11), 10 states have call predecessors, (11), 8 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 74 states. [2022-04-15 15:14:32,674 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:32,674 INFO L93 Difference]: Finished difference Result 74 states and 81 transitions. [2022-04-15 15:14:32,674 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 81 transitions. [2022-04-15 15:14:32,675 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:14:32,675 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:14:32,675 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:14:32,675 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:14:32,675 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 74 states, 54 states have (on average 1.1296296296296295) internal successors, (61), 54 states have internal predecessors, (61), 11 states have call successors, (11), 10 states have call predecessors, (11), 8 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 15:14:32,677 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 81 transitions. [2022-04-15 15:14:32,677 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 81 transitions. Word has length 68 [2022-04-15 15:14:32,677 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:14:32,677 INFO L478 AbstractCegarLoop]: Abstraction has 74 states and 81 transitions. [2022-04-15 15:14:32,677 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 5.222222222222222) internal successors, (47), 8 states have internal predecessors, (47), 8 states have call successors, (10), 8 states have call predecessors, (10), 6 states have return successors, (8), 6 states have call predecessors, (8), 7 states have call successors, (8) [2022-04-15 15:14:32,677 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 74 states and 81 transitions. [2022-04-15 15:14:33,195 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 81 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:33,195 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 81 transitions. [2022-04-15 15:14:33,196 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 78 [2022-04-15 15:14:33,196 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:14:33,196 INFO L499 BasicCegarLoop]: trace histogram [7, 7, 6, 6, 6, 6, 6, 6, 6, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 15:14:33,212 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-04-15 15:14:33,396 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8,10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:14:33,397 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:14:33,397 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:14:33,397 INFO L85 PathProgramCache]: Analyzing trace with hash 771706710, now seen corresponding path program 11 times [2022-04-15 15:14:33,397 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:14:33,397 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1145116815] [2022-04-15 15:14:33,397 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:14:33,397 INFO L85 PathProgramCache]: Analyzing trace with hash 771706710, now seen corresponding path program 12 times [2022-04-15 15:14:33,397 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:14:33,398 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [752882503] [2022-04-15 15:14:33,398 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:14:33,398 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:14:33,428 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:14:33,428 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [147337967] [2022-04-15 15:14:33,429 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-15 15:14:33,432 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:14:33,432 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:14:33,432 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 15:14:33,439 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-04-15 15:14:33,575 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-15 15:14:33,575 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:14:33,576 INFO L263 TraceCheckSpWp]: Trace formula consists of 213 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-15 15:14:33,595 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:14:33,596 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:14:33,958 INFO L272 TraceCheckUtils]: 0: Hoare triple {4543#true} call ULTIMATE.init(); {4543#true} is VALID [2022-04-15 15:14:33,959 INFO L290 TraceCheckUtils]: 1: Hoare triple {4543#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4551#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:33,959 INFO L290 TraceCheckUtils]: 2: Hoare triple {4551#(<= ~counter~0 0)} assume true; {4551#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:33,959 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4551#(<= ~counter~0 0)} {4543#true} #67#return; {4551#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:33,960 INFO L272 TraceCheckUtils]: 4: Hoare triple {4551#(<= ~counter~0 0)} call #t~ret7 := main(); {4551#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:33,960 INFO L290 TraceCheckUtils]: 5: Hoare triple {4551#(<= ~counter~0 0)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {4551#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:33,960 INFO L272 TraceCheckUtils]: 6: Hoare triple {4551#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {4551#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:33,961 INFO L290 TraceCheckUtils]: 7: Hoare triple {4551#(<= ~counter~0 0)} ~cond := #in~cond; {4551#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:33,961 INFO L290 TraceCheckUtils]: 8: Hoare triple {4551#(<= ~counter~0 0)} assume !(0 == ~cond); {4551#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:33,961 INFO L290 TraceCheckUtils]: 9: Hoare triple {4551#(<= ~counter~0 0)} assume true; {4551#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:33,962 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4551#(<= ~counter~0 0)} {4551#(<= ~counter~0 0)} #59#return; {4551#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:33,962 INFO L272 TraceCheckUtils]: 11: Hoare triple {4551#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {4551#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:33,962 INFO L290 TraceCheckUtils]: 12: Hoare triple {4551#(<= ~counter~0 0)} ~cond := #in~cond; {4551#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:33,963 INFO L290 TraceCheckUtils]: 13: Hoare triple {4551#(<= ~counter~0 0)} assume !(0 == ~cond); {4551#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:33,963 INFO L290 TraceCheckUtils]: 14: Hoare triple {4551#(<= ~counter~0 0)} assume true; {4551#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:33,963 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4551#(<= ~counter~0 0)} {4551#(<= ~counter~0 0)} #61#return; {4551#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:33,965 INFO L290 TraceCheckUtils]: 16: Hoare triple {4551#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {4551#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:33,966 INFO L290 TraceCheckUtils]: 17: Hoare triple {4551#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4600#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:33,966 INFO L290 TraceCheckUtils]: 18: Hoare triple {4600#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {4600#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:33,967 INFO L272 TraceCheckUtils]: 19: Hoare triple {4600#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {4600#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:33,967 INFO L290 TraceCheckUtils]: 20: Hoare triple {4600#(<= ~counter~0 1)} ~cond := #in~cond; {4600#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:33,967 INFO L290 TraceCheckUtils]: 21: Hoare triple {4600#(<= ~counter~0 1)} assume !(0 == ~cond); {4600#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:33,967 INFO L290 TraceCheckUtils]: 22: Hoare triple {4600#(<= ~counter~0 1)} assume true; {4600#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:33,968 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4600#(<= ~counter~0 1)} {4600#(<= ~counter~0 1)} #63#return; {4600#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:33,968 INFO L290 TraceCheckUtils]: 24: Hoare triple {4600#(<= ~counter~0 1)} assume !!(0 != ~r~0); {4600#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:33,968 INFO L290 TraceCheckUtils]: 25: Hoare triple {4600#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {4600#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:33,969 INFO L290 TraceCheckUtils]: 26: Hoare triple {4600#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4628#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:33,969 INFO L290 TraceCheckUtils]: 27: Hoare triple {4628#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {4628#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:33,970 INFO L272 TraceCheckUtils]: 28: Hoare triple {4628#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {4628#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:33,970 INFO L290 TraceCheckUtils]: 29: Hoare triple {4628#(<= ~counter~0 2)} ~cond := #in~cond; {4628#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:33,970 INFO L290 TraceCheckUtils]: 30: Hoare triple {4628#(<= ~counter~0 2)} assume !(0 == ~cond); {4628#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:33,970 INFO L290 TraceCheckUtils]: 31: Hoare triple {4628#(<= ~counter~0 2)} assume true; {4628#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:33,971 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {4628#(<= ~counter~0 2)} {4628#(<= ~counter~0 2)} #63#return; {4628#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:33,971 INFO L290 TraceCheckUtils]: 33: Hoare triple {4628#(<= ~counter~0 2)} assume !!(0 != ~r~0); {4628#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:33,971 INFO L290 TraceCheckUtils]: 34: Hoare triple {4628#(<= ~counter~0 2)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {4628#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:33,972 INFO L290 TraceCheckUtils]: 35: Hoare triple {4628#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4656#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:33,972 INFO L290 TraceCheckUtils]: 36: Hoare triple {4656#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {4656#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:33,973 INFO L272 TraceCheckUtils]: 37: Hoare triple {4656#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {4656#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:33,973 INFO L290 TraceCheckUtils]: 38: Hoare triple {4656#(<= ~counter~0 3)} ~cond := #in~cond; {4656#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:33,973 INFO L290 TraceCheckUtils]: 39: Hoare triple {4656#(<= ~counter~0 3)} assume !(0 == ~cond); {4656#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:33,973 INFO L290 TraceCheckUtils]: 40: Hoare triple {4656#(<= ~counter~0 3)} assume true; {4656#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:33,974 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {4656#(<= ~counter~0 3)} {4656#(<= ~counter~0 3)} #63#return; {4656#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:33,974 INFO L290 TraceCheckUtils]: 42: Hoare triple {4656#(<= ~counter~0 3)} assume !!(0 != ~r~0); {4656#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:33,974 INFO L290 TraceCheckUtils]: 43: Hoare triple {4656#(<= ~counter~0 3)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {4656#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:33,987 INFO L290 TraceCheckUtils]: 44: Hoare triple {4656#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4684#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:33,988 INFO L290 TraceCheckUtils]: 45: Hoare triple {4684#(<= ~counter~0 4)} assume !!(#t~post6 < 10);havoc #t~post6; {4684#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:33,988 INFO L272 TraceCheckUtils]: 46: Hoare triple {4684#(<= ~counter~0 4)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {4684#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:33,989 INFO L290 TraceCheckUtils]: 47: Hoare triple {4684#(<= ~counter~0 4)} ~cond := #in~cond; {4684#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:33,989 INFO L290 TraceCheckUtils]: 48: Hoare triple {4684#(<= ~counter~0 4)} assume !(0 == ~cond); {4684#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:33,989 INFO L290 TraceCheckUtils]: 49: Hoare triple {4684#(<= ~counter~0 4)} assume true; {4684#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:33,990 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {4684#(<= ~counter~0 4)} {4684#(<= ~counter~0 4)} #63#return; {4684#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:33,990 INFO L290 TraceCheckUtils]: 51: Hoare triple {4684#(<= ~counter~0 4)} assume !!(0 != ~r~0); {4684#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:33,990 INFO L290 TraceCheckUtils]: 52: Hoare triple {4684#(<= ~counter~0 4)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {4684#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:33,991 INFO L290 TraceCheckUtils]: 53: Hoare triple {4684#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4712#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:33,991 INFO L290 TraceCheckUtils]: 54: Hoare triple {4712#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {4712#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:33,992 INFO L272 TraceCheckUtils]: 55: Hoare triple {4712#(<= ~counter~0 5)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {4712#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:33,992 INFO L290 TraceCheckUtils]: 56: Hoare triple {4712#(<= ~counter~0 5)} ~cond := #in~cond; {4712#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:33,992 INFO L290 TraceCheckUtils]: 57: Hoare triple {4712#(<= ~counter~0 5)} assume !(0 == ~cond); {4712#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:33,992 INFO L290 TraceCheckUtils]: 58: Hoare triple {4712#(<= ~counter~0 5)} assume true; {4712#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:33,993 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {4712#(<= ~counter~0 5)} {4712#(<= ~counter~0 5)} #63#return; {4712#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:33,993 INFO L290 TraceCheckUtils]: 60: Hoare triple {4712#(<= ~counter~0 5)} assume !!(0 != ~r~0); {4712#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:33,994 INFO L290 TraceCheckUtils]: 61: Hoare triple {4712#(<= ~counter~0 5)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {4712#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:33,994 INFO L290 TraceCheckUtils]: 62: Hoare triple {4712#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4740#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:33,994 INFO L290 TraceCheckUtils]: 63: Hoare triple {4740#(<= ~counter~0 6)} assume !!(#t~post6 < 10);havoc #t~post6; {4740#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:33,995 INFO L272 TraceCheckUtils]: 64: Hoare triple {4740#(<= ~counter~0 6)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {4740#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:33,995 INFO L290 TraceCheckUtils]: 65: Hoare triple {4740#(<= ~counter~0 6)} ~cond := #in~cond; {4740#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:33,995 INFO L290 TraceCheckUtils]: 66: Hoare triple {4740#(<= ~counter~0 6)} assume !(0 == ~cond); {4740#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:33,996 INFO L290 TraceCheckUtils]: 67: Hoare triple {4740#(<= ~counter~0 6)} assume true; {4740#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:33,996 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {4740#(<= ~counter~0 6)} {4740#(<= ~counter~0 6)} #63#return; {4740#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:33,996 INFO L290 TraceCheckUtils]: 69: Hoare triple {4740#(<= ~counter~0 6)} assume !!(0 != ~r~0); {4740#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:33,997 INFO L290 TraceCheckUtils]: 70: Hoare triple {4740#(<= ~counter~0 6)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {4740#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:33,997 INFO L290 TraceCheckUtils]: 71: Hoare triple {4740#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4768#(<= |main_#t~post6| 6)} is VALID [2022-04-15 15:14:33,997 INFO L290 TraceCheckUtils]: 72: Hoare triple {4768#(<= |main_#t~post6| 6)} assume !(#t~post6 < 10);havoc #t~post6; {4544#false} is VALID [2022-04-15 15:14:33,997 INFO L272 TraceCheckUtils]: 73: Hoare triple {4544#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {4544#false} is VALID [2022-04-15 15:14:33,998 INFO L290 TraceCheckUtils]: 74: Hoare triple {4544#false} ~cond := #in~cond; {4544#false} is VALID [2022-04-15 15:14:33,998 INFO L290 TraceCheckUtils]: 75: Hoare triple {4544#false} assume 0 == ~cond; {4544#false} is VALID [2022-04-15 15:14:33,998 INFO L290 TraceCheckUtils]: 76: Hoare triple {4544#false} assume !false; {4544#false} is VALID [2022-04-15 15:14:33,998 INFO L134 CoverageAnalysis]: Checked inductivity of 163 backedges. 12 proven. 147 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 15:14:33,998 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 15:14:34,345 INFO L290 TraceCheckUtils]: 76: Hoare triple {4544#false} assume !false; {4544#false} is VALID [2022-04-15 15:14:34,346 INFO L290 TraceCheckUtils]: 75: Hoare triple {4544#false} assume 0 == ~cond; {4544#false} is VALID [2022-04-15 15:14:34,346 INFO L290 TraceCheckUtils]: 74: Hoare triple {4544#false} ~cond := #in~cond; {4544#false} is VALID [2022-04-15 15:14:34,346 INFO L272 TraceCheckUtils]: 73: Hoare triple {4544#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {4544#false} is VALID [2022-04-15 15:14:34,346 INFO L290 TraceCheckUtils]: 72: Hoare triple {4796#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {4544#false} is VALID [2022-04-15 15:14:34,346 INFO L290 TraceCheckUtils]: 71: Hoare triple {4800#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4796#(< |main_#t~post6| 10)} is VALID [2022-04-15 15:14:34,347 INFO L290 TraceCheckUtils]: 70: Hoare triple {4800#(< ~counter~0 10)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {4800#(< ~counter~0 10)} is VALID [2022-04-15 15:14:34,347 INFO L290 TraceCheckUtils]: 69: Hoare triple {4800#(< ~counter~0 10)} assume !!(0 != ~r~0); {4800#(< ~counter~0 10)} is VALID [2022-04-15 15:14:34,348 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {4543#true} {4800#(< ~counter~0 10)} #63#return; {4800#(< ~counter~0 10)} is VALID [2022-04-15 15:14:34,348 INFO L290 TraceCheckUtils]: 67: Hoare triple {4543#true} assume true; {4543#true} is VALID [2022-04-15 15:14:34,348 INFO L290 TraceCheckUtils]: 66: Hoare triple {4543#true} assume !(0 == ~cond); {4543#true} is VALID [2022-04-15 15:14:34,348 INFO L290 TraceCheckUtils]: 65: Hoare triple {4543#true} ~cond := #in~cond; {4543#true} is VALID [2022-04-15 15:14:34,348 INFO L272 TraceCheckUtils]: 64: Hoare triple {4800#(< ~counter~0 10)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {4543#true} is VALID [2022-04-15 15:14:34,348 INFO L290 TraceCheckUtils]: 63: Hoare triple {4800#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {4800#(< ~counter~0 10)} is VALID [2022-04-15 15:14:34,349 INFO L290 TraceCheckUtils]: 62: Hoare triple {4828#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4800#(< ~counter~0 10)} is VALID [2022-04-15 15:14:34,349 INFO L290 TraceCheckUtils]: 61: Hoare triple {4828#(< ~counter~0 9)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {4828#(< ~counter~0 9)} is VALID [2022-04-15 15:14:34,349 INFO L290 TraceCheckUtils]: 60: Hoare triple {4828#(< ~counter~0 9)} assume !!(0 != ~r~0); {4828#(< ~counter~0 9)} is VALID [2022-04-15 15:14:34,350 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {4543#true} {4828#(< ~counter~0 9)} #63#return; {4828#(< ~counter~0 9)} is VALID [2022-04-15 15:14:34,350 INFO L290 TraceCheckUtils]: 58: Hoare triple {4543#true} assume true; {4543#true} is VALID [2022-04-15 15:14:34,350 INFO L290 TraceCheckUtils]: 57: Hoare triple {4543#true} assume !(0 == ~cond); {4543#true} is VALID [2022-04-15 15:14:34,350 INFO L290 TraceCheckUtils]: 56: Hoare triple {4543#true} ~cond := #in~cond; {4543#true} is VALID [2022-04-15 15:14:34,350 INFO L272 TraceCheckUtils]: 55: Hoare triple {4828#(< ~counter~0 9)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {4543#true} is VALID [2022-04-15 15:14:34,350 INFO L290 TraceCheckUtils]: 54: Hoare triple {4828#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {4828#(< ~counter~0 9)} is VALID [2022-04-15 15:14:34,351 INFO L290 TraceCheckUtils]: 53: Hoare triple {4856#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4828#(< ~counter~0 9)} is VALID [2022-04-15 15:14:34,351 INFO L290 TraceCheckUtils]: 52: Hoare triple {4856#(< ~counter~0 8)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {4856#(< ~counter~0 8)} is VALID [2022-04-15 15:14:34,351 INFO L290 TraceCheckUtils]: 51: Hoare triple {4856#(< ~counter~0 8)} assume !!(0 != ~r~0); {4856#(< ~counter~0 8)} is VALID [2022-04-15 15:14:34,352 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {4543#true} {4856#(< ~counter~0 8)} #63#return; {4856#(< ~counter~0 8)} is VALID [2022-04-15 15:14:34,352 INFO L290 TraceCheckUtils]: 49: Hoare triple {4543#true} assume true; {4543#true} is VALID [2022-04-15 15:14:34,352 INFO L290 TraceCheckUtils]: 48: Hoare triple {4543#true} assume !(0 == ~cond); {4543#true} is VALID [2022-04-15 15:14:34,352 INFO L290 TraceCheckUtils]: 47: Hoare triple {4543#true} ~cond := #in~cond; {4543#true} is VALID [2022-04-15 15:14:34,352 INFO L272 TraceCheckUtils]: 46: Hoare triple {4856#(< ~counter~0 8)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {4543#true} is VALID [2022-04-15 15:14:34,352 INFO L290 TraceCheckUtils]: 45: Hoare triple {4856#(< ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {4856#(< ~counter~0 8)} is VALID [2022-04-15 15:14:34,353 INFO L290 TraceCheckUtils]: 44: Hoare triple {4740#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4856#(< ~counter~0 8)} is VALID [2022-04-15 15:14:34,353 INFO L290 TraceCheckUtils]: 43: Hoare triple {4740#(<= ~counter~0 6)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {4740#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:34,353 INFO L290 TraceCheckUtils]: 42: Hoare triple {4740#(<= ~counter~0 6)} assume !!(0 != ~r~0); {4740#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:34,354 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {4543#true} {4740#(<= ~counter~0 6)} #63#return; {4740#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:34,354 INFO L290 TraceCheckUtils]: 40: Hoare triple {4543#true} assume true; {4543#true} is VALID [2022-04-15 15:14:34,354 INFO L290 TraceCheckUtils]: 39: Hoare triple {4543#true} assume !(0 == ~cond); {4543#true} is VALID [2022-04-15 15:14:34,354 INFO L290 TraceCheckUtils]: 38: Hoare triple {4543#true} ~cond := #in~cond; {4543#true} is VALID [2022-04-15 15:14:34,354 INFO L272 TraceCheckUtils]: 37: Hoare triple {4740#(<= ~counter~0 6)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {4543#true} is VALID [2022-04-15 15:14:34,354 INFO L290 TraceCheckUtils]: 36: Hoare triple {4740#(<= ~counter~0 6)} assume !!(#t~post6 < 10);havoc #t~post6; {4740#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:34,355 INFO L290 TraceCheckUtils]: 35: Hoare triple {4712#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4740#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:34,355 INFO L290 TraceCheckUtils]: 34: Hoare triple {4712#(<= ~counter~0 5)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {4712#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:34,355 INFO L290 TraceCheckUtils]: 33: Hoare triple {4712#(<= ~counter~0 5)} assume !!(0 != ~r~0); {4712#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:34,356 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {4543#true} {4712#(<= ~counter~0 5)} #63#return; {4712#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:34,356 INFO L290 TraceCheckUtils]: 31: Hoare triple {4543#true} assume true; {4543#true} is VALID [2022-04-15 15:14:34,356 INFO L290 TraceCheckUtils]: 30: Hoare triple {4543#true} assume !(0 == ~cond); {4543#true} is VALID [2022-04-15 15:14:34,356 INFO L290 TraceCheckUtils]: 29: Hoare triple {4543#true} ~cond := #in~cond; {4543#true} is VALID [2022-04-15 15:14:34,356 INFO L272 TraceCheckUtils]: 28: Hoare triple {4712#(<= ~counter~0 5)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {4543#true} is VALID [2022-04-15 15:14:34,356 INFO L290 TraceCheckUtils]: 27: Hoare triple {4712#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {4712#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:34,356 INFO L290 TraceCheckUtils]: 26: Hoare triple {4684#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4712#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:34,357 INFO L290 TraceCheckUtils]: 25: Hoare triple {4684#(<= ~counter~0 4)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {4684#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:34,357 INFO L290 TraceCheckUtils]: 24: Hoare triple {4684#(<= ~counter~0 4)} assume !!(0 != ~r~0); {4684#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:34,358 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4543#true} {4684#(<= ~counter~0 4)} #63#return; {4684#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:34,358 INFO L290 TraceCheckUtils]: 22: Hoare triple {4543#true} assume true; {4543#true} is VALID [2022-04-15 15:14:34,358 INFO L290 TraceCheckUtils]: 21: Hoare triple {4543#true} assume !(0 == ~cond); {4543#true} is VALID [2022-04-15 15:14:34,358 INFO L290 TraceCheckUtils]: 20: Hoare triple {4543#true} ~cond := #in~cond; {4543#true} is VALID [2022-04-15 15:14:34,358 INFO L272 TraceCheckUtils]: 19: Hoare triple {4684#(<= ~counter~0 4)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {4543#true} is VALID [2022-04-15 15:14:34,358 INFO L290 TraceCheckUtils]: 18: Hoare triple {4684#(<= ~counter~0 4)} assume !!(#t~post6 < 10);havoc #t~post6; {4684#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:34,358 INFO L290 TraceCheckUtils]: 17: Hoare triple {4656#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4684#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:34,359 INFO L290 TraceCheckUtils]: 16: Hoare triple {4656#(<= ~counter~0 3)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {4656#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:34,359 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4543#true} {4656#(<= ~counter~0 3)} #61#return; {4656#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:34,359 INFO L290 TraceCheckUtils]: 14: Hoare triple {4543#true} assume true; {4543#true} is VALID [2022-04-15 15:14:34,359 INFO L290 TraceCheckUtils]: 13: Hoare triple {4543#true} assume !(0 == ~cond); {4543#true} is VALID [2022-04-15 15:14:34,359 INFO L290 TraceCheckUtils]: 12: Hoare triple {4543#true} ~cond := #in~cond; {4543#true} is VALID [2022-04-15 15:14:34,359 INFO L272 TraceCheckUtils]: 11: Hoare triple {4656#(<= ~counter~0 3)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {4543#true} is VALID [2022-04-15 15:14:34,375 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4543#true} {4656#(<= ~counter~0 3)} #59#return; {4656#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:34,376 INFO L290 TraceCheckUtils]: 9: Hoare triple {4543#true} assume true; {4543#true} is VALID [2022-04-15 15:14:34,376 INFO L290 TraceCheckUtils]: 8: Hoare triple {4543#true} assume !(0 == ~cond); {4543#true} is VALID [2022-04-15 15:14:34,376 INFO L290 TraceCheckUtils]: 7: Hoare triple {4543#true} ~cond := #in~cond; {4543#true} is VALID [2022-04-15 15:14:34,376 INFO L272 TraceCheckUtils]: 6: Hoare triple {4656#(<= ~counter~0 3)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {4543#true} is VALID [2022-04-15 15:14:34,376 INFO L290 TraceCheckUtils]: 5: Hoare triple {4656#(<= ~counter~0 3)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {4656#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:34,376 INFO L272 TraceCheckUtils]: 4: Hoare triple {4656#(<= ~counter~0 3)} call #t~ret7 := main(); {4656#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:34,377 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4656#(<= ~counter~0 3)} {4543#true} #67#return; {4656#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:34,377 INFO L290 TraceCheckUtils]: 2: Hoare triple {4656#(<= ~counter~0 3)} assume true; {4656#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:34,378 INFO L290 TraceCheckUtils]: 1: Hoare triple {4543#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4656#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:34,378 INFO L272 TraceCheckUtils]: 0: Hoare triple {4543#true} call ULTIMATE.init(); {4543#true} is VALID [2022-04-15 15:14:34,378 INFO L134 CoverageAnalysis]: Checked inductivity of 163 backedges. 12 proven. 87 refuted. 0 times theorem prover too weak. 64 trivial. 0 not checked. [2022-04-15 15:14:34,379 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:14:34,379 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [752882503] [2022-04-15 15:14:34,379 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:14:34,379 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [147337967] [2022-04-15 15:14:34,379 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [147337967] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 15:14:34,379 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 15:14:34,379 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 14 [2022-04-15 15:14:34,379 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:14:34,379 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1145116815] [2022-04-15 15:14:34,379 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1145116815] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:14:34,379 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:14:34,379 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-15 15:14:34,380 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1485654999] [2022-04-15 15:14:34,380 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:14:34,380 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 5.4) internal successors, (54), 9 states have internal predecessors, (54), 9 states have call successors, (11), 9 states have call predecessors, (11), 7 states have return successors, (9), 7 states have call predecessors, (9), 8 states have call successors, (9) Word has length 77 [2022-04-15 15:14:34,380 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:14:34,380 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 5.4) internal successors, (54), 9 states have internal predecessors, (54), 9 states have call successors, (11), 9 states have call predecessors, (11), 7 states have return successors, (9), 7 states have call predecessors, (9), 8 states have call successors, (9) [2022-04-15 15:14:34,431 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:34,431 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-15 15:14:34,431 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:14:34,432 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-15 15:14:34,432 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-15 15:14:34,432 INFO L87 Difference]: Start difference. First operand 74 states and 81 transitions. Second operand has 10 states, 10 states have (on average 5.4) internal successors, (54), 9 states have internal predecessors, (54), 9 states have call successors, (11), 9 states have call predecessors, (11), 7 states have return successors, (9), 7 states have call predecessors, (9), 8 states have call successors, (9) [2022-04-15 15:14:34,697 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:34,697 INFO L93 Difference]: Finished difference Result 88 states and 96 transitions. [2022-04-15 15:14:34,697 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-15 15:14:34,697 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 5.4) internal successors, (54), 9 states have internal predecessors, (54), 9 states have call successors, (11), 9 states have call predecessors, (11), 7 states have return successors, (9), 7 states have call predecessors, (9), 8 states have call successors, (9) Word has length 77 [2022-04-15 15:14:34,698 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:14:34,698 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 5.4) internal successors, (54), 9 states have internal predecessors, (54), 9 states have call successors, (11), 9 states have call predecessors, (11), 7 states have return successors, (9), 7 states have call predecessors, (9), 8 states have call successors, (9) [2022-04-15 15:14:34,699 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 95 transitions. [2022-04-15 15:14:34,699 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 5.4) internal successors, (54), 9 states have internal predecessors, (54), 9 states have call successors, (11), 9 states have call predecessors, (11), 7 states have return successors, (9), 7 states have call predecessors, (9), 8 states have call successors, (9) [2022-04-15 15:14:34,700 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 95 transitions. [2022-04-15 15:14:34,701 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 95 transitions. [2022-04-15 15:14:34,761 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 95 edges. 95 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:34,762 INFO L225 Difference]: With dead ends: 88 [2022-04-15 15:14:34,762 INFO L226 Difference]: Without dead ends: 83 [2022-04-15 15:14:34,762 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 159 GetRequests, 140 SyntacticMatches, 1 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 33 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=149, Invalid=231, Unknown=0, NotChecked=0, Total=380 [2022-04-15 15:14:34,763 INFO L913 BasicCegarLoop]: 32 mSDtfsCounter, 27 mSDsluCounter, 98 mSDsCounter, 0 mSdLazyCounter, 35 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 27 SdHoareTripleChecker+Valid, 130 SdHoareTripleChecker+Invalid, 56 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 35 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 15:14:34,763 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [27 Valid, 130 Invalid, 56 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 35 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 15:14:34,763 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 83 states. [2022-04-15 15:14:34,825 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 83 to 83. [2022-04-15 15:14:34,825 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:14:34,825 INFO L82 GeneralOperation]: Start isEquivalent. First operand 83 states. Second operand has 83 states, 61 states have (on average 1.1311475409836065) internal successors, (69), 61 states have internal predecessors, (69), 12 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 15:14:34,825 INFO L74 IsIncluded]: Start isIncluded. First operand 83 states. Second operand has 83 states, 61 states have (on average 1.1311475409836065) internal successors, (69), 61 states have internal predecessors, (69), 12 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 15:14:34,825 INFO L87 Difference]: Start difference. First operand 83 states. Second operand has 83 states, 61 states have (on average 1.1311475409836065) internal successors, (69), 61 states have internal predecessors, (69), 12 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 15:14:34,827 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:34,827 INFO L93 Difference]: Finished difference Result 83 states and 91 transitions. [2022-04-15 15:14:34,827 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 91 transitions. [2022-04-15 15:14:34,827 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:14:34,827 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:14:34,827 INFO L74 IsIncluded]: Start isIncluded. First operand has 83 states, 61 states have (on average 1.1311475409836065) internal successors, (69), 61 states have internal predecessors, (69), 12 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 83 states. [2022-04-15 15:14:34,827 INFO L87 Difference]: Start difference. First operand has 83 states, 61 states have (on average 1.1311475409836065) internal successors, (69), 61 states have internal predecessors, (69), 12 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 83 states. [2022-04-15 15:14:34,828 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:34,829 INFO L93 Difference]: Finished difference Result 83 states and 91 transitions. [2022-04-15 15:14:34,829 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 91 transitions. [2022-04-15 15:14:34,829 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:14:34,829 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:14:34,829 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:14:34,829 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:14:34,829 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 83 states, 61 states have (on average 1.1311475409836065) internal successors, (69), 61 states have internal predecessors, (69), 12 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 15:14:34,830 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 83 states to 83 states and 91 transitions. [2022-04-15 15:14:34,830 INFO L78 Accepts]: Start accepts. Automaton has 83 states and 91 transitions. Word has length 77 [2022-04-15 15:14:34,830 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:14:34,830 INFO L478 AbstractCegarLoop]: Abstraction has 83 states and 91 transitions. [2022-04-15 15:14:34,831 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 5.4) internal successors, (54), 9 states have internal predecessors, (54), 9 states have call successors, (11), 9 states have call predecessors, (11), 7 states have return successors, (9), 7 states have call predecessors, (9), 8 states have call successors, (9) [2022-04-15 15:14:34,831 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 83 states and 91 transitions. [2022-04-15 15:14:36,865 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 91 edges. 91 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:36,865 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 91 transitions. [2022-04-15 15:14:36,865 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 87 [2022-04-15 15:14:36,866 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:14:36,866 INFO L499 BasicCegarLoop]: trace histogram [8, 8, 7, 7, 7, 7, 7, 7, 7, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 15:14:36,871 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2022-04-15 15:14:37,070 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-04-15 15:14:37,070 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:14:37,070 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:14:37,070 INFO L85 PathProgramCache]: Analyzing trace with hash 1848611036, now seen corresponding path program 13 times [2022-04-15 15:14:37,070 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:14:37,070 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [159907292] [2022-04-15 15:14:37,071 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:14:37,071 INFO L85 PathProgramCache]: Analyzing trace with hash 1848611036, now seen corresponding path program 14 times [2022-04-15 15:14:37,071 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:14:37,071 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [795828154] [2022-04-15 15:14:37,071 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:14:37,071 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:14:37,084 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:14:37,084 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [662788668] [2022-04-15 15:14:37,084 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 15:14:37,084 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:14:37,084 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:14:37,085 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 15:14:37,086 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Waiting until timeout for monitored process [2022-04-15 15:14:37,134 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 15:14:37,134 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:14:37,135 INFO L263 TraceCheckSpWp]: Trace formula consists of 233 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-15 15:14:37,150 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:14:37,151 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:14:37,536 INFO L272 TraceCheckUtils]: 0: Hoare triple {5538#true} call ULTIMATE.init(); {5538#true} is VALID [2022-04-15 15:14:37,537 INFO L290 TraceCheckUtils]: 1: Hoare triple {5538#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {5546#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:37,537 INFO L290 TraceCheckUtils]: 2: Hoare triple {5546#(<= ~counter~0 0)} assume true; {5546#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:37,537 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5546#(<= ~counter~0 0)} {5538#true} #67#return; {5546#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:37,537 INFO L272 TraceCheckUtils]: 4: Hoare triple {5546#(<= ~counter~0 0)} call #t~ret7 := main(); {5546#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:37,538 INFO L290 TraceCheckUtils]: 5: Hoare triple {5546#(<= ~counter~0 0)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {5546#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:37,538 INFO L272 TraceCheckUtils]: 6: Hoare triple {5546#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {5546#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:37,538 INFO L290 TraceCheckUtils]: 7: Hoare triple {5546#(<= ~counter~0 0)} ~cond := #in~cond; {5546#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:37,539 INFO L290 TraceCheckUtils]: 8: Hoare triple {5546#(<= ~counter~0 0)} assume !(0 == ~cond); {5546#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:37,539 INFO L290 TraceCheckUtils]: 9: Hoare triple {5546#(<= ~counter~0 0)} assume true; {5546#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:37,539 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5546#(<= ~counter~0 0)} {5546#(<= ~counter~0 0)} #59#return; {5546#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:37,540 INFO L272 TraceCheckUtils]: 11: Hoare triple {5546#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {5546#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:37,540 INFO L290 TraceCheckUtils]: 12: Hoare triple {5546#(<= ~counter~0 0)} ~cond := #in~cond; {5546#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:37,540 INFO L290 TraceCheckUtils]: 13: Hoare triple {5546#(<= ~counter~0 0)} assume !(0 == ~cond); {5546#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:37,541 INFO L290 TraceCheckUtils]: 14: Hoare triple {5546#(<= ~counter~0 0)} assume true; {5546#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:37,541 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5546#(<= ~counter~0 0)} {5546#(<= ~counter~0 0)} #61#return; {5546#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:37,541 INFO L290 TraceCheckUtils]: 16: Hoare triple {5546#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {5546#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:37,542 INFO L290 TraceCheckUtils]: 17: Hoare triple {5546#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5595#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:37,542 INFO L290 TraceCheckUtils]: 18: Hoare triple {5595#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {5595#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:37,543 INFO L272 TraceCheckUtils]: 19: Hoare triple {5595#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {5595#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:37,543 INFO L290 TraceCheckUtils]: 20: Hoare triple {5595#(<= ~counter~0 1)} ~cond := #in~cond; {5595#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:37,543 INFO L290 TraceCheckUtils]: 21: Hoare triple {5595#(<= ~counter~0 1)} assume !(0 == ~cond); {5595#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:37,543 INFO L290 TraceCheckUtils]: 22: Hoare triple {5595#(<= ~counter~0 1)} assume true; {5595#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:37,544 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {5595#(<= ~counter~0 1)} {5595#(<= ~counter~0 1)} #63#return; {5595#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:37,544 INFO L290 TraceCheckUtils]: 24: Hoare triple {5595#(<= ~counter~0 1)} assume !!(0 != ~r~0); {5595#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:37,544 INFO L290 TraceCheckUtils]: 25: Hoare triple {5595#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5595#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:37,545 INFO L290 TraceCheckUtils]: 26: Hoare triple {5595#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5623#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:37,545 INFO L290 TraceCheckUtils]: 27: Hoare triple {5623#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {5623#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:37,546 INFO L272 TraceCheckUtils]: 28: Hoare triple {5623#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {5623#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:37,546 INFO L290 TraceCheckUtils]: 29: Hoare triple {5623#(<= ~counter~0 2)} ~cond := #in~cond; {5623#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:37,546 INFO L290 TraceCheckUtils]: 30: Hoare triple {5623#(<= ~counter~0 2)} assume !(0 == ~cond); {5623#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:37,546 INFO L290 TraceCheckUtils]: 31: Hoare triple {5623#(<= ~counter~0 2)} assume true; {5623#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:37,547 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {5623#(<= ~counter~0 2)} {5623#(<= ~counter~0 2)} #63#return; {5623#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:37,547 INFO L290 TraceCheckUtils]: 33: Hoare triple {5623#(<= ~counter~0 2)} assume !!(0 != ~r~0); {5623#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:37,547 INFO L290 TraceCheckUtils]: 34: Hoare triple {5623#(<= ~counter~0 2)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5623#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:37,548 INFO L290 TraceCheckUtils]: 35: Hoare triple {5623#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5651#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:37,548 INFO L290 TraceCheckUtils]: 36: Hoare triple {5651#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {5651#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:37,549 INFO L272 TraceCheckUtils]: 37: Hoare triple {5651#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {5651#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:37,549 INFO L290 TraceCheckUtils]: 38: Hoare triple {5651#(<= ~counter~0 3)} ~cond := #in~cond; {5651#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:37,549 INFO L290 TraceCheckUtils]: 39: Hoare triple {5651#(<= ~counter~0 3)} assume !(0 == ~cond); {5651#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:37,549 INFO L290 TraceCheckUtils]: 40: Hoare triple {5651#(<= ~counter~0 3)} assume true; {5651#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:37,550 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {5651#(<= ~counter~0 3)} {5651#(<= ~counter~0 3)} #63#return; {5651#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:37,550 INFO L290 TraceCheckUtils]: 42: Hoare triple {5651#(<= ~counter~0 3)} assume !!(0 != ~r~0); {5651#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:37,550 INFO L290 TraceCheckUtils]: 43: Hoare triple {5651#(<= ~counter~0 3)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5651#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:37,551 INFO L290 TraceCheckUtils]: 44: Hoare triple {5651#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5679#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:37,551 INFO L290 TraceCheckUtils]: 45: Hoare triple {5679#(<= ~counter~0 4)} assume !!(#t~post6 < 10);havoc #t~post6; {5679#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:37,552 INFO L272 TraceCheckUtils]: 46: Hoare triple {5679#(<= ~counter~0 4)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {5679#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:37,552 INFO L290 TraceCheckUtils]: 47: Hoare triple {5679#(<= ~counter~0 4)} ~cond := #in~cond; {5679#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:37,552 INFO L290 TraceCheckUtils]: 48: Hoare triple {5679#(<= ~counter~0 4)} assume !(0 == ~cond); {5679#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:37,552 INFO L290 TraceCheckUtils]: 49: Hoare triple {5679#(<= ~counter~0 4)} assume true; {5679#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:37,553 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {5679#(<= ~counter~0 4)} {5679#(<= ~counter~0 4)} #63#return; {5679#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:37,553 INFO L290 TraceCheckUtils]: 51: Hoare triple {5679#(<= ~counter~0 4)} assume !!(0 != ~r~0); {5679#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:37,553 INFO L290 TraceCheckUtils]: 52: Hoare triple {5679#(<= ~counter~0 4)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5679#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:37,554 INFO L290 TraceCheckUtils]: 53: Hoare triple {5679#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5707#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:37,554 INFO L290 TraceCheckUtils]: 54: Hoare triple {5707#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {5707#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:37,554 INFO L272 TraceCheckUtils]: 55: Hoare triple {5707#(<= ~counter~0 5)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {5707#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:37,555 INFO L290 TraceCheckUtils]: 56: Hoare triple {5707#(<= ~counter~0 5)} ~cond := #in~cond; {5707#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:37,555 INFO L290 TraceCheckUtils]: 57: Hoare triple {5707#(<= ~counter~0 5)} assume !(0 == ~cond); {5707#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:37,555 INFO L290 TraceCheckUtils]: 58: Hoare triple {5707#(<= ~counter~0 5)} assume true; {5707#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:37,571 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {5707#(<= ~counter~0 5)} {5707#(<= ~counter~0 5)} #63#return; {5707#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:37,572 INFO L290 TraceCheckUtils]: 60: Hoare triple {5707#(<= ~counter~0 5)} assume !!(0 != ~r~0); {5707#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:37,572 INFO L290 TraceCheckUtils]: 61: Hoare triple {5707#(<= ~counter~0 5)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5707#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:37,573 INFO L290 TraceCheckUtils]: 62: Hoare triple {5707#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5735#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:37,573 INFO L290 TraceCheckUtils]: 63: Hoare triple {5735#(<= ~counter~0 6)} assume !!(#t~post6 < 10);havoc #t~post6; {5735#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:37,574 INFO L272 TraceCheckUtils]: 64: Hoare triple {5735#(<= ~counter~0 6)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {5735#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:37,574 INFO L290 TraceCheckUtils]: 65: Hoare triple {5735#(<= ~counter~0 6)} ~cond := #in~cond; {5735#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:37,574 INFO L290 TraceCheckUtils]: 66: Hoare triple {5735#(<= ~counter~0 6)} assume !(0 == ~cond); {5735#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:37,574 INFO L290 TraceCheckUtils]: 67: Hoare triple {5735#(<= ~counter~0 6)} assume true; {5735#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:37,575 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {5735#(<= ~counter~0 6)} {5735#(<= ~counter~0 6)} #63#return; {5735#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:37,575 INFO L290 TraceCheckUtils]: 69: Hoare triple {5735#(<= ~counter~0 6)} assume !!(0 != ~r~0); {5735#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:37,575 INFO L290 TraceCheckUtils]: 70: Hoare triple {5735#(<= ~counter~0 6)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5735#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:37,576 INFO L290 TraceCheckUtils]: 71: Hoare triple {5735#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5763#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:37,576 INFO L290 TraceCheckUtils]: 72: Hoare triple {5763#(<= ~counter~0 7)} assume !!(#t~post6 < 10);havoc #t~post6; {5763#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:37,578 INFO L272 TraceCheckUtils]: 73: Hoare triple {5763#(<= ~counter~0 7)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {5763#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:37,579 INFO L290 TraceCheckUtils]: 74: Hoare triple {5763#(<= ~counter~0 7)} ~cond := #in~cond; {5763#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:37,579 INFO L290 TraceCheckUtils]: 75: Hoare triple {5763#(<= ~counter~0 7)} assume !(0 == ~cond); {5763#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:37,579 INFO L290 TraceCheckUtils]: 76: Hoare triple {5763#(<= ~counter~0 7)} assume true; {5763#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:37,580 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {5763#(<= ~counter~0 7)} {5763#(<= ~counter~0 7)} #63#return; {5763#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:37,580 INFO L290 TraceCheckUtils]: 78: Hoare triple {5763#(<= ~counter~0 7)} assume !!(0 != ~r~0); {5763#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:37,580 INFO L290 TraceCheckUtils]: 79: Hoare triple {5763#(<= ~counter~0 7)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5763#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:37,581 INFO L290 TraceCheckUtils]: 80: Hoare triple {5763#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5791#(<= |main_#t~post6| 7)} is VALID [2022-04-15 15:14:37,581 INFO L290 TraceCheckUtils]: 81: Hoare triple {5791#(<= |main_#t~post6| 7)} assume !(#t~post6 < 10);havoc #t~post6; {5539#false} is VALID [2022-04-15 15:14:37,581 INFO L272 TraceCheckUtils]: 82: Hoare triple {5539#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {5539#false} is VALID [2022-04-15 15:14:37,581 INFO L290 TraceCheckUtils]: 83: Hoare triple {5539#false} ~cond := #in~cond; {5539#false} is VALID [2022-04-15 15:14:37,581 INFO L290 TraceCheckUtils]: 84: Hoare triple {5539#false} assume 0 == ~cond; {5539#false} is VALID [2022-04-15 15:14:37,581 INFO L290 TraceCheckUtils]: 85: Hoare triple {5539#false} assume !false; {5539#false} is VALID [2022-04-15 15:14:37,582 INFO L134 CoverageAnalysis]: Checked inductivity of 221 backedges. 14 proven. 203 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 15:14:37,582 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 15:14:37,974 INFO L290 TraceCheckUtils]: 85: Hoare triple {5539#false} assume !false; {5539#false} is VALID [2022-04-15 15:14:37,974 INFO L290 TraceCheckUtils]: 84: Hoare triple {5539#false} assume 0 == ~cond; {5539#false} is VALID [2022-04-15 15:14:37,974 INFO L290 TraceCheckUtils]: 83: Hoare triple {5539#false} ~cond := #in~cond; {5539#false} is VALID [2022-04-15 15:14:37,974 INFO L272 TraceCheckUtils]: 82: Hoare triple {5539#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {5539#false} is VALID [2022-04-15 15:14:37,975 INFO L290 TraceCheckUtils]: 81: Hoare triple {5819#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {5539#false} is VALID [2022-04-15 15:14:37,975 INFO L290 TraceCheckUtils]: 80: Hoare triple {5823#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5819#(< |main_#t~post6| 10)} is VALID [2022-04-15 15:14:37,975 INFO L290 TraceCheckUtils]: 79: Hoare triple {5823#(< ~counter~0 10)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5823#(< ~counter~0 10)} is VALID [2022-04-15 15:14:37,975 INFO L290 TraceCheckUtils]: 78: Hoare triple {5823#(< ~counter~0 10)} assume !!(0 != ~r~0); {5823#(< ~counter~0 10)} is VALID [2022-04-15 15:14:37,976 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {5538#true} {5823#(< ~counter~0 10)} #63#return; {5823#(< ~counter~0 10)} is VALID [2022-04-15 15:14:37,976 INFO L290 TraceCheckUtils]: 76: Hoare triple {5538#true} assume true; {5538#true} is VALID [2022-04-15 15:14:37,976 INFO L290 TraceCheckUtils]: 75: Hoare triple {5538#true} assume !(0 == ~cond); {5538#true} is VALID [2022-04-15 15:14:37,976 INFO L290 TraceCheckUtils]: 74: Hoare triple {5538#true} ~cond := #in~cond; {5538#true} is VALID [2022-04-15 15:14:37,976 INFO L272 TraceCheckUtils]: 73: Hoare triple {5823#(< ~counter~0 10)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {5538#true} is VALID [2022-04-15 15:14:37,977 INFO L290 TraceCheckUtils]: 72: Hoare triple {5823#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {5823#(< ~counter~0 10)} is VALID [2022-04-15 15:14:37,977 INFO L290 TraceCheckUtils]: 71: Hoare triple {5851#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5823#(< ~counter~0 10)} is VALID [2022-04-15 15:14:37,977 INFO L290 TraceCheckUtils]: 70: Hoare triple {5851#(< ~counter~0 9)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5851#(< ~counter~0 9)} is VALID [2022-04-15 15:14:37,978 INFO L290 TraceCheckUtils]: 69: Hoare triple {5851#(< ~counter~0 9)} assume !!(0 != ~r~0); {5851#(< ~counter~0 9)} is VALID [2022-04-15 15:14:37,978 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {5538#true} {5851#(< ~counter~0 9)} #63#return; {5851#(< ~counter~0 9)} is VALID [2022-04-15 15:14:37,978 INFO L290 TraceCheckUtils]: 67: Hoare triple {5538#true} assume true; {5538#true} is VALID [2022-04-15 15:14:37,978 INFO L290 TraceCheckUtils]: 66: Hoare triple {5538#true} assume !(0 == ~cond); {5538#true} is VALID [2022-04-15 15:14:37,978 INFO L290 TraceCheckUtils]: 65: Hoare triple {5538#true} ~cond := #in~cond; {5538#true} is VALID [2022-04-15 15:14:37,978 INFO L272 TraceCheckUtils]: 64: Hoare triple {5851#(< ~counter~0 9)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {5538#true} is VALID [2022-04-15 15:14:37,979 INFO L290 TraceCheckUtils]: 63: Hoare triple {5851#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {5851#(< ~counter~0 9)} is VALID [2022-04-15 15:14:37,979 INFO L290 TraceCheckUtils]: 62: Hoare triple {5763#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5851#(< ~counter~0 9)} is VALID [2022-04-15 15:14:37,979 INFO L290 TraceCheckUtils]: 61: Hoare triple {5763#(<= ~counter~0 7)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5763#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:37,980 INFO L290 TraceCheckUtils]: 60: Hoare triple {5763#(<= ~counter~0 7)} assume !!(0 != ~r~0); {5763#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:37,980 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {5538#true} {5763#(<= ~counter~0 7)} #63#return; {5763#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:37,980 INFO L290 TraceCheckUtils]: 58: Hoare triple {5538#true} assume true; {5538#true} is VALID [2022-04-15 15:14:37,980 INFO L290 TraceCheckUtils]: 57: Hoare triple {5538#true} assume !(0 == ~cond); {5538#true} is VALID [2022-04-15 15:14:37,980 INFO L290 TraceCheckUtils]: 56: Hoare triple {5538#true} ~cond := #in~cond; {5538#true} is VALID [2022-04-15 15:14:37,980 INFO L272 TraceCheckUtils]: 55: Hoare triple {5763#(<= ~counter~0 7)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {5538#true} is VALID [2022-04-15 15:14:37,981 INFO L290 TraceCheckUtils]: 54: Hoare triple {5763#(<= ~counter~0 7)} assume !!(#t~post6 < 10);havoc #t~post6; {5763#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:37,981 INFO L290 TraceCheckUtils]: 53: Hoare triple {5735#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5763#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:37,981 INFO L290 TraceCheckUtils]: 52: Hoare triple {5735#(<= ~counter~0 6)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5735#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:37,982 INFO L290 TraceCheckUtils]: 51: Hoare triple {5735#(<= ~counter~0 6)} assume !!(0 != ~r~0); {5735#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:37,982 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {5538#true} {5735#(<= ~counter~0 6)} #63#return; {5735#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:37,982 INFO L290 TraceCheckUtils]: 49: Hoare triple {5538#true} assume true; {5538#true} is VALID [2022-04-15 15:14:37,982 INFO L290 TraceCheckUtils]: 48: Hoare triple {5538#true} assume !(0 == ~cond); {5538#true} is VALID [2022-04-15 15:14:37,982 INFO L290 TraceCheckUtils]: 47: Hoare triple {5538#true} ~cond := #in~cond; {5538#true} is VALID [2022-04-15 15:14:37,982 INFO L272 TraceCheckUtils]: 46: Hoare triple {5735#(<= ~counter~0 6)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {5538#true} is VALID [2022-04-15 15:14:37,983 INFO L290 TraceCheckUtils]: 45: Hoare triple {5735#(<= ~counter~0 6)} assume !!(#t~post6 < 10);havoc #t~post6; {5735#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:37,983 INFO L290 TraceCheckUtils]: 44: Hoare triple {5707#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5735#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:37,983 INFO L290 TraceCheckUtils]: 43: Hoare triple {5707#(<= ~counter~0 5)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5707#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:37,984 INFO L290 TraceCheckUtils]: 42: Hoare triple {5707#(<= ~counter~0 5)} assume !!(0 != ~r~0); {5707#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:37,984 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {5538#true} {5707#(<= ~counter~0 5)} #63#return; {5707#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:37,984 INFO L290 TraceCheckUtils]: 40: Hoare triple {5538#true} assume true; {5538#true} is VALID [2022-04-15 15:14:37,984 INFO L290 TraceCheckUtils]: 39: Hoare triple {5538#true} assume !(0 == ~cond); {5538#true} is VALID [2022-04-15 15:14:37,984 INFO L290 TraceCheckUtils]: 38: Hoare triple {5538#true} ~cond := #in~cond; {5538#true} is VALID [2022-04-15 15:14:37,984 INFO L272 TraceCheckUtils]: 37: Hoare triple {5707#(<= ~counter~0 5)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {5538#true} is VALID [2022-04-15 15:14:37,985 INFO L290 TraceCheckUtils]: 36: Hoare triple {5707#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {5707#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:37,985 INFO L290 TraceCheckUtils]: 35: Hoare triple {5679#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5707#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:37,985 INFO L290 TraceCheckUtils]: 34: Hoare triple {5679#(<= ~counter~0 4)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5679#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:37,985 INFO L290 TraceCheckUtils]: 33: Hoare triple {5679#(<= ~counter~0 4)} assume !!(0 != ~r~0); {5679#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:37,986 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {5538#true} {5679#(<= ~counter~0 4)} #63#return; {5679#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:37,986 INFO L290 TraceCheckUtils]: 31: Hoare triple {5538#true} assume true; {5538#true} is VALID [2022-04-15 15:14:37,986 INFO L290 TraceCheckUtils]: 30: Hoare triple {5538#true} assume !(0 == ~cond); {5538#true} is VALID [2022-04-15 15:14:37,986 INFO L290 TraceCheckUtils]: 29: Hoare triple {5538#true} ~cond := #in~cond; {5538#true} is VALID [2022-04-15 15:14:37,986 INFO L272 TraceCheckUtils]: 28: Hoare triple {5679#(<= ~counter~0 4)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {5538#true} is VALID [2022-04-15 15:14:37,987 INFO L290 TraceCheckUtils]: 27: Hoare triple {5679#(<= ~counter~0 4)} assume !!(#t~post6 < 10);havoc #t~post6; {5679#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:37,987 INFO L290 TraceCheckUtils]: 26: Hoare triple {5651#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5679#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:37,987 INFO L290 TraceCheckUtils]: 25: Hoare triple {5651#(<= ~counter~0 3)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5651#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:37,987 INFO L290 TraceCheckUtils]: 24: Hoare triple {5651#(<= ~counter~0 3)} assume !!(0 != ~r~0); {5651#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:37,988 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {5538#true} {5651#(<= ~counter~0 3)} #63#return; {5651#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:37,988 INFO L290 TraceCheckUtils]: 22: Hoare triple {5538#true} assume true; {5538#true} is VALID [2022-04-15 15:14:37,988 INFO L290 TraceCheckUtils]: 21: Hoare triple {5538#true} assume !(0 == ~cond); {5538#true} is VALID [2022-04-15 15:14:37,988 INFO L290 TraceCheckUtils]: 20: Hoare triple {5538#true} ~cond := #in~cond; {5538#true} is VALID [2022-04-15 15:14:37,988 INFO L272 TraceCheckUtils]: 19: Hoare triple {5651#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {5538#true} is VALID [2022-04-15 15:14:37,988 INFO L290 TraceCheckUtils]: 18: Hoare triple {5651#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {5651#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:37,989 INFO L290 TraceCheckUtils]: 17: Hoare triple {5623#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5651#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:37,989 INFO L290 TraceCheckUtils]: 16: Hoare triple {5623#(<= ~counter~0 2)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {5623#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:37,990 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5538#true} {5623#(<= ~counter~0 2)} #61#return; {5623#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:37,990 INFO L290 TraceCheckUtils]: 14: Hoare triple {5538#true} assume true; {5538#true} is VALID [2022-04-15 15:14:37,990 INFO L290 TraceCheckUtils]: 13: Hoare triple {5538#true} assume !(0 == ~cond); {5538#true} is VALID [2022-04-15 15:14:37,990 INFO L290 TraceCheckUtils]: 12: Hoare triple {5538#true} ~cond := #in~cond; {5538#true} is VALID [2022-04-15 15:14:37,990 INFO L272 TraceCheckUtils]: 11: Hoare triple {5623#(<= ~counter~0 2)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {5538#true} is VALID [2022-04-15 15:14:37,990 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5538#true} {5623#(<= ~counter~0 2)} #59#return; {5623#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:37,990 INFO L290 TraceCheckUtils]: 9: Hoare triple {5538#true} assume true; {5538#true} is VALID [2022-04-15 15:14:37,990 INFO L290 TraceCheckUtils]: 8: Hoare triple {5538#true} assume !(0 == ~cond); {5538#true} is VALID [2022-04-15 15:14:37,991 INFO L290 TraceCheckUtils]: 7: Hoare triple {5538#true} ~cond := #in~cond; {5538#true} is VALID [2022-04-15 15:14:37,991 INFO L272 TraceCheckUtils]: 6: Hoare triple {5623#(<= ~counter~0 2)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {5538#true} is VALID [2022-04-15 15:14:37,991 INFO L290 TraceCheckUtils]: 5: Hoare triple {5623#(<= ~counter~0 2)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {5623#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:37,991 INFO L272 TraceCheckUtils]: 4: Hoare triple {5623#(<= ~counter~0 2)} call #t~ret7 := main(); {5623#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:37,992 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5623#(<= ~counter~0 2)} {5538#true} #67#return; {5623#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:37,992 INFO L290 TraceCheckUtils]: 2: Hoare triple {5623#(<= ~counter~0 2)} assume true; {5623#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:37,992 INFO L290 TraceCheckUtils]: 1: Hoare triple {5538#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {5623#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:37,992 INFO L272 TraceCheckUtils]: 0: Hoare triple {5538#true} call ULTIMATE.init(); {5538#true} is VALID [2022-04-15 15:14:37,993 INFO L134 CoverageAnalysis]: Checked inductivity of 221 backedges. 14 proven. 119 refuted. 0 times theorem prover too weak. 88 trivial. 0 not checked. [2022-04-15 15:14:37,993 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:14:37,993 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [795828154] [2022-04-15 15:14:37,993 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:14:37,993 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [662788668] [2022-04-15 15:14:37,993 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [662788668] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 15:14:37,993 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 15:14:37,993 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 14 [2022-04-15 15:14:37,993 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:14:37,994 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [159907292] [2022-04-15 15:14:37,994 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [159907292] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:14:37,994 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:14:37,994 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-15 15:14:37,994 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1141470578] [2022-04-15 15:14:37,994 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:14:37,994 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 5.545454545454546) internal successors, (61), 10 states have internal predecessors, (61), 10 states have call successors, (12), 10 states have call predecessors, (12), 8 states have return successors, (10), 8 states have call predecessors, (10), 9 states have call successors, (10) Word has length 86 [2022-04-15 15:14:37,994 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:14:37,995 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 5.545454545454546) internal successors, (61), 10 states have internal predecessors, (61), 10 states have call successors, (12), 10 states have call predecessors, (12), 8 states have return successors, (10), 8 states have call predecessors, (10), 9 states have call successors, (10) [2022-04-15 15:14:38,052 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 83 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:38,052 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-15 15:14:38,052 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:14:38,052 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-15 15:14:38,052 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-15 15:14:38,053 INFO L87 Difference]: Start difference. First operand 83 states and 91 transitions. Second operand has 11 states, 11 states have (on average 5.545454545454546) internal successors, (61), 10 states have internal predecessors, (61), 10 states have call successors, (12), 10 states have call predecessors, (12), 8 states have return successors, (10), 8 states have call predecessors, (10), 9 states have call successors, (10) [2022-04-15 15:14:38,368 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:38,368 INFO L93 Difference]: Finished difference Result 97 states and 106 transitions. [2022-04-15 15:14:38,368 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-15 15:14:38,368 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 5.545454545454546) internal successors, (61), 10 states have internal predecessors, (61), 10 states have call successors, (12), 10 states have call predecessors, (12), 8 states have return successors, (10), 8 states have call predecessors, (10), 9 states have call successors, (10) Word has length 86 [2022-04-15 15:14:38,369 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:14:38,369 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 5.545454545454546) internal successors, (61), 10 states have internal predecessors, (61), 10 states have call successors, (12), 10 states have call predecessors, (12), 8 states have return successors, (10), 8 states have call predecessors, (10), 9 states have call successors, (10) [2022-04-15 15:14:38,370 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 105 transitions. [2022-04-15 15:14:38,370 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 5.545454545454546) internal successors, (61), 10 states have internal predecessors, (61), 10 states have call successors, (12), 10 states have call predecessors, (12), 8 states have return successors, (10), 8 states have call predecessors, (10), 9 states have call successors, (10) [2022-04-15 15:14:38,372 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 105 transitions. [2022-04-15 15:14:38,372 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 105 transitions. [2022-04-15 15:14:38,434 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 105 edges. 105 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:38,436 INFO L225 Difference]: With dead ends: 97 [2022-04-15 15:14:38,436 INFO L226 Difference]: Without dead ends: 92 [2022-04-15 15:14:38,436 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 178 GetRequests, 158 SyntacticMatches, 1 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 39 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=162, Invalid=258, Unknown=0, NotChecked=0, Total=420 [2022-04-15 15:14:38,437 INFO L913 BasicCegarLoop]: 33 mSDtfsCounter, 39 mSDsluCounter, 105 mSDsCounter, 0 mSdLazyCounter, 43 mSolverCounterSat, 28 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 39 SdHoareTripleChecker+Valid, 138 SdHoareTripleChecker+Invalid, 71 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 28 IncrementalHoareTripleChecker+Valid, 43 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 15:14:38,437 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [39 Valid, 138 Invalid, 71 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [28 Valid, 43 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 15:14:38,437 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 92 states. [2022-04-15 15:14:38,554 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 92 to 92. [2022-04-15 15:14:38,554 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:14:38,554 INFO L82 GeneralOperation]: Start isEquivalent. First operand 92 states. Second operand has 92 states, 68 states have (on average 1.1323529411764706) internal successors, (77), 68 states have internal predecessors, (77), 13 states have call successors, (13), 12 states have call predecessors, (13), 10 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-15 15:14:38,555 INFO L74 IsIncluded]: Start isIncluded. First operand 92 states. Second operand has 92 states, 68 states have (on average 1.1323529411764706) internal successors, (77), 68 states have internal predecessors, (77), 13 states have call successors, (13), 12 states have call predecessors, (13), 10 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-15 15:14:38,555 INFO L87 Difference]: Start difference. First operand 92 states. Second operand has 92 states, 68 states have (on average 1.1323529411764706) internal successors, (77), 68 states have internal predecessors, (77), 13 states have call successors, (13), 12 states have call predecessors, (13), 10 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-15 15:14:38,556 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:38,556 INFO L93 Difference]: Finished difference Result 92 states and 101 transitions. [2022-04-15 15:14:38,556 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 101 transitions. [2022-04-15 15:14:38,556 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:14:38,556 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:14:38,557 INFO L74 IsIncluded]: Start isIncluded. First operand has 92 states, 68 states have (on average 1.1323529411764706) internal successors, (77), 68 states have internal predecessors, (77), 13 states have call successors, (13), 12 states have call predecessors, (13), 10 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 92 states. [2022-04-15 15:14:38,557 INFO L87 Difference]: Start difference. First operand has 92 states, 68 states have (on average 1.1323529411764706) internal successors, (77), 68 states have internal predecessors, (77), 13 states have call successors, (13), 12 states have call predecessors, (13), 10 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 92 states. [2022-04-15 15:14:38,558 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:38,558 INFO L93 Difference]: Finished difference Result 92 states and 101 transitions. [2022-04-15 15:14:38,558 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 101 transitions. [2022-04-15 15:14:38,558 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:14:38,558 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:14:38,558 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:14:38,558 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:14:38,559 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 92 states, 68 states have (on average 1.1323529411764706) internal successors, (77), 68 states have internal predecessors, (77), 13 states have call successors, (13), 12 states have call predecessors, (13), 10 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-15 15:14:38,560 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 92 states to 92 states and 101 transitions. [2022-04-15 15:14:38,560 INFO L78 Accepts]: Start accepts. Automaton has 92 states and 101 transitions. Word has length 86 [2022-04-15 15:14:38,560 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:14:38,560 INFO L478 AbstractCegarLoop]: Abstraction has 92 states and 101 transitions. [2022-04-15 15:14:38,560 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 5.545454545454546) internal successors, (61), 10 states have internal predecessors, (61), 10 states have call successors, (12), 10 states have call predecessors, (12), 8 states have return successors, (10), 8 states have call predecessors, (10), 9 states have call successors, (10) [2022-04-15 15:14:38,560 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 92 states and 101 transitions. [2022-04-15 15:14:40,657 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 101 edges. 100 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:40,658 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 101 transitions. [2022-04-15 15:14:40,658 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 96 [2022-04-15 15:14:40,658 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:14:40,658 INFO L499 BasicCegarLoop]: trace histogram [9, 9, 8, 8, 8, 8, 8, 8, 8, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 15:14:40,676 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Ended with exit code 0 [2022-04-15 15:14:40,874 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable10 [2022-04-15 15:14:40,874 INFO L403 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:14:40,875 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:14:40,875 INFO L85 PathProgramCache]: Analyzing trace with hash -399923690, now seen corresponding path program 15 times [2022-04-15 15:14:40,875 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:14:40,875 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1953218803] [2022-04-15 15:14:40,875 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:14:40,875 INFO L85 PathProgramCache]: Analyzing trace with hash -399923690, now seen corresponding path program 16 times [2022-04-15 15:14:40,875 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:14:40,875 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [221243387] [2022-04-15 15:14:40,875 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:14:40,876 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:14:40,901 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:14:40,901 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2079525266] [2022-04-15 15:14:40,901 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 15:14:40,901 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:14:40,902 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:14:40,902 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 15:14:40,903 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Waiting until timeout for monitored process [2022-04-15 15:14:41,058 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 15:14:41,058 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:14:41,059 INFO L263 TraceCheckSpWp]: Trace formula consists of 253 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-15 15:14:41,074 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:14:41,077 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:14:41,525 INFO L272 TraceCheckUtils]: 0: Hoare triple {6643#true} call ULTIMATE.init(); {6643#true} is VALID [2022-04-15 15:14:41,525 INFO L290 TraceCheckUtils]: 1: Hoare triple {6643#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {6651#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:41,526 INFO L290 TraceCheckUtils]: 2: Hoare triple {6651#(<= ~counter~0 0)} assume true; {6651#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:41,526 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6651#(<= ~counter~0 0)} {6643#true} #67#return; {6651#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:41,526 INFO L272 TraceCheckUtils]: 4: Hoare triple {6651#(<= ~counter~0 0)} call #t~ret7 := main(); {6651#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:41,526 INFO L290 TraceCheckUtils]: 5: Hoare triple {6651#(<= ~counter~0 0)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {6651#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:41,527 INFO L272 TraceCheckUtils]: 6: Hoare triple {6651#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {6651#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:41,527 INFO L290 TraceCheckUtils]: 7: Hoare triple {6651#(<= ~counter~0 0)} ~cond := #in~cond; {6651#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:41,527 INFO L290 TraceCheckUtils]: 8: Hoare triple {6651#(<= ~counter~0 0)} assume !(0 == ~cond); {6651#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:41,528 INFO L290 TraceCheckUtils]: 9: Hoare triple {6651#(<= ~counter~0 0)} assume true; {6651#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:41,528 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6651#(<= ~counter~0 0)} {6651#(<= ~counter~0 0)} #59#return; {6651#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:41,528 INFO L272 TraceCheckUtils]: 11: Hoare triple {6651#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {6651#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:41,529 INFO L290 TraceCheckUtils]: 12: Hoare triple {6651#(<= ~counter~0 0)} ~cond := #in~cond; {6651#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:41,529 INFO L290 TraceCheckUtils]: 13: Hoare triple {6651#(<= ~counter~0 0)} assume !(0 == ~cond); {6651#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:41,529 INFO L290 TraceCheckUtils]: 14: Hoare triple {6651#(<= ~counter~0 0)} assume true; {6651#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:41,530 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {6651#(<= ~counter~0 0)} {6651#(<= ~counter~0 0)} #61#return; {6651#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:41,530 INFO L290 TraceCheckUtils]: 16: Hoare triple {6651#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {6651#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:41,530 INFO L290 TraceCheckUtils]: 17: Hoare triple {6651#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6700#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:41,531 INFO L290 TraceCheckUtils]: 18: Hoare triple {6700#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {6700#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:41,531 INFO L272 TraceCheckUtils]: 19: Hoare triple {6700#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6700#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:41,531 INFO L290 TraceCheckUtils]: 20: Hoare triple {6700#(<= ~counter~0 1)} ~cond := #in~cond; {6700#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:41,532 INFO L290 TraceCheckUtils]: 21: Hoare triple {6700#(<= ~counter~0 1)} assume !(0 == ~cond); {6700#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:41,532 INFO L290 TraceCheckUtils]: 22: Hoare triple {6700#(<= ~counter~0 1)} assume true; {6700#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:41,532 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {6700#(<= ~counter~0 1)} {6700#(<= ~counter~0 1)} #63#return; {6700#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:41,533 INFO L290 TraceCheckUtils]: 24: Hoare triple {6700#(<= ~counter~0 1)} assume !!(0 != ~r~0); {6700#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:41,533 INFO L290 TraceCheckUtils]: 25: Hoare triple {6700#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {6700#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:41,533 INFO L290 TraceCheckUtils]: 26: Hoare triple {6700#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6728#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:41,534 INFO L290 TraceCheckUtils]: 27: Hoare triple {6728#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {6728#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:41,534 INFO L272 TraceCheckUtils]: 28: Hoare triple {6728#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6728#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:41,534 INFO L290 TraceCheckUtils]: 29: Hoare triple {6728#(<= ~counter~0 2)} ~cond := #in~cond; {6728#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:41,535 INFO L290 TraceCheckUtils]: 30: Hoare triple {6728#(<= ~counter~0 2)} assume !(0 == ~cond); {6728#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:41,535 INFO L290 TraceCheckUtils]: 31: Hoare triple {6728#(<= ~counter~0 2)} assume true; {6728#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:41,535 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {6728#(<= ~counter~0 2)} {6728#(<= ~counter~0 2)} #63#return; {6728#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:41,536 INFO L290 TraceCheckUtils]: 33: Hoare triple {6728#(<= ~counter~0 2)} assume !!(0 != ~r~0); {6728#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:41,536 INFO L290 TraceCheckUtils]: 34: Hoare triple {6728#(<= ~counter~0 2)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {6728#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:41,536 INFO L290 TraceCheckUtils]: 35: Hoare triple {6728#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6756#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:41,537 INFO L290 TraceCheckUtils]: 36: Hoare triple {6756#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {6756#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:41,537 INFO L272 TraceCheckUtils]: 37: Hoare triple {6756#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6756#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:41,537 INFO L290 TraceCheckUtils]: 38: Hoare triple {6756#(<= ~counter~0 3)} ~cond := #in~cond; {6756#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:41,538 INFO L290 TraceCheckUtils]: 39: Hoare triple {6756#(<= ~counter~0 3)} assume !(0 == ~cond); {6756#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:41,538 INFO L290 TraceCheckUtils]: 40: Hoare triple {6756#(<= ~counter~0 3)} assume true; {6756#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:41,538 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {6756#(<= ~counter~0 3)} {6756#(<= ~counter~0 3)} #63#return; {6756#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:41,538 INFO L290 TraceCheckUtils]: 42: Hoare triple {6756#(<= ~counter~0 3)} assume !!(0 != ~r~0); {6756#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:41,539 INFO L290 TraceCheckUtils]: 43: Hoare triple {6756#(<= ~counter~0 3)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {6756#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:41,539 INFO L290 TraceCheckUtils]: 44: Hoare triple {6756#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6784#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:41,539 INFO L290 TraceCheckUtils]: 45: Hoare triple {6784#(<= ~counter~0 4)} assume !!(#t~post6 < 10);havoc #t~post6; {6784#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:41,540 INFO L272 TraceCheckUtils]: 46: Hoare triple {6784#(<= ~counter~0 4)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6784#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:41,540 INFO L290 TraceCheckUtils]: 47: Hoare triple {6784#(<= ~counter~0 4)} ~cond := #in~cond; {6784#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:41,540 INFO L290 TraceCheckUtils]: 48: Hoare triple {6784#(<= ~counter~0 4)} assume !(0 == ~cond); {6784#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:41,541 INFO L290 TraceCheckUtils]: 49: Hoare triple {6784#(<= ~counter~0 4)} assume true; {6784#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:41,541 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {6784#(<= ~counter~0 4)} {6784#(<= ~counter~0 4)} #63#return; {6784#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:41,542 INFO L290 TraceCheckUtils]: 51: Hoare triple {6784#(<= ~counter~0 4)} assume !!(0 != ~r~0); {6784#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:41,542 INFO L290 TraceCheckUtils]: 52: Hoare triple {6784#(<= ~counter~0 4)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {6784#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:41,542 INFO L290 TraceCheckUtils]: 53: Hoare triple {6784#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6812#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:41,543 INFO L290 TraceCheckUtils]: 54: Hoare triple {6812#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {6812#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:41,543 INFO L272 TraceCheckUtils]: 55: Hoare triple {6812#(<= ~counter~0 5)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6812#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:41,543 INFO L290 TraceCheckUtils]: 56: Hoare triple {6812#(<= ~counter~0 5)} ~cond := #in~cond; {6812#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:41,544 INFO L290 TraceCheckUtils]: 57: Hoare triple {6812#(<= ~counter~0 5)} assume !(0 == ~cond); {6812#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:41,544 INFO L290 TraceCheckUtils]: 58: Hoare triple {6812#(<= ~counter~0 5)} assume true; {6812#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:41,550 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {6812#(<= ~counter~0 5)} {6812#(<= ~counter~0 5)} #63#return; {6812#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:41,550 INFO L290 TraceCheckUtils]: 60: Hoare triple {6812#(<= ~counter~0 5)} assume !!(0 != ~r~0); {6812#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:41,551 INFO L290 TraceCheckUtils]: 61: Hoare triple {6812#(<= ~counter~0 5)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {6812#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:41,551 INFO L290 TraceCheckUtils]: 62: Hoare triple {6812#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6840#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:41,551 INFO L290 TraceCheckUtils]: 63: Hoare triple {6840#(<= ~counter~0 6)} assume !!(#t~post6 < 10);havoc #t~post6; {6840#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:41,553 INFO L272 TraceCheckUtils]: 64: Hoare triple {6840#(<= ~counter~0 6)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6840#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:41,553 INFO L290 TraceCheckUtils]: 65: Hoare triple {6840#(<= ~counter~0 6)} ~cond := #in~cond; {6840#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:41,554 INFO L290 TraceCheckUtils]: 66: Hoare triple {6840#(<= ~counter~0 6)} assume !(0 == ~cond); {6840#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:41,554 INFO L290 TraceCheckUtils]: 67: Hoare triple {6840#(<= ~counter~0 6)} assume true; {6840#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:41,555 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {6840#(<= ~counter~0 6)} {6840#(<= ~counter~0 6)} #63#return; {6840#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:41,555 INFO L290 TraceCheckUtils]: 69: Hoare triple {6840#(<= ~counter~0 6)} assume !!(0 != ~r~0); {6840#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:41,555 INFO L290 TraceCheckUtils]: 70: Hoare triple {6840#(<= ~counter~0 6)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {6840#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:41,559 INFO L290 TraceCheckUtils]: 71: Hoare triple {6840#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6868#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:41,559 INFO L290 TraceCheckUtils]: 72: Hoare triple {6868#(<= ~counter~0 7)} assume !!(#t~post6 < 10);havoc #t~post6; {6868#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:41,560 INFO L272 TraceCheckUtils]: 73: Hoare triple {6868#(<= ~counter~0 7)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6868#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:41,560 INFO L290 TraceCheckUtils]: 74: Hoare triple {6868#(<= ~counter~0 7)} ~cond := #in~cond; {6868#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:41,560 INFO L290 TraceCheckUtils]: 75: Hoare triple {6868#(<= ~counter~0 7)} assume !(0 == ~cond); {6868#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:41,560 INFO L290 TraceCheckUtils]: 76: Hoare triple {6868#(<= ~counter~0 7)} assume true; {6868#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:41,561 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {6868#(<= ~counter~0 7)} {6868#(<= ~counter~0 7)} #63#return; {6868#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:41,561 INFO L290 TraceCheckUtils]: 78: Hoare triple {6868#(<= ~counter~0 7)} assume !!(0 != ~r~0); {6868#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:41,561 INFO L290 TraceCheckUtils]: 79: Hoare triple {6868#(<= ~counter~0 7)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {6868#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:41,562 INFO L290 TraceCheckUtils]: 80: Hoare triple {6868#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6896#(<= ~counter~0 8)} is VALID [2022-04-15 15:14:41,562 INFO L290 TraceCheckUtils]: 81: Hoare triple {6896#(<= ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {6896#(<= ~counter~0 8)} is VALID [2022-04-15 15:14:41,563 INFO L272 TraceCheckUtils]: 82: Hoare triple {6896#(<= ~counter~0 8)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6896#(<= ~counter~0 8)} is VALID [2022-04-15 15:14:41,563 INFO L290 TraceCheckUtils]: 83: Hoare triple {6896#(<= ~counter~0 8)} ~cond := #in~cond; {6896#(<= ~counter~0 8)} is VALID [2022-04-15 15:14:41,563 INFO L290 TraceCheckUtils]: 84: Hoare triple {6896#(<= ~counter~0 8)} assume !(0 == ~cond); {6896#(<= ~counter~0 8)} is VALID [2022-04-15 15:14:41,563 INFO L290 TraceCheckUtils]: 85: Hoare triple {6896#(<= ~counter~0 8)} assume true; {6896#(<= ~counter~0 8)} is VALID [2022-04-15 15:14:41,564 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {6896#(<= ~counter~0 8)} {6896#(<= ~counter~0 8)} #63#return; {6896#(<= ~counter~0 8)} is VALID [2022-04-15 15:14:41,564 INFO L290 TraceCheckUtils]: 87: Hoare triple {6896#(<= ~counter~0 8)} assume !!(0 != ~r~0); {6896#(<= ~counter~0 8)} is VALID [2022-04-15 15:14:41,565 INFO L290 TraceCheckUtils]: 88: Hoare triple {6896#(<= ~counter~0 8)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {6896#(<= ~counter~0 8)} is VALID [2022-04-15 15:14:41,565 INFO L290 TraceCheckUtils]: 89: Hoare triple {6896#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6924#(<= |main_#t~post6| 8)} is VALID [2022-04-15 15:14:41,565 INFO L290 TraceCheckUtils]: 90: Hoare triple {6924#(<= |main_#t~post6| 8)} assume !(#t~post6 < 10);havoc #t~post6; {6644#false} is VALID [2022-04-15 15:14:41,565 INFO L272 TraceCheckUtils]: 91: Hoare triple {6644#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6644#false} is VALID [2022-04-15 15:14:41,565 INFO L290 TraceCheckUtils]: 92: Hoare triple {6644#false} ~cond := #in~cond; {6644#false} is VALID [2022-04-15 15:14:41,565 INFO L290 TraceCheckUtils]: 93: Hoare triple {6644#false} assume 0 == ~cond; {6644#false} is VALID [2022-04-15 15:14:41,566 INFO L290 TraceCheckUtils]: 94: Hoare triple {6644#false} assume !false; {6644#false} is VALID [2022-04-15 15:14:41,566 INFO L134 CoverageAnalysis]: Checked inductivity of 288 backedges. 16 proven. 268 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 15:14:41,566 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 15:14:41,949 INFO L290 TraceCheckUtils]: 94: Hoare triple {6644#false} assume !false; {6644#false} is VALID [2022-04-15 15:14:41,949 INFO L290 TraceCheckUtils]: 93: Hoare triple {6644#false} assume 0 == ~cond; {6644#false} is VALID [2022-04-15 15:14:41,949 INFO L290 TraceCheckUtils]: 92: Hoare triple {6644#false} ~cond := #in~cond; {6644#false} is VALID [2022-04-15 15:14:41,949 INFO L272 TraceCheckUtils]: 91: Hoare triple {6644#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6644#false} is VALID [2022-04-15 15:14:41,950 INFO L290 TraceCheckUtils]: 90: Hoare triple {6952#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {6644#false} is VALID [2022-04-15 15:14:41,950 INFO L290 TraceCheckUtils]: 89: Hoare triple {6956#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6952#(< |main_#t~post6| 10)} is VALID [2022-04-15 15:14:41,950 INFO L290 TraceCheckUtils]: 88: Hoare triple {6956#(< ~counter~0 10)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {6956#(< ~counter~0 10)} is VALID [2022-04-15 15:14:41,950 INFO L290 TraceCheckUtils]: 87: Hoare triple {6956#(< ~counter~0 10)} assume !!(0 != ~r~0); {6956#(< ~counter~0 10)} is VALID [2022-04-15 15:14:41,951 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {6643#true} {6956#(< ~counter~0 10)} #63#return; {6956#(< ~counter~0 10)} is VALID [2022-04-15 15:14:41,951 INFO L290 TraceCheckUtils]: 85: Hoare triple {6643#true} assume true; {6643#true} is VALID [2022-04-15 15:14:41,951 INFO L290 TraceCheckUtils]: 84: Hoare triple {6643#true} assume !(0 == ~cond); {6643#true} is VALID [2022-04-15 15:14:41,951 INFO L290 TraceCheckUtils]: 83: Hoare triple {6643#true} ~cond := #in~cond; {6643#true} is VALID [2022-04-15 15:14:41,951 INFO L272 TraceCheckUtils]: 82: Hoare triple {6956#(< ~counter~0 10)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6643#true} is VALID [2022-04-15 15:14:41,952 INFO L290 TraceCheckUtils]: 81: Hoare triple {6956#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {6956#(< ~counter~0 10)} is VALID [2022-04-15 15:14:41,952 INFO L290 TraceCheckUtils]: 80: Hoare triple {6896#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6956#(< ~counter~0 10)} is VALID [2022-04-15 15:14:41,952 INFO L290 TraceCheckUtils]: 79: Hoare triple {6896#(<= ~counter~0 8)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {6896#(<= ~counter~0 8)} is VALID [2022-04-15 15:14:41,953 INFO L290 TraceCheckUtils]: 78: Hoare triple {6896#(<= ~counter~0 8)} assume !!(0 != ~r~0); {6896#(<= ~counter~0 8)} is VALID [2022-04-15 15:14:41,953 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {6643#true} {6896#(<= ~counter~0 8)} #63#return; {6896#(<= ~counter~0 8)} is VALID [2022-04-15 15:14:41,953 INFO L290 TraceCheckUtils]: 76: Hoare triple {6643#true} assume true; {6643#true} is VALID [2022-04-15 15:14:41,953 INFO L290 TraceCheckUtils]: 75: Hoare triple {6643#true} assume !(0 == ~cond); {6643#true} is VALID [2022-04-15 15:14:41,953 INFO L290 TraceCheckUtils]: 74: Hoare triple {6643#true} ~cond := #in~cond; {6643#true} is VALID [2022-04-15 15:14:41,953 INFO L272 TraceCheckUtils]: 73: Hoare triple {6896#(<= ~counter~0 8)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6643#true} is VALID [2022-04-15 15:14:41,954 INFO L290 TraceCheckUtils]: 72: Hoare triple {6896#(<= ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {6896#(<= ~counter~0 8)} is VALID [2022-04-15 15:14:41,954 INFO L290 TraceCheckUtils]: 71: Hoare triple {6868#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6896#(<= ~counter~0 8)} is VALID [2022-04-15 15:14:41,954 INFO L290 TraceCheckUtils]: 70: Hoare triple {6868#(<= ~counter~0 7)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {6868#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:41,955 INFO L290 TraceCheckUtils]: 69: Hoare triple {6868#(<= ~counter~0 7)} assume !!(0 != ~r~0); {6868#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:41,955 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {6643#true} {6868#(<= ~counter~0 7)} #63#return; {6868#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:41,955 INFO L290 TraceCheckUtils]: 67: Hoare triple {6643#true} assume true; {6643#true} is VALID [2022-04-15 15:14:41,955 INFO L290 TraceCheckUtils]: 66: Hoare triple {6643#true} assume !(0 == ~cond); {6643#true} is VALID [2022-04-15 15:14:41,955 INFO L290 TraceCheckUtils]: 65: Hoare triple {6643#true} ~cond := #in~cond; {6643#true} is VALID [2022-04-15 15:14:41,955 INFO L272 TraceCheckUtils]: 64: Hoare triple {6868#(<= ~counter~0 7)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6643#true} is VALID [2022-04-15 15:14:41,956 INFO L290 TraceCheckUtils]: 63: Hoare triple {6868#(<= ~counter~0 7)} assume !!(#t~post6 < 10);havoc #t~post6; {6868#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:41,956 INFO L290 TraceCheckUtils]: 62: Hoare triple {6840#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6868#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:41,956 INFO L290 TraceCheckUtils]: 61: Hoare triple {6840#(<= ~counter~0 6)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {6840#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:41,957 INFO L290 TraceCheckUtils]: 60: Hoare triple {6840#(<= ~counter~0 6)} assume !!(0 != ~r~0); {6840#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:41,957 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {6643#true} {6840#(<= ~counter~0 6)} #63#return; {6840#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:41,957 INFO L290 TraceCheckUtils]: 58: Hoare triple {6643#true} assume true; {6643#true} is VALID [2022-04-15 15:14:41,957 INFO L290 TraceCheckUtils]: 57: Hoare triple {6643#true} assume !(0 == ~cond); {6643#true} is VALID [2022-04-15 15:14:41,957 INFO L290 TraceCheckUtils]: 56: Hoare triple {6643#true} ~cond := #in~cond; {6643#true} is VALID [2022-04-15 15:14:41,957 INFO L272 TraceCheckUtils]: 55: Hoare triple {6840#(<= ~counter~0 6)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6643#true} is VALID [2022-04-15 15:14:41,958 INFO L290 TraceCheckUtils]: 54: Hoare triple {6840#(<= ~counter~0 6)} assume !!(#t~post6 < 10);havoc #t~post6; {6840#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:41,958 INFO L290 TraceCheckUtils]: 53: Hoare triple {6812#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6840#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:41,958 INFO L290 TraceCheckUtils]: 52: Hoare triple {6812#(<= ~counter~0 5)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {6812#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:41,958 INFO L290 TraceCheckUtils]: 51: Hoare triple {6812#(<= ~counter~0 5)} assume !!(0 != ~r~0); {6812#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:41,959 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {6643#true} {6812#(<= ~counter~0 5)} #63#return; {6812#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:41,959 INFO L290 TraceCheckUtils]: 49: Hoare triple {6643#true} assume true; {6643#true} is VALID [2022-04-15 15:14:41,959 INFO L290 TraceCheckUtils]: 48: Hoare triple {6643#true} assume !(0 == ~cond); {6643#true} is VALID [2022-04-15 15:14:41,959 INFO L290 TraceCheckUtils]: 47: Hoare triple {6643#true} ~cond := #in~cond; {6643#true} is VALID [2022-04-15 15:14:41,959 INFO L272 TraceCheckUtils]: 46: Hoare triple {6812#(<= ~counter~0 5)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6643#true} is VALID [2022-04-15 15:14:41,960 INFO L290 TraceCheckUtils]: 45: Hoare triple {6812#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {6812#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:41,960 INFO L290 TraceCheckUtils]: 44: Hoare triple {6784#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6812#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:41,960 INFO L290 TraceCheckUtils]: 43: Hoare triple {6784#(<= ~counter~0 4)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {6784#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:41,960 INFO L290 TraceCheckUtils]: 42: Hoare triple {6784#(<= ~counter~0 4)} assume !!(0 != ~r~0); {6784#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:41,961 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {6643#true} {6784#(<= ~counter~0 4)} #63#return; {6784#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:41,961 INFO L290 TraceCheckUtils]: 40: Hoare triple {6643#true} assume true; {6643#true} is VALID [2022-04-15 15:14:41,961 INFO L290 TraceCheckUtils]: 39: Hoare triple {6643#true} assume !(0 == ~cond); {6643#true} is VALID [2022-04-15 15:14:41,961 INFO L290 TraceCheckUtils]: 38: Hoare triple {6643#true} ~cond := #in~cond; {6643#true} is VALID [2022-04-15 15:14:41,961 INFO L272 TraceCheckUtils]: 37: Hoare triple {6784#(<= ~counter~0 4)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6643#true} is VALID [2022-04-15 15:14:41,961 INFO L290 TraceCheckUtils]: 36: Hoare triple {6784#(<= ~counter~0 4)} assume !!(#t~post6 < 10);havoc #t~post6; {6784#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:41,962 INFO L290 TraceCheckUtils]: 35: Hoare triple {6756#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6784#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:41,962 INFO L290 TraceCheckUtils]: 34: Hoare triple {6756#(<= ~counter~0 3)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {6756#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:41,962 INFO L290 TraceCheckUtils]: 33: Hoare triple {6756#(<= ~counter~0 3)} assume !!(0 != ~r~0); {6756#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:41,963 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {6643#true} {6756#(<= ~counter~0 3)} #63#return; {6756#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:41,963 INFO L290 TraceCheckUtils]: 31: Hoare triple {6643#true} assume true; {6643#true} is VALID [2022-04-15 15:14:41,963 INFO L290 TraceCheckUtils]: 30: Hoare triple {6643#true} assume !(0 == ~cond); {6643#true} is VALID [2022-04-15 15:14:41,963 INFO L290 TraceCheckUtils]: 29: Hoare triple {6643#true} ~cond := #in~cond; {6643#true} is VALID [2022-04-15 15:14:41,963 INFO L272 TraceCheckUtils]: 28: Hoare triple {6756#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6643#true} is VALID [2022-04-15 15:14:41,963 INFO L290 TraceCheckUtils]: 27: Hoare triple {6756#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {6756#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:41,964 INFO L290 TraceCheckUtils]: 26: Hoare triple {6728#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6756#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:41,964 INFO L290 TraceCheckUtils]: 25: Hoare triple {6728#(<= ~counter~0 2)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {6728#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:41,964 INFO L290 TraceCheckUtils]: 24: Hoare triple {6728#(<= ~counter~0 2)} assume !!(0 != ~r~0); {6728#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:41,965 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {6643#true} {6728#(<= ~counter~0 2)} #63#return; {6728#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:41,965 INFO L290 TraceCheckUtils]: 22: Hoare triple {6643#true} assume true; {6643#true} is VALID [2022-04-15 15:14:41,965 INFO L290 TraceCheckUtils]: 21: Hoare triple {6643#true} assume !(0 == ~cond); {6643#true} is VALID [2022-04-15 15:14:41,965 INFO L290 TraceCheckUtils]: 20: Hoare triple {6643#true} ~cond := #in~cond; {6643#true} is VALID [2022-04-15 15:14:41,965 INFO L272 TraceCheckUtils]: 19: Hoare triple {6728#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {6643#true} is VALID [2022-04-15 15:14:41,965 INFO L290 TraceCheckUtils]: 18: Hoare triple {6728#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {6728#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:41,966 INFO L290 TraceCheckUtils]: 17: Hoare triple {6700#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6728#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:41,966 INFO L290 TraceCheckUtils]: 16: Hoare triple {6700#(<= ~counter~0 1)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {6700#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:41,966 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {6643#true} {6700#(<= ~counter~0 1)} #61#return; {6700#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:41,967 INFO L290 TraceCheckUtils]: 14: Hoare triple {6643#true} assume true; {6643#true} is VALID [2022-04-15 15:14:41,967 INFO L290 TraceCheckUtils]: 13: Hoare triple {6643#true} assume !(0 == ~cond); {6643#true} is VALID [2022-04-15 15:14:41,967 INFO L290 TraceCheckUtils]: 12: Hoare triple {6643#true} ~cond := #in~cond; {6643#true} is VALID [2022-04-15 15:14:41,967 INFO L272 TraceCheckUtils]: 11: Hoare triple {6700#(<= ~counter~0 1)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {6643#true} is VALID [2022-04-15 15:14:41,967 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6643#true} {6700#(<= ~counter~0 1)} #59#return; {6700#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:41,967 INFO L290 TraceCheckUtils]: 9: Hoare triple {6643#true} assume true; {6643#true} is VALID [2022-04-15 15:14:41,967 INFO L290 TraceCheckUtils]: 8: Hoare triple {6643#true} assume !(0 == ~cond); {6643#true} is VALID [2022-04-15 15:14:41,967 INFO L290 TraceCheckUtils]: 7: Hoare triple {6643#true} ~cond := #in~cond; {6643#true} is VALID [2022-04-15 15:14:41,967 INFO L272 TraceCheckUtils]: 6: Hoare triple {6700#(<= ~counter~0 1)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {6643#true} is VALID [2022-04-15 15:14:41,968 INFO L290 TraceCheckUtils]: 5: Hoare triple {6700#(<= ~counter~0 1)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {6700#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:41,968 INFO L272 TraceCheckUtils]: 4: Hoare triple {6700#(<= ~counter~0 1)} call #t~ret7 := main(); {6700#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:41,968 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6700#(<= ~counter~0 1)} {6643#true} #67#return; {6700#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:41,969 INFO L290 TraceCheckUtils]: 2: Hoare triple {6700#(<= ~counter~0 1)} assume true; {6700#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:41,969 INFO L290 TraceCheckUtils]: 1: Hoare triple {6643#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {6700#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:41,969 INFO L272 TraceCheckUtils]: 0: Hoare triple {6643#true} call ULTIMATE.init(); {6643#true} is VALID [2022-04-15 15:14:41,969 INFO L134 CoverageAnalysis]: Checked inductivity of 288 backedges. 16 proven. 156 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-15 15:14:41,969 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:14:41,970 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [221243387] [2022-04-15 15:14:41,970 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:14:41,970 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2079525266] [2022-04-15 15:14:41,970 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2079525266] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 15:14:41,970 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 15:14:41,970 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 14 [2022-04-15 15:14:41,970 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:14:41,970 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1953218803] [2022-04-15 15:14:41,970 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1953218803] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:14:41,970 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:14:41,970 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-15 15:14:41,970 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1748247616] [2022-04-15 15:14:41,970 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:14:41,971 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 5.666666666666667) internal successors, (68), 11 states have internal predecessors, (68), 11 states have call successors, (13), 11 states have call predecessors, (13), 9 states have return successors, (11), 9 states have call predecessors, (11), 10 states have call successors, (11) Word has length 95 [2022-04-15 15:14:41,971 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:14:41,971 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 5.666666666666667) internal successors, (68), 11 states have internal predecessors, (68), 11 states have call successors, (13), 11 states have call predecessors, (13), 9 states have return successors, (11), 9 states have call predecessors, (11), 10 states have call successors, (11) [2022-04-15 15:14:42,047 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 92 edges. 92 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:42,048 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-15 15:14:42,048 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:14:42,048 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-15 15:14:42,048 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-15 15:14:42,048 INFO L87 Difference]: Start difference. First operand 92 states and 101 transitions. Second operand has 12 states, 12 states have (on average 5.666666666666667) internal successors, (68), 11 states have internal predecessors, (68), 11 states have call successors, (13), 11 states have call predecessors, (13), 9 states have return successors, (11), 9 states have call predecessors, (11), 10 states have call successors, (11) [2022-04-15 15:14:42,378 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:42,378 INFO L93 Difference]: Finished difference Result 106 states and 116 transitions. [2022-04-15 15:14:42,378 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-04-15 15:14:42,378 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 5.666666666666667) internal successors, (68), 11 states have internal predecessors, (68), 11 states have call successors, (13), 11 states have call predecessors, (13), 9 states have return successors, (11), 9 states have call predecessors, (11), 10 states have call successors, (11) Word has length 95 [2022-04-15 15:14:42,378 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:14:42,379 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 5.666666666666667) internal successors, (68), 11 states have internal predecessors, (68), 11 states have call successors, (13), 11 states have call predecessors, (13), 9 states have return successors, (11), 9 states have call predecessors, (11), 10 states have call successors, (11) [2022-04-15 15:14:42,380 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 115 transitions. [2022-04-15 15:14:42,380 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 5.666666666666667) internal successors, (68), 11 states have internal predecessors, (68), 11 states have call successors, (13), 11 states have call predecessors, (13), 9 states have return successors, (11), 9 states have call predecessors, (11), 10 states have call successors, (11) [2022-04-15 15:14:42,382 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 115 transitions. [2022-04-15 15:14:42,382 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 115 transitions. [2022-04-15 15:14:42,458 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 115 edges. 115 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:42,460 INFO L225 Difference]: With dead ends: 106 [2022-04-15 15:14:42,460 INFO L226 Difference]: Without dead ends: 101 [2022-04-15 15:14:42,461 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 197 GetRequests, 176 SyntacticMatches, 1 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 46 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=175, Invalid=287, Unknown=0, NotChecked=0, Total=462 [2022-04-15 15:14:42,461 INFO L913 BasicCegarLoop]: 34 mSDtfsCounter, 49 mSDsluCounter, 94 mSDsCounter, 0 mSdLazyCounter, 44 mSolverCounterSat, 28 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 49 SdHoareTripleChecker+Valid, 128 SdHoareTripleChecker+Invalid, 72 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 28 IncrementalHoareTripleChecker+Valid, 44 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 15:14:42,461 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [49 Valid, 128 Invalid, 72 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [28 Valid, 44 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 15:14:42,462 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 101 states. [2022-04-15 15:14:42,546 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 101 to 101. [2022-04-15 15:14:42,546 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:14:42,546 INFO L82 GeneralOperation]: Start isEquivalent. First operand 101 states. Second operand has 101 states, 75 states have (on average 1.1333333333333333) internal successors, (85), 75 states have internal predecessors, (85), 14 states have call successors, (14), 13 states have call predecessors, (14), 11 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-15 15:14:42,546 INFO L74 IsIncluded]: Start isIncluded. First operand 101 states. Second operand has 101 states, 75 states have (on average 1.1333333333333333) internal successors, (85), 75 states have internal predecessors, (85), 14 states have call successors, (14), 13 states have call predecessors, (14), 11 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-15 15:14:42,546 INFO L87 Difference]: Start difference. First operand 101 states. Second operand has 101 states, 75 states have (on average 1.1333333333333333) internal successors, (85), 75 states have internal predecessors, (85), 14 states have call successors, (14), 13 states have call predecessors, (14), 11 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-15 15:14:42,548 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:42,548 INFO L93 Difference]: Finished difference Result 101 states and 111 transitions. [2022-04-15 15:14:42,548 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 111 transitions. [2022-04-15 15:14:42,548 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:14:42,548 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:14:42,548 INFO L74 IsIncluded]: Start isIncluded. First operand has 101 states, 75 states have (on average 1.1333333333333333) internal successors, (85), 75 states have internal predecessors, (85), 14 states have call successors, (14), 13 states have call predecessors, (14), 11 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand 101 states. [2022-04-15 15:14:42,549 INFO L87 Difference]: Start difference. First operand has 101 states, 75 states have (on average 1.1333333333333333) internal successors, (85), 75 states have internal predecessors, (85), 14 states have call successors, (14), 13 states have call predecessors, (14), 11 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand 101 states. [2022-04-15 15:14:42,550 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:42,550 INFO L93 Difference]: Finished difference Result 101 states and 111 transitions. [2022-04-15 15:14:42,550 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 111 transitions. [2022-04-15 15:14:42,550 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:14:42,550 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:14:42,550 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:14:42,550 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:14:42,551 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 101 states, 75 states have (on average 1.1333333333333333) internal successors, (85), 75 states have internal predecessors, (85), 14 states have call successors, (14), 13 states have call predecessors, (14), 11 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-15 15:14:42,552 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 101 states to 101 states and 111 transitions. [2022-04-15 15:14:42,552 INFO L78 Accepts]: Start accepts. Automaton has 101 states and 111 transitions. Word has length 95 [2022-04-15 15:14:42,552 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:14:42,552 INFO L478 AbstractCegarLoop]: Abstraction has 101 states and 111 transitions. [2022-04-15 15:14:42,552 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 5.666666666666667) internal successors, (68), 11 states have internal predecessors, (68), 11 states have call successors, (13), 11 states have call predecessors, (13), 9 states have return successors, (11), 9 states have call predecessors, (11), 10 states have call successors, (11) [2022-04-15 15:14:42,552 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 101 states and 111 transitions. [2022-04-15 15:14:43,347 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 111 edges. 111 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:43,348 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 111 transitions. [2022-04-15 15:14:43,348 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 105 [2022-04-15 15:14:43,348 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:14:43,348 INFO L499 BasicCegarLoop]: trace histogram [10, 10, 9, 9, 9, 9, 9, 9, 9, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 15:14:43,365 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Forceful destruction successful, exit code 0 [2022-04-15 15:14:43,554 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable11 [2022-04-15 15:14:43,554 INFO L403 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:14:43,554 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:14:43,554 INFO L85 PathProgramCache]: Analyzing trace with hash 1717228060, now seen corresponding path program 17 times [2022-04-15 15:14:43,554 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:14:43,554 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1713935309] [2022-04-15 15:14:43,555 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:14:43,555 INFO L85 PathProgramCache]: Analyzing trace with hash 1717228060, now seen corresponding path program 18 times [2022-04-15 15:14:43,555 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:14:43,555 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [859913339] [2022-04-15 15:14:43,555 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:14:43,555 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:14:43,570 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:14:43,570 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1636215194] [2022-04-15 15:14:43,570 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-15 15:14:43,571 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:14:43,571 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:14:43,571 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 15:14:43,572 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Waiting until timeout for monitored process [2022-04-15 15:14:43,721 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 10 check-sat command(s) [2022-04-15 15:14:43,721 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 15:14:43,722 INFO L263 TraceCheckSpWp]: Trace formula consists of 273 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-15 15:14:43,742 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 15:14:43,743 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 15:14:44,216 INFO L272 TraceCheckUtils]: 0: Hoare triple {7858#true} call ULTIMATE.init(); {7858#true} is VALID [2022-04-15 15:14:44,217 INFO L290 TraceCheckUtils]: 1: Hoare triple {7858#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {7866#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:44,217 INFO L290 TraceCheckUtils]: 2: Hoare triple {7866#(<= ~counter~0 0)} assume true; {7866#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:44,217 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7866#(<= ~counter~0 0)} {7858#true} #67#return; {7866#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:44,218 INFO L272 TraceCheckUtils]: 4: Hoare triple {7866#(<= ~counter~0 0)} call #t~ret7 := main(); {7866#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:44,218 INFO L290 TraceCheckUtils]: 5: Hoare triple {7866#(<= ~counter~0 0)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {7866#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:44,218 INFO L272 TraceCheckUtils]: 6: Hoare triple {7866#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {7866#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:44,219 INFO L290 TraceCheckUtils]: 7: Hoare triple {7866#(<= ~counter~0 0)} ~cond := #in~cond; {7866#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:44,219 INFO L290 TraceCheckUtils]: 8: Hoare triple {7866#(<= ~counter~0 0)} assume !(0 == ~cond); {7866#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:44,219 INFO L290 TraceCheckUtils]: 9: Hoare triple {7866#(<= ~counter~0 0)} assume true; {7866#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:44,220 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7866#(<= ~counter~0 0)} {7866#(<= ~counter~0 0)} #59#return; {7866#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:44,220 INFO L272 TraceCheckUtils]: 11: Hoare triple {7866#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {7866#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:44,220 INFO L290 TraceCheckUtils]: 12: Hoare triple {7866#(<= ~counter~0 0)} ~cond := #in~cond; {7866#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:44,221 INFO L290 TraceCheckUtils]: 13: Hoare triple {7866#(<= ~counter~0 0)} assume !(0 == ~cond); {7866#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:44,221 INFO L290 TraceCheckUtils]: 14: Hoare triple {7866#(<= ~counter~0 0)} assume true; {7866#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:44,221 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7866#(<= ~counter~0 0)} {7866#(<= ~counter~0 0)} #61#return; {7866#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:44,222 INFO L290 TraceCheckUtils]: 16: Hoare triple {7866#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {7866#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:44,222 INFO L290 TraceCheckUtils]: 17: Hoare triple {7866#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7915#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:44,223 INFO L290 TraceCheckUtils]: 18: Hoare triple {7915#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {7915#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:44,223 INFO L272 TraceCheckUtils]: 19: Hoare triple {7915#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {7915#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:44,224 INFO L290 TraceCheckUtils]: 20: Hoare triple {7915#(<= ~counter~0 1)} ~cond := #in~cond; {7915#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:44,224 INFO L290 TraceCheckUtils]: 21: Hoare triple {7915#(<= ~counter~0 1)} assume !(0 == ~cond); {7915#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:44,224 INFO L290 TraceCheckUtils]: 22: Hoare triple {7915#(<= ~counter~0 1)} assume true; {7915#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:44,225 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {7915#(<= ~counter~0 1)} {7915#(<= ~counter~0 1)} #63#return; {7915#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:44,225 INFO L290 TraceCheckUtils]: 24: Hoare triple {7915#(<= ~counter~0 1)} assume !!(0 != ~r~0); {7915#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:44,225 INFO L290 TraceCheckUtils]: 25: Hoare triple {7915#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {7915#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:44,226 INFO L290 TraceCheckUtils]: 26: Hoare triple {7915#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7943#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:44,226 INFO L290 TraceCheckUtils]: 27: Hoare triple {7943#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {7943#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:44,227 INFO L272 TraceCheckUtils]: 28: Hoare triple {7943#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {7943#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:44,227 INFO L290 TraceCheckUtils]: 29: Hoare triple {7943#(<= ~counter~0 2)} ~cond := #in~cond; {7943#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:44,228 INFO L290 TraceCheckUtils]: 30: Hoare triple {7943#(<= ~counter~0 2)} assume !(0 == ~cond); {7943#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:44,228 INFO L290 TraceCheckUtils]: 31: Hoare triple {7943#(<= ~counter~0 2)} assume true; {7943#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:44,229 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {7943#(<= ~counter~0 2)} {7943#(<= ~counter~0 2)} #63#return; {7943#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:44,229 INFO L290 TraceCheckUtils]: 33: Hoare triple {7943#(<= ~counter~0 2)} assume !!(0 != ~r~0); {7943#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:44,229 INFO L290 TraceCheckUtils]: 34: Hoare triple {7943#(<= ~counter~0 2)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {7943#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:44,230 INFO L290 TraceCheckUtils]: 35: Hoare triple {7943#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7971#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:44,230 INFO L290 TraceCheckUtils]: 36: Hoare triple {7971#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {7971#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:44,231 INFO L272 TraceCheckUtils]: 37: Hoare triple {7971#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {7971#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:44,231 INFO L290 TraceCheckUtils]: 38: Hoare triple {7971#(<= ~counter~0 3)} ~cond := #in~cond; {7971#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:44,231 INFO L290 TraceCheckUtils]: 39: Hoare triple {7971#(<= ~counter~0 3)} assume !(0 == ~cond); {7971#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:44,232 INFO L290 TraceCheckUtils]: 40: Hoare triple {7971#(<= ~counter~0 3)} assume true; {7971#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:44,232 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {7971#(<= ~counter~0 3)} {7971#(<= ~counter~0 3)} #63#return; {7971#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:44,233 INFO L290 TraceCheckUtils]: 42: Hoare triple {7971#(<= ~counter~0 3)} assume !!(0 != ~r~0); {7971#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:44,233 INFO L290 TraceCheckUtils]: 43: Hoare triple {7971#(<= ~counter~0 3)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {7971#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:44,233 INFO L290 TraceCheckUtils]: 44: Hoare triple {7971#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7999#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:44,234 INFO L290 TraceCheckUtils]: 45: Hoare triple {7999#(<= ~counter~0 4)} assume !!(#t~post6 < 10);havoc #t~post6; {7999#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:44,234 INFO L272 TraceCheckUtils]: 46: Hoare triple {7999#(<= ~counter~0 4)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {7999#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:44,235 INFO L290 TraceCheckUtils]: 47: Hoare triple {7999#(<= ~counter~0 4)} ~cond := #in~cond; {7999#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:44,235 INFO L290 TraceCheckUtils]: 48: Hoare triple {7999#(<= ~counter~0 4)} assume !(0 == ~cond); {7999#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:44,235 INFO L290 TraceCheckUtils]: 49: Hoare triple {7999#(<= ~counter~0 4)} assume true; {7999#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:44,236 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {7999#(<= ~counter~0 4)} {7999#(<= ~counter~0 4)} #63#return; {7999#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:44,236 INFO L290 TraceCheckUtils]: 51: Hoare triple {7999#(<= ~counter~0 4)} assume !!(0 != ~r~0); {7999#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:44,237 INFO L290 TraceCheckUtils]: 52: Hoare triple {7999#(<= ~counter~0 4)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {7999#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:44,237 INFO L290 TraceCheckUtils]: 53: Hoare triple {7999#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8027#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:44,237 INFO L290 TraceCheckUtils]: 54: Hoare triple {8027#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {8027#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:44,238 INFO L272 TraceCheckUtils]: 55: Hoare triple {8027#(<= ~counter~0 5)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {8027#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:44,238 INFO L290 TraceCheckUtils]: 56: Hoare triple {8027#(<= ~counter~0 5)} ~cond := #in~cond; {8027#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:44,239 INFO L290 TraceCheckUtils]: 57: Hoare triple {8027#(<= ~counter~0 5)} assume !(0 == ~cond); {8027#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:44,239 INFO L290 TraceCheckUtils]: 58: Hoare triple {8027#(<= ~counter~0 5)} assume true; {8027#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:44,240 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {8027#(<= ~counter~0 5)} {8027#(<= ~counter~0 5)} #63#return; {8027#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:44,240 INFO L290 TraceCheckUtils]: 60: Hoare triple {8027#(<= ~counter~0 5)} assume !!(0 != ~r~0); {8027#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:44,240 INFO L290 TraceCheckUtils]: 61: Hoare triple {8027#(<= ~counter~0 5)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {8027#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:44,241 INFO L290 TraceCheckUtils]: 62: Hoare triple {8027#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8055#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:44,241 INFO L290 TraceCheckUtils]: 63: Hoare triple {8055#(<= ~counter~0 6)} assume !!(#t~post6 < 10);havoc #t~post6; {8055#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:44,242 INFO L272 TraceCheckUtils]: 64: Hoare triple {8055#(<= ~counter~0 6)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {8055#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:44,242 INFO L290 TraceCheckUtils]: 65: Hoare triple {8055#(<= ~counter~0 6)} ~cond := #in~cond; {8055#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:44,242 INFO L290 TraceCheckUtils]: 66: Hoare triple {8055#(<= ~counter~0 6)} assume !(0 == ~cond); {8055#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:44,243 INFO L290 TraceCheckUtils]: 67: Hoare triple {8055#(<= ~counter~0 6)} assume true; {8055#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:44,243 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {8055#(<= ~counter~0 6)} {8055#(<= ~counter~0 6)} #63#return; {8055#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:44,243 INFO L290 TraceCheckUtils]: 69: Hoare triple {8055#(<= ~counter~0 6)} assume !!(0 != ~r~0); {8055#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:44,244 INFO L290 TraceCheckUtils]: 70: Hoare triple {8055#(<= ~counter~0 6)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {8055#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:44,244 INFO L290 TraceCheckUtils]: 71: Hoare triple {8055#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8083#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:44,244 INFO L290 TraceCheckUtils]: 72: Hoare triple {8083#(<= ~counter~0 7)} assume !!(#t~post6 < 10);havoc #t~post6; {8083#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:44,245 INFO L272 TraceCheckUtils]: 73: Hoare triple {8083#(<= ~counter~0 7)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {8083#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:44,245 INFO L290 TraceCheckUtils]: 74: Hoare triple {8083#(<= ~counter~0 7)} ~cond := #in~cond; {8083#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:44,246 INFO L290 TraceCheckUtils]: 75: Hoare triple {8083#(<= ~counter~0 7)} assume !(0 == ~cond); {8083#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:44,246 INFO L290 TraceCheckUtils]: 76: Hoare triple {8083#(<= ~counter~0 7)} assume true; {8083#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:44,246 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {8083#(<= ~counter~0 7)} {8083#(<= ~counter~0 7)} #63#return; {8083#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:44,247 INFO L290 TraceCheckUtils]: 78: Hoare triple {8083#(<= ~counter~0 7)} assume !!(0 != ~r~0); {8083#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:44,247 INFO L290 TraceCheckUtils]: 79: Hoare triple {8083#(<= ~counter~0 7)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {8083#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:44,247 INFO L290 TraceCheckUtils]: 80: Hoare triple {8083#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8111#(<= ~counter~0 8)} is VALID [2022-04-15 15:14:44,248 INFO L290 TraceCheckUtils]: 81: Hoare triple {8111#(<= ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {8111#(<= ~counter~0 8)} is VALID [2022-04-15 15:14:44,248 INFO L272 TraceCheckUtils]: 82: Hoare triple {8111#(<= ~counter~0 8)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {8111#(<= ~counter~0 8)} is VALID [2022-04-15 15:14:44,248 INFO L290 TraceCheckUtils]: 83: Hoare triple {8111#(<= ~counter~0 8)} ~cond := #in~cond; {8111#(<= ~counter~0 8)} is VALID [2022-04-15 15:14:44,249 INFO L290 TraceCheckUtils]: 84: Hoare triple {8111#(<= ~counter~0 8)} assume !(0 == ~cond); {8111#(<= ~counter~0 8)} is VALID [2022-04-15 15:14:44,249 INFO L290 TraceCheckUtils]: 85: Hoare triple {8111#(<= ~counter~0 8)} assume true; {8111#(<= ~counter~0 8)} is VALID [2022-04-15 15:14:44,250 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {8111#(<= ~counter~0 8)} {8111#(<= ~counter~0 8)} #63#return; {8111#(<= ~counter~0 8)} is VALID [2022-04-15 15:14:44,250 INFO L290 TraceCheckUtils]: 87: Hoare triple {8111#(<= ~counter~0 8)} assume !!(0 != ~r~0); {8111#(<= ~counter~0 8)} is VALID [2022-04-15 15:14:44,250 INFO L290 TraceCheckUtils]: 88: Hoare triple {8111#(<= ~counter~0 8)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {8111#(<= ~counter~0 8)} is VALID [2022-04-15 15:14:44,251 INFO L290 TraceCheckUtils]: 89: Hoare triple {8111#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8139#(<= ~counter~0 9)} is VALID [2022-04-15 15:14:44,251 INFO L290 TraceCheckUtils]: 90: Hoare triple {8139#(<= ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {8139#(<= ~counter~0 9)} is VALID [2022-04-15 15:14:44,251 INFO L272 TraceCheckUtils]: 91: Hoare triple {8139#(<= ~counter~0 9)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {8139#(<= ~counter~0 9)} is VALID [2022-04-15 15:14:44,252 INFO L290 TraceCheckUtils]: 92: Hoare triple {8139#(<= ~counter~0 9)} ~cond := #in~cond; {8139#(<= ~counter~0 9)} is VALID [2022-04-15 15:14:44,252 INFO L290 TraceCheckUtils]: 93: Hoare triple {8139#(<= ~counter~0 9)} assume !(0 == ~cond); {8139#(<= ~counter~0 9)} is VALID [2022-04-15 15:14:44,252 INFO L290 TraceCheckUtils]: 94: Hoare triple {8139#(<= ~counter~0 9)} assume true; {8139#(<= ~counter~0 9)} is VALID [2022-04-15 15:14:44,253 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {8139#(<= ~counter~0 9)} {8139#(<= ~counter~0 9)} #63#return; {8139#(<= ~counter~0 9)} is VALID [2022-04-15 15:14:44,253 INFO L290 TraceCheckUtils]: 96: Hoare triple {8139#(<= ~counter~0 9)} assume !!(0 != ~r~0); {8139#(<= ~counter~0 9)} is VALID [2022-04-15 15:14:44,253 INFO L290 TraceCheckUtils]: 97: Hoare triple {8139#(<= ~counter~0 9)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {8139#(<= ~counter~0 9)} is VALID [2022-04-15 15:14:44,254 INFO L290 TraceCheckUtils]: 98: Hoare triple {8139#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8167#(<= |main_#t~post6| 9)} is VALID [2022-04-15 15:14:44,254 INFO L290 TraceCheckUtils]: 99: Hoare triple {8167#(<= |main_#t~post6| 9)} assume !(#t~post6 < 10);havoc #t~post6; {7859#false} is VALID [2022-04-15 15:14:44,254 INFO L272 TraceCheckUtils]: 100: Hoare triple {7859#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {7859#false} is VALID [2022-04-15 15:14:44,254 INFO L290 TraceCheckUtils]: 101: Hoare triple {7859#false} ~cond := #in~cond; {7859#false} is VALID [2022-04-15 15:14:44,254 INFO L290 TraceCheckUtils]: 102: Hoare triple {7859#false} assume 0 == ~cond; {7859#false} is VALID [2022-04-15 15:14:44,255 INFO L290 TraceCheckUtils]: 103: Hoare triple {7859#false} assume !false; {7859#false} is VALID [2022-04-15 15:14:44,255 INFO L134 CoverageAnalysis]: Checked inductivity of 364 backedges. 18 proven. 342 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 15:14:44,255 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 15:14:44,693 INFO L290 TraceCheckUtils]: 103: Hoare triple {7859#false} assume !false; {7859#false} is VALID [2022-04-15 15:14:44,694 INFO L290 TraceCheckUtils]: 102: Hoare triple {7859#false} assume 0 == ~cond; {7859#false} is VALID [2022-04-15 15:14:44,694 INFO L290 TraceCheckUtils]: 101: Hoare triple {7859#false} ~cond := #in~cond; {7859#false} is VALID [2022-04-15 15:14:44,694 INFO L272 TraceCheckUtils]: 100: Hoare triple {7859#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {7859#false} is VALID [2022-04-15 15:14:44,694 INFO L290 TraceCheckUtils]: 99: Hoare triple {8167#(<= |main_#t~post6| 9)} assume !(#t~post6 < 10);havoc #t~post6; {7859#false} is VALID [2022-04-15 15:14:44,694 INFO L290 TraceCheckUtils]: 98: Hoare triple {8139#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8167#(<= |main_#t~post6| 9)} is VALID [2022-04-15 15:14:44,695 INFO L290 TraceCheckUtils]: 97: Hoare triple {8139#(<= ~counter~0 9)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {8139#(<= ~counter~0 9)} is VALID [2022-04-15 15:14:44,695 INFO L290 TraceCheckUtils]: 96: Hoare triple {8139#(<= ~counter~0 9)} assume !!(0 != ~r~0); {8139#(<= ~counter~0 9)} is VALID [2022-04-15 15:14:44,695 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {7858#true} {8139#(<= ~counter~0 9)} #63#return; {8139#(<= ~counter~0 9)} is VALID [2022-04-15 15:14:44,696 INFO L290 TraceCheckUtils]: 94: Hoare triple {7858#true} assume true; {7858#true} is VALID [2022-04-15 15:14:44,696 INFO L290 TraceCheckUtils]: 93: Hoare triple {7858#true} assume !(0 == ~cond); {7858#true} is VALID [2022-04-15 15:14:44,696 INFO L290 TraceCheckUtils]: 92: Hoare triple {7858#true} ~cond := #in~cond; {7858#true} is VALID [2022-04-15 15:14:44,696 INFO L272 TraceCheckUtils]: 91: Hoare triple {8139#(<= ~counter~0 9)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {7858#true} is VALID [2022-04-15 15:14:44,696 INFO L290 TraceCheckUtils]: 90: Hoare triple {8139#(<= ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {8139#(<= ~counter~0 9)} is VALID [2022-04-15 15:14:44,696 INFO L290 TraceCheckUtils]: 89: Hoare triple {8111#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8139#(<= ~counter~0 9)} is VALID [2022-04-15 15:14:44,697 INFO L290 TraceCheckUtils]: 88: Hoare triple {8111#(<= ~counter~0 8)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {8111#(<= ~counter~0 8)} is VALID [2022-04-15 15:14:44,697 INFO L290 TraceCheckUtils]: 87: Hoare triple {8111#(<= ~counter~0 8)} assume !!(0 != ~r~0); {8111#(<= ~counter~0 8)} is VALID [2022-04-15 15:14:44,697 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {7858#true} {8111#(<= ~counter~0 8)} #63#return; {8111#(<= ~counter~0 8)} is VALID [2022-04-15 15:14:44,698 INFO L290 TraceCheckUtils]: 85: Hoare triple {7858#true} assume true; {7858#true} is VALID [2022-04-15 15:14:44,698 INFO L290 TraceCheckUtils]: 84: Hoare triple {7858#true} assume !(0 == ~cond); {7858#true} is VALID [2022-04-15 15:14:44,698 INFO L290 TraceCheckUtils]: 83: Hoare triple {7858#true} ~cond := #in~cond; {7858#true} is VALID [2022-04-15 15:14:44,698 INFO L272 TraceCheckUtils]: 82: Hoare triple {8111#(<= ~counter~0 8)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {7858#true} is VALID [2022-04-15 15:14:44,698 INFO L290 TraceCheckUtils]: 81: Hoare triple {8111#(<= ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {8111#(<= ~counter~0 8)} is VALID [2022-04-15 15:14:44,698 INFO L290 TraceCheckUtils]: 80: Hoare triple {8083#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8111#(<= ~counter~0 8)} is VALID [2022-04-15 15:14:44,699 INFO L290 TraceCheckUtils]: 79: Hoare triple {8083#(<= ~counter~0 7)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {8083#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:44,699 INFO L290 TraceCheckUtils]: 78: Hoare triple {8083#(<= ~counter~0 7)} assume !!(0 != ~r~0); {8083#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:44,699 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {7858#true} {8083#(<= ~counter~0 7)} #63#return; {8083#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:44,700 INFO L290 TraceCheckUtils]: 76: Hoare triple {7858#true} assume true; {7858#true} is VALID [2022-04-15 15:14:44,700 INFO L290 TraceCheckUtils]: 75: Hoare triple {7858#true} assume !(0 == ~cond); {7858#true} is VALID [2022-04-15 15:14:44,700 INFO L290 TraceCheckUtils]: 74: Hoare triple {7858#true} ~cond := #in~cond; {7858#true} is VALID [2022-04-15 15:14:44,700 INFO L272 TraceCheckUtils]: 73: Hoare triple {8083#(<= ~counter~0 7)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {7858#true} is VALID [2022-04-15 15:14:44,700 INFO L290 TraceCheckUtils]: 72: Hoare triple {8083#(<= ~counter~0 7)} assume !!(#t~post6 < 10);havoc #t~post6; {8083#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:44,701 INFO L290 TraceCheckUtils]: 71: Hoare triple {8055#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8083#(<= ~counter~0 7)} is VALID [2022-04-15 15:14:44,701 INFO L290 TraceCheckUtils]: 70: Hoare triple {8055#(<= ~counter~0 6)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {8055#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:44,701 INFO L290 TraceCheckUtils]: 69: Hoare triple {8055#(<= ~counter~0 6)} assume !!(0 != ~r~0); {8055#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:44,702 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {7858#true} {8055#(<= ~counter~0 6)} #63#return; {8055#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:44,702 INFO L290 TraceCheckUtils]: 67: Hoare triple {7858#true} assume true; {7858#true} is VALID [2022-04-15 15:14:44,702 INFO L290 TraceCheckUtils]: 66: Hoare triple {7858#true} assume !(0 == ~cond); {7858#true} is VALID [2022-04-15 15:14:44,702 INFO L290 TraceCheckUtils]: 65: Hoare triple {7858#true} ~cond := #in~cond; {7858#true} is VALID [2022-04-15 15:14:44,702 INFO L272 TraceCheckUtils]: 64: Hoare triple {8055#(<= ~counter~0 6)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {7858#true} is VALID [2022-04-15 15:14:44,702 INFO L290 TraceCheckUtils]: 63: Hoare triple {8055#(<= ~counter~0 6)} assume !!(#t~post6 < 10);havoc #t~post6; {8055#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:44,703 INFO L290 TraceCheckUtils]: 62: Hoare triple {8027#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8055#(<= ~counter~0 6)} is VALID [2022-04-15 15:14:44,703 INFO L290 TraceCheckUtils]: 61: Hoare triple {8027#(<= ~counter~0 5)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {8027#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:44,703 INFO L290 TraceCheckUtils]: 60: Hoare triple {8027#(<= ~counter~0 5)} assume !!(0 != ~r~0); {8027#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:44,707 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {7858#true} {8027#(<= ~counter~0 5)} #63#return; {8027#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:44,707 INFO L290 TraceCheckUtils]: 58: Hoare triple {7858#true} assume true; {7858#true} is VALID [2022-04-15 15:14:44,707 INFO L290 TraceCheckUtils]: 57: Hoare triple {7858#true} assume !(0 == ~cond); {7858#true} is VALID [2022-04-15 15:14:44,708 INFO L290 TraceCheckUtils]: 56: Hoare triple {7858#true} ~cond := #in~cond; {7858#true} is VALID [2022-04-15 15:14:44,708 INFO L272 TraceCheckUtils]: 55: Hoare triple {8027#(<= ~counter~0 5)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {7858#true} is VALID [2022-04-15 15:14:44,708 INFO L290 TraceCheckUtils]: 54: Hoare triple {8027#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {8027#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:44,708 INFO L290 TraceCheckUtils]: 53: Hoare triple {7999#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8027#(<= ~counter~0 5)} is VALID [2022-04-15 15:14:44,709 INFO L290 TraceCheckUtils]: 52: Hoare triple {7999#(<= ~counter~0 4)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {7999#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:44,709 INFO L290 TraceCheckUtils]: 51: Hoare triple {7999#(<= ~counter~0 4)} assume !!(0 != ~r~0); {7999#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:44,711 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {7858#true} {7999#(<= ~counter~0 4)} #63#return; {7999#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:44,711 INFO L290 TraceCheckUtils]: 49: Hoare triple {7858#true} assume true; {7858#true} is VALID [2022-04-15 15:14:44,711 INFO L290 TraceCheckUtils]: 48: Hoare triple {7858#true} assume !(0 == ~cond); {7858#true} is VALID [2022-04-15 15:14:44,711 INFO L290 TraceCheckUtils]: 47: Hoare triple {7858#true} ~cond := #in~cond; {7858#true} is VALID [2022-04-15 15:14:44,712 INFO L272 TraceCheckUtils]: 46: Hoare triple {7999#(<= ~counter~0 4)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {7858#true} is VALID [2022-04-15 15:14:44,712 INFO L290 TraceCheckUtils]: 45: Hoare triple {7999#(<= ~counter~0 4)} assume !!(#t~post6 < 10);havoc #t~post6; {7999#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:44,712 INFO L290 TraceCheckUtils]: 44: Hoare triple {7971#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7999#(<= ~counter~0 4)} is VALID [2022-04-15 15:14:44,713 INFO L290 TraceCheckUtils]: 43: Hoare triple {7971#(<= ~counter~0 3)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {7971#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:44,713 INFO L290 TraceCheckUtils]: 42: Hoare triple {7971#(<= ~counter~0 3)} assume !!(0 != ~r~0); {7971#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:44,713 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {7858#true} {7971#(<= ~counter~0 3)} #63#return; {7971#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:44,713 INFO L290 TraceCheckUtils]: 40: Hoare triple {7858#true} assume true; {7858#true} is VALID [2022-04-15 15:14:44,713 INFO L290 TraceCheckUtils]: 39: Hoare triple {7858#true} assume !(0 == ~cond); {7858#true} is VALID [2022-04-15 15:14:44,713 INFO L290 TraceCheckUtils]: 38: Hoare triple {7858#true} ~cond := #in~cond; {7858#true} is VALID [2022-04-15 15:14:44,714 INFO L272 TraceCheckUtils]: 37: Hoare triple {7971#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {7858#true} is VALID [2022-04-15 15:14:44,714 INFO L290 TraceCheckUtils]: 36: Hoare triple {7971#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {7971#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:44,714 INFO L290 TraceCheckUtils]: 35: Hoare triple {7943#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7971#(<= ~counter~0 3)} is VALID [2022-04-15 15:14:44,714 INFO L290 TraceCheckUtils]: 34: Hoare triple {7943#(<= ~counter~0 2)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {7943#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:44,715 INFO L290 TraceCheckUtils]: 33: Hoare triple {7943#(<= ~counter~0 2)} assume !!(0 != ~r~0); {7943#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:44,715 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {7858#true} {7943#(<= ~counter~0 2)} #63#return; {7943#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:44,715 INFO L290 TraceCheckUtils]: 31: Hoare triple {7858#true} assume true; {7858#true} is VALID [2022-04-15 15:14:44,715 INFO L290 TraceCheckUtils]: 30: Hoare triple {7858#true} assume !(0 == ~cond); {7858#true} is VALID [2022-04-15 15:14:44,715 INFO L290 TraceCheckUtils]: 29: Hoare triple {7858#true} ~cond := #in~cond; {7858#true} is VALID [2022-04-15 15:14:44,716 INFO L272 TraceCheckUtils]: 28: Hoare triple {7943#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {7858#true} is VALID [2022-04-15 15:14:44,717 INFO L290 TraceCheckUtils]: 27: Hoare triple {7943#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {7943#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:44,717 INFO L290 TraceCheckUtils]: 26: Hoare triple {7915#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7943#(<= ~counter~0 2)} is VALID [2022-04-15 15:14:44,718 INFO L290 TraceCheckUtils]: 25: Hoare triple {7915#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {7915#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:44,718 INFO L290 TraceCheckUtils]: 24: Hoare triple {7915#(<= ~counter~0 1)} assume !!(0 != ~r~0); {7915#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:44,718 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {7858#true} {7915#(<= ~counter~0 1)} #63#return; {7915#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:44,718 INFO L290 TraceCheckUtils]: 22: Hoare triple {7858#true} assume true; {7858#true} is VALID [2022-04-15 15:14:44,719 INFO L290 TraceCheckUtils]: 21: Hoare triple {7858#true} assume !(0 == ~cond); {7858#true} is VALID [2022-04-15 15:14:44,719 INFO L290 TraceCheckUtils]: 20: Hoare triple {7858#true} ~cond := #in~cond; {7858#true} is VALID [2022-04-15 15:14:44,719 INFO L272 TraceCheckUtils]: 19: Hoare triple {7915#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {7858#true} is VALID [2022-04-15 15:14:44,719 INFO L290 TraceCheckUtils]: 18: Hoare triple {7915#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {7915#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:44,719 INFO L290 TraceCheckUtils]: 17: Hoare triple {7866#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7915#(<= ~counter~0 1)} is VALID [2022-04-15 15:14:44,720 INFO L290 TraceCheckUtils]: 16: Hoare triple {7866#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {7866#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:44,720 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7858#true} {7866#(<= ~counter~0 0)} #61#return; {7866#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:44,720 INFO L290 TraceCheckUtils]: 14: Hoare triple {7858#true} assume true; {7858#true} is VALID [2022-04-15 15:14:44,720 INFO L290 TraceCheckUtils]: 13: Hoare triple {7858#true} assume !(0 == ~cond); {7858#true} is VALID [2022-04-15 15:14:44,720 INFO L290 TraceCheckUtils]: 12: Hoare triple {7858#true} ~cond := #in~cond; {7858#true} is VALID [2022-04-15 15:14:44,720 INFO L272 TraceCheckUtils]: 11: Hoare triple {7866#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {7858#true} is VALID [2022-04-15 15:14:44,721 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7858#true} {7866#(<= ~counter~0 0)} #59#return; {7866#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:44,721 INFO L290 TraceCheckUtils]: 9: Hoare triple {7858#true} assume true; {7858#true} is VALID [2022-04-15 15:14:44,721 INFO L290 TraceCheckUtils]: 8: Hoare triple {7858#true} assume !(0 == ~cond); {7858#true} is VALID [2022-04-15 15:14:44,721 INFO L290 TraceCheckUtils]: 7: Hoare triple {7858#true} ~cond := #in~cond; {7858#true} is VALID [2022-04-15 15:14:44,721 INFO L272 TraceCheckUtils]: 6: Hoare triple {7866#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {7858#true} is VALID [2022-04-15 15:14:44,721 INFO L290 TraceCheckUtils]: 5: Hoare triple {7866#(<= ~counter~0 0)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {7866#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:44,722 INFO L272 TraceCheckUtils]: 4: Hoare triple {7866#(<= ~counter~0 0)} call #t~ret7 := main(); {7866#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:44,722 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7866#(<= ~counter~0 0)} {7858#true} #67#return; {7866#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:44,722 INFO L290 TraceCheckUtils]: 2: Hoare triple {7866#(<= ~counter~0 0)} assume true; {7866#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:44,723 INFO L290 TraceCheckUtils]: 1: Hoare triple {7858#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {7866#(<= ~counter~0 0)} is VALID [2022-04-15 15:14:44,723 INFO L272 TraceCheckUtils]: 0: Hoare triple {7858#true} call ULTIMATE.init(); {7858#true} is VALID [2022-04-15 15:14:44,723 INFO L134 CoverageAnalysis]: Checked inductivity of 364 backedges. 18 proven. 198 refuted. 0 times theorem prover too weak. 148 trivial. 0 not checked. [2022-04-15 15:14:44,723 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 15:14:44,732 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [859913339] [2022-04-15 15:14:44,733 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 15:14:44,733 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1636215194] [2022-04-15 15:14:44,733 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1636215194] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 15:14:44,733 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 15:14:44,733 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 13 [2022-04-15 15:14:44,733 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 15:14:44,733 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1713935309] [2022-04-15 15:14:44,733 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1713935309] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 15:14:44,733 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 15:14:44,733 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-15 15:14:44,733 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1766400173] [2022-04-15 15:14:44,733 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 15:14:44,734 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 5.769230769230769) internal successors, (75), 12 states have internal predecessors, (75), 12 states have call successors, (14), 12 states have call predecessors, (14), 10 states have return successors, (12), 10 states have call predecessors, (12), 11 states have call successors, (12) Word has length 104 [2022-04-15 15:14:44,734 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 15:14:44,734 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 5.769230769230769) internal successors, (75), 12 states have internal predecessors, (75), 12 states have call successors, (14), 12 states have call predecessors, (14), 10 states have return successors, (12), 10 states have call predecessors, (12), 11 states have call successors, (12) [2022-04-15 15:14:44,802 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 101 edges. 101 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:44,802 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-15 15:14:44,802 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 15:14:44,803 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-15 15:14:44,803 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=68, Invalid=88, Unknown=0, NotChecked=0, Total=156 [2022-04-15 15:14:44,803 INFO L87 Difference]: Start difference. First operand 101 states and 111 transitions. Second operand has 13 states, 13 states have (on average 5.769230769230769) internal successors, (75), 12 states have internal predecessors, (75), 12 states have call successors, (14), 12 states have call predecessors, (14), 10 states have return successors, (12), 10 states have call predecessors, (12), 11 states have call successors, (12) [2022-04-15 15:14:45,128 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:45,128 INFO L93 Difference]: Finished difference Result 115 states and 126 transitions. [2022-04-15 15:14:45,128 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-15 15:14:45,128 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 5.769230769230769) internal successors, (75), 12 states have internal predecessors, (75), 12 states have call successors, (14), 12 states have call predecessors, (14), 10 states have return successors, (12), 10 states have call predecessors, (12), 11 states have call successors, (12) Word has length 104 [2022-04-15 15:14:45,129 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 15:14:45,129 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 5.769230769230769) internal successors, (75), 12 states have internal predecessors, (75), 12 states have call successors, (14), 12 states have call predecessors, (14), 10 states have return successors, (12), 10 states have call predecessors, (12), 11 states have call successors, (12) [2022-04-15 15:14:45,131 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 125 transitions. [2022-04-15 15:14:45,131 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 5.769230769230769) internal successors, (75), 12 states have internal predecessors, (75), 12 states have call successors, (14), 12 states have call predecessors, (14), 10 states have return successors, (12), 10 states have call predecessors, (12), 11 states have call successors, (12) [2022-04-15 15:14:45,132 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 125 transitions. [2022-04-15 15:14:45,132 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 125 transitions. [2022-04-15 15:14:45,218 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 125 edges. 125 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:45,220 INFO L225 Difference]: With dead ends: 115 [2022-04-15 15:14:45,220 INFO L226 Difference]: Without dead ends: 110 [2022-04-15 15:14:45,220 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 216 GetRequests, 195 SyntacticMatches, 1 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 54 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=176, Invalid=286, Unknown=0, NotChecked=0, Total=462 [2022-04-15 15:14:45,221 INFO L913 BasicCegarLoop]: 35 mSDtfsCounter, 27 mSDsluCounter, 113 mSDsCounter, 0 mSdLazyCounter, 57 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 27 SdHoareTripleChecker+Valid, 148 SdHoareTripleChecker+Invalid, 71 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 57 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 15:14:45,221 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [27 Valid, 148 Invalid, 71 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 57 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 15:14:45,221 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 110 states. [2022-04-15 15:14:45,313 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 110 to 110. [2022-04-15 15:14:45,314 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 15:14:45,314 INFO L82 GeneralOperation]: Start isEquivalent. First operand 110 states. Second operand has 110 states, 82 states have (on average 1.1341463414634145) internal successors, (93), 82 states have internal predecessors, (93), 15 states have call successors, (15), 14 states have call predecessors, (15), 12 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-15 15:14:45,314 INFO L74 IsIncluded]: Start isIncluded. First operand 110 states. Second operand has 110 states, 82 states have (on average 1.1341463414634145) internal successors, (93), 82 states have internal predecessors, (93), 15 states have call successors, (15), 14 states have call predecessors, (15), 12 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-15 15:14:45,314 INFO L87 Difference]: Start difference. First operand 110 states. Second operand has 110 states, 82 states have (on average 1.1341463414634145) internal successors, (93), 82 states have internal predecessors, (93), 15 states have call successors, (15), 14 states have call predecessors, (15), 12 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-15 15:14:45,316 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:45,316 INFO L93 Difference]: Finished difference Result 110 states and 121 transitions. [2022-04-15 15:14:45,316 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 121 transitions. [2022-04-15 15:14:45,316 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:14:45,316 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:14:45,316 INFO L74 IsIncluded]: Start isIncluded. First operand has 110 states, 82 states have (on average 1.1341463414634145) internal successors, (93), 82 states have internal predecessors, (93), 15 states have call successors, (15), 14 states have call predecessors, (15), 12 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 110 states. [2022-04-15 15:14:45,316 INFO L87 Difference]: Start difference. First operand has 110 states, 82 states have (on average 1.1341463414634145) internal successors, (93), 82 states have internal predecessors, (93), 15 states have call successors, (15), 14 states have call predecessors, (15), 12 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 110 states. [2022-04-15 15:14:45,318 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 15:14:45,318 INFO L93 Difference]: Finished difference Result 110 states and 121 transitions. [2022-04-15 15:14:45,318 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 121 transitions. [2022-04-15 15:14:45,318 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 15:14:45,318 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 15:14:45,318 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 15:14:45,318 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 15:14:45,318 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 110 states, 82 states have (on average 1.1341463414634145) internal successors, (93), 82 states have internal predecessors, (93), 15 states have call successors, (15), 14 states have call predecessors, (15), 12 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-15 15:14:45,320 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 110 states to 110 states and 121 transitions. [2022-04-15 15:14:45,320 INFO L78 Accepts]: Start accepts. Automaton has 110 states and 121 transitions. Word has length 104 [2022-04-15 15:14:45,320 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 15:14:45,320 INFO L478 AbstractCegarLoop]: Abstraction has 110 states and 121 transitions. [2022-04-15 15:14:45,320 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 5.769230769230769) internal successors, (75), 12 states have internal predecessors, (75), 12 states have call successors, (14), 12 states have call predecessors, (14), 10 states have return successors, (12), 10 states have call predecessors, (12), 11 states have call successors, (12) [2022-04-15 15:14:45,320 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 110 states and 121 transitions. [2022-04-15 15:14:47,153 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 121 edges. 121 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 15:14:47,154 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 121 transitions. [2022-04-15 15:14:47,154 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 114 [2022-04-15 15:14:47,154 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 15:14:47,154 INFO L499 BasicCegarLoop]: trace histogram [11, 11, 10, 10, 10, 10, 10, 10, 10, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 15:14:47,163 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Forceful destruction successful, exit code 0 [2022-04-15 15:14:47,359 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 14 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable12 [2022-04-15 15:14:47,359 INFO L403 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 15:14:47,359 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 15:14:47,359 INFO L85 PathProgramCache]: Analyzing trace with hash -1468805930, now seen corresponding path program 19 times [2022-04-15 15:14:47,359 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 15:14:47,359 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [284801293] [2022-04-15 15:14:47,360 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 15:14:47,360 INFO L85 PathProgramCache]: Analyzing trace with hash -1468805930, now seen corresponding path program 20 times [2022-04-15 15:14:47,360 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 15:14:47,360 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [429716240] [2022-04-15 15:14:47,360 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 15:14:47,360 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 15:14:47,372 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 15:14:47,372 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1551868087] [2022-04-15 15:14:47,372 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 15:14:47,373 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:14:47,373 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 15:14:47,373 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 15:14:47,374 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Waiting until timeout for monitored process [2022-04-15 15:14:47,490 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 15:14:47,490 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-04-15 15:14:47,490 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-04-15 15:14:47,598 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-04-15 15:14:47,636 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-04-15 15:14:47,636 INFO L130 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found a feasible trace [2022-04-15 15:14:47,636 INFO L618 BasicCegarLoop]: Counterexample is feasible [2022-04-15 15:14:47,638 INFO L788 garLoopResultBuilder]: Registering result UNSAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-15 15:14:47,656 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Forceful destruction successful, exit code 0 [2022-04-15 15:14:47,856 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable13,15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 15:14:47,858 INFO L719 BasicCegarLoop]: Path program histogram: [20, 2, 2, 2, 2] [2022-04-15 15:14:47,860 INFO L177 ceAbstractionStarter]: Computing trace abstraction results [2022-04-15 15:14:47,876 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-15 15:14:47,877 WARN L170 areAnnotationChecker]: ULTIMATE.initENTRY has no Hoare annotation [2022-04-15 15:14:47,877 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-04-15 15:14:47,877 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-04-15 15:14:47,877 WARN L170 areAnnotationChecker]: assume_abort_if_notENTRY has no Hoare annotation [2022-04-15 15:14:47,877 WARN L170 areAnnotationChecker]: mainENTRY has no Hoare annotation [2022-04-15 15:14:47,877 WARN L170 areAnnotationChecker]: __VERIFIER_assertENTRY has no Hoare annotation [2022-04-15 15:14:47,877 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-15 15:14:47,877 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-15 15:14:47,877 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-04-15 15:14:47,877 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-04-15 15:14:47,877 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-04-15 15:14:47,877 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-04-15 15:14:47,877 WARN L170 areAnnotationChecker]: L26 has no Hoare annotation [2022-04-15 15:14:47,877 WARN L170 areAnnotationChecker]: L26 has no Hoare annotation [2022-04-15 15:14:47,877 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-15 15:14:47,877 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-15 15:14:47,877 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-15 15:14:47,877 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-15 15:14:47,877 WARN L170 areAnnotationChecker]: L9-2 has no Hoare annotation [2022-04-15 15:14:47,877 WARN L170 areAnnotationChecker]: L26-1 has no Hoare annotation [2022-04-15 15:14:47,877 WARN L170 areAnnotationChecker]: L26-1 has no Hoare annotation [2022-04-15 15:14:47,877 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-04-15 15:14:47,877 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-04-15 15:14:47,877 WARN L170 areAnnotationChecker]: L12-2 has no Hoare annotation [2022-04-15 15:14:47,877 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-15 15:14:47,877 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-15 15:14:47,877 WARN L170 areAnnotationChecker]: L28 has no Hoare annotation [2022-04-15 15:14:47,878 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-15 15:14:47,878 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-15 15:14:47,878 WARN L170 areAnnotationChecker]: L38-2 has no Hoare annotation [2022-04-15 15:14:47,878 WARN L170 areAnnotationChecker]: L38-2 has no Hoare annotation [2022-04-15 15:14:47,878 WARN L170 areAnnotationChecker]: L35-1 has no Hoare annotation [2022-04-15 15:14:47,878 WARN L170 areAnnotationChecker]: L35-1 has no Hoare annotation [2022-04-15 15:14:47,878 WARN L170 areAnnotationChecker]: L48 has no Hoare annotation [2022-04-15 15:14:47,878 WARN L170 areAnnotationChecker]: L34-3 has no Hoare annotation [2022-04-15 15:14:47,878 WARN L170 areAnnotationChecker]: L34-3 has no Hoare annotation [2022-04-15 15:14:47,878 WARN L170 areAnnotationChecker]: L34-1 has no Hoare annotation [2022-04-15 15:14:47,878 WARN L170 areAnnotationChecker]: L34-1 has no Hoare annotation [2022-04-15 15:14:47,878 WARN L170 areAnnotationChecker]: L38 has no Hoare annotation [2022-04-15 15:14:47,878 WARN L170 areAnnotationChecker]: L38 has no Hoare annotation [2022-04-15 15:14:47,878 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-15 15:14:47,878 WARN L170 areAnnotationChecker]: L35 has no Hoare annotation [2022-04-15 15:14:47,878 WARN L170 areAnnotationChecker]: L35 has no Hoare annotation [2022-04-15 15:14:47,878 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-15 15:14:47,878 INFO L163 areAnnotationChecker]: CFG has 0 edges. 0 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-15 15:14:47,879 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 15.04 03:14:47 BoogieIcfgContainer [2022-04-15 15:14:47,879 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-15 15:14:47,880 INFO L158 Benchmark]: Toolchain (without parser) took 42380.34ms. Allocated memory was 199.2MB in the beginning and 289.4MB in the end (delta: 90.2MB). Free memory was 150.9MB in the beginning and 155.7MB in the end (delta: -4.7MB). Peak memory consumption was 87.0MB. Max. memory is 8.0GB. [2022-04-15 15:14:47,880 INFO L158 Benchmark]: CDTParser took 0.12ms. Allocated memory is still 199.2MB. Free memory was 167.3MB in the beginning and 167.1MB in the end (delta: 151.9kB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-15 15:14:47,880 INFO L158 Benchmark]: CACSL2BoogieTranslator took 241.11ms. Allocated memory is still 199.2MB. Free memory was 150.8MB in the beginning and 175.3MB in the end (delta: -24.5MB). Peak memory consumption was 10.8MB. Max. memory is 8.0GB. [2022-04-15 15:14:47,880 INFO L158 Benchmark]: Boogie Preprocessor took 33.14ms. Allocated memory is still 199.2MB. Free memory was 175.3MB in the beginning and 173.7MB in the end (delta: 1.6MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-15 15:14:47,880 INFO L158 Benchmark]: RCFGBuilder took 273.62ms. Allocated memory is still 199.2MB. Free memory was 173.7MB in the beginning and 162.2MB in the end (delta: 11.6MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-15 15:14:47,880 INFO L158 Benchmark]: TraceAbstraction took 41827.73ms. Allocated memory was 199.2MB in the beginning and 289.4MB in the end (delta: 90.2MB). Free memory was 161.7MB in the beginning and 155.7MB in the end (delta: 6.0MB). Peak memory consumption was 97.2MB. Max. memory is 8.0GB. [2022-04-15 15:14:47,881 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.12ms. Allocated memory is still 199.2MB. Free memory was 167.3MB in the beginning and 167.1MB in the end (delta: 151.9kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 241.11ms. Allocated memory is still 199.2MB. Free memory was 150.8MB in the beginning and 175.3MB in the end (delta: -24.5MB). Peak memory consumption was 10.8MB. Max. memory is 8.0GB. * Boogie Preprocessor took 33.14ms. Allocated memory is still 199.2MB. Free memory was 175.3MB in the beginning and 173.7MB in the end (delta: 1.6MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 273.62ms. Allocated memory is still 199.2MB. Free memory was 173.7MB in the beginning and 162.2MB in the end (delta: 11.6MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * TraceAbstraction took 41827.73ms. Allocated memory was 199.2MB in the beginning and 289.4MB in the end (delta: 90.2MB). Free memory was 161.7MB in the beginning and 155.7MB in the end (delta: 6.0MB). Peak memory consumption was 97.2MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - CounterExampleResult [Line: 14]: a call to reach_error is reachable a call to reach_error is reachable We found a FailurePath: [L19] int counter = 0; [L21] int A, R; [L22] long long u, v, r; [L23] A = __VERIFIER_nondet_int() [L24] R = __VERIFIER_nondet_int() [L26] CALL assume_abort_if_not(((long long) R - 1) * ((long long) R - 1) < A) [L9] COND FALSE !(!cond) [L26] RET assume_abort_if_not(((long long) R - 1) * ((long long) R - 1) < A) [L28] CALL assume_abort_if_not(A % 2 == 1) [L9] COND FALSE !(!cond) [L28] RET assume_abort_if_not(A % 2 == 1) [L30] u = ((long long) 2 * R) + 1 [L31] v = 1 [L32] r = ((long long) R * R) - A [L34] EXPR counter++ [L34] COND TRUE counter++<10 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L36] COND FALSE !(!(r != 0)) [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 [L34] EXPR counter++ [L34] COND TRUE counter++<10 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L36] COND FALSE !(!(r != 0)) [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 [L34] EXPR counter++ [L34] COND TRUE counter++<10 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L36] COND FALSE !(!(r != 0)) [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 [L34] EXPR counter++ [L34] COND TRUE counter++<10 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L36] COND FALSE !(!(r != 0)) [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 [L34] EXPR counter++ [L34] COND TRUE counter++<10 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L36] COND FALSE !(!(r != 0)) [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 [L34] EXPR counter++ [L34] COND TRUE counter++<10 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L36] COND FALSE !(!(r != 0)) [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 [L34] EXPR counter++ [L34] COND TRUE counter++<10 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L36] COND FALSE !(!(r != 0)) [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 [L34] EXPR counter++ [L34] COND TRUE counter++<10 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L36] COND FALSE !(!(r != 0)) [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 [L34] EXPR counter++ [L34] COND TRUE counter++<10 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L36] COND FALSE !(!(r != 0)) [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 [L34] EXPR counter++ [L34] COND TRUE counter++<10 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L36] COND FALSE !(!(r != 0)) [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 [L34] EXPR counter++ [L34] COND FALSE !(counter++<10) [L48] CALL __VERIFIER_assert(((long long) 4*A) == u*u - v*v - 2*u + 2*v) [L12] COND TRUE !(cond) [L14] reach_error() - StatisticsResult: Ultimate Automizer benchmark data CFG has 6 procedures, 33 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 41.7s, OverallIterations: 14, TraceHistogramMax: 11, PathProgramHistogramMax: 20, EmptinessCheckTime: 0.0s, AutomataDifference: 9.0s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 1 mSolverCounterUnknown, 238 SdHoareTripleChecker+Valid, 3.2s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 237 mSDsluCounter, 1300 SdHoareTripleChecker+Invalid, 3.2s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 916 mSDsCounter, 153 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 377 IncrementalHoareTripleChecker+Invalid, 531 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 153 mSolverCounterUnsat, 384 mSDtfsCounter, 377 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 1386 GetRequests, 1223 SyntacticMatches, 6 SemanticMatches, 157 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 254 ImplicationChecksByTransitivity, 0.8s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=110occurred in iteration=13, InterpolantAutomatonStates: 145, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.7s AutomataMinimizationTime, 13 MinimizatonAttempts, 8 StatesRemovedByMinimization, 2 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: No data available, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be incorrect! [2022-04-15 15:14:47,892 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request...