/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/fermat1-ll_unwindbound10.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-08 12:35:14,539 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-08 12:35:14,540 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-08 12:35:14,565 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-08 12:35:14,565 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-08 12:35:14,566 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-08 12:35:14,569 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-08 12:35:14,575 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-08 12:35:14,576 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-08 12:35:14,579 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-08 12:35:14,580 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-08 12:35:14,581 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-08 12:35:14,581 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-08 12:35:14,583 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-08 12:35:14,583 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-08 12:35:14,585 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-08 12:35:14,585 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-08 12:35:14,586 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-08 12:35:14,588 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-08 12:35:14,592 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-08 12:35:14,593 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-08 12:35:14,594 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-08 12:35:14,594 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-08 12:35:14,595 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-08 12:35:14,595 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-08 12:35:14,600 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-08 12:35:14,600 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-08 12:35:14,600 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-08 12:35:14,600 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-08 12:35:14,601 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-08 12:35:14,602 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-08 12:35:14,602 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-08 12:35:14,603 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-08 12:35:14,603 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-08 12:35:14,603 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-08 12:35:14,604 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-08 12:35:14,604 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-08 12:35:14,604 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-08 12:35:14,605 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-08 12:35:14,605 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-08 12:35:14,605 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-08 12:35:14,606 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-08 12:35:14,607 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationQvasr_64.epf [2022-04-08 12:35:14,613 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-08 12:35:14,613 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-08 12:35:14,614 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-08 12:35:14,614 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-08 12:35:14,614 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-08 12:35:14,614 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-08 12:35:14,614 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-08 12:35:14,614 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-08 12:35:14,614 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-08 12:35:14,615 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-08 12:35:14,615 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-08 12:35:14,615 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-08 12:35:14,615 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-08 12:35:14,615 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-08 12:35:14,615 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-08 12:35:14,615 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 12:35:14,616 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-08 12:35:14,616 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-08 12:35:14,616 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-08 12:35:14,616 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-08 12:35:14,616 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-08 12:35:14,616 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=QVASR [2022-04-08 12:35:14,616 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-08 12:35:14,787 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-08 12:35:14,801 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-08 12:35:14,803 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-08 12:35:14,804 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-08 12:35:14,804 INFO L275 PluginConnector]: CDTParser initialized [2022-04-08 12:35:14,805 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/fermat1-ll_unwindbound10.c [2022-04-08 12:35:14,845 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/04ae8db8c/86ee1390215446d3a6df4e26f7e403ad/FLAG3f4d3ad18 [2022-04-08 12:35:15,183 INFO L306 CDTParser]: Found 1 translation units. [2022-04-08 12:35:15,184 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/fermat1-ll_unwindbound10.c [2022-04-08 12:35:15,187 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/04ae8db8c/86ee1390215446d3a6df4e26f7e403ad/FLAG3f4d3ad18 [2022-04-08 12:35:15,195 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/04ae8db8c/86ee1390215446d3a6df4e26f7e403ad [2022-04-08 12:35:15,196 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-08 12:35:15,197 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-08 12:35:15,200 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-08 12:35:15,200 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-08 12:35:15,210 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-08 12:35:15,213 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 12:35:15" (1/1) ... [2022-04-08 12:35:15,213 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@4d1e1e00 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:35:15, skipping insertion in model container [2022-04-08 12:35:15,214 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 12:35:15" (1/1) ... [2022-04-08 12:35:15,218 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-08 12:35:15,225 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-08 12:35:15,338 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/fermat1-ll_unwindbound10.c[535,548] [2022-04-08 12:35:15,352 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 12:35:15,357 INFO L203 MainTranslator]: Completed pre-run [2022-04-08 12:35:15,365 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/fermat1-ll_unwindbound10.c[535,548] [2022-04-08 12:35:15,382 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 12:35:15,390 INFO L208 MainTranslator]: Completed translation [2022-04-08 12:35:15,390 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:35:15 WrapperNode [2022-04-08 12:35:15,390 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-08 12:35:15,391 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-08 12:35:15,391 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-08 12:35:15,391 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-08 12:35:15,400 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:35:15" (1/1) ... [2022-04-08 12:35:15,400 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:35:15" (1/1) ... [2022-04-08 12:35:15,409 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:35:15" (1/1) ... [2022-04-08 12:35:15,409 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:35:15" (1/1) ... [2022-04-08 12:35:15,423 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:35:15" (1/1) ... [2022-04-08 12:35:15,426 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:35:15" (1/1) ... [2022-04-08 12:35:15,426 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:35:15" (1/1) ... [2022-04-08 12:35:15,428 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-08 12:35:15,428 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-08 12:35:15,428 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-08 12:35:15,428 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-08 12:35:15,429 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:35:15" (1/1) ... [2022-04-08 12:35:15,439 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 12:35:15,448 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:35:15,471 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-08 12:35:15,495 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-08 12:35:15,508 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-08 12:35:15,508 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-08 12:35:15,508 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-08 12:35:15,508 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-08 12:35:15,509 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-08 12:35:15,509 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-08 12:35:15,509 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-08 12:35:15,509 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-08 12:35:15,509 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-08 12:35:15,510 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-08 12:35:15,510 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-08 12:35:15,510 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-08 12:35:15,510 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-08 12:35:15,510 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-08 12:35:15,511 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-08 12:35:15,512 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-08 12:35:15,512 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-08 12:35:15,512 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-08 12:35:15,512 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-08 12:35:15,513 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-08 12:35:15,556 INFO L234 CfgBuilder]: Building ICFG [2022-04-08 12:35:15,557 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-08 12:35:15,716 INFO L275 CfgBuilder]: Performing block encoding [2022-04-08 12:35:15,720 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-08 12:35:15,720 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-04-08 12:35:15,722 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 12:35:15 BoogieIcfgContainer [2022-04-08 12:35:15,722 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-08 12:35:15,723 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-08 12:35:15,723 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-08 12:35:15,733 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-08 12:35:15,733 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.04 12:35:15" (1/3) ... [2022-04-08 12:35:15,734 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5daf2fb1 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 12:35:15, skipping insertion in model container [2022-04-08 12:35:15,734 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:35:15" (2/3) ... [2022-04-08 12:35:15,734 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5daf2fb1 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 12:35:15, skipping insertion in model container [2022-04-08 12:35:15,734 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 12:35:15" (3/3) ... [2022-04-08 12:35:15,735 INFO L111 eAbstractionObserver]: Analyzing ICFG fermat1-ll_unwindbound10.c [2022-04-08 12:35:15,740 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-08 12:35:15,741 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-08 12:35:15,770 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-08 12:35:15,774 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-08 12:35:15,775 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-08 12:35:15,789 INFO L276 IsEmpty]: Start isEmpty. Operand has 37 states, 23 states have (on average 1.5217391304347827) internal successors, (35), 24 states have internal predecessors, (35), 8 states have call successors, (8), 4 states have call predecessors, (8), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-08 12:35:15,794 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-04-08 12:35:15,794 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:35:15,795 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-08 12:35:15,795 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:35:15,799 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:35:15,799 INFO L85 PathProgramCache]: Analyzing trace with hash 928708300, now seen corresponding path program 1 times [2022-04-08 12:35:15,804 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:35:15,804 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1302586196] [2022-04-08 12:35:15,810 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:35:15,811 INFO L85 PathProgramCache]: Analyzing trace with hash 928708300, now seen corresponding path program 2 times [2022-04-08 12:35:15,812 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:35:15,813 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1183028881] [2022-04-08 12:35:15,813 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:35:15,813 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:35:15,888 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:35:15,889 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1982148605] [2022-04-08 12:35:15,889 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:35:15,889 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:35:15,889 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:35:15,892 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-08 12:35:15,893 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-08 12:35:15,966 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-08 12:35:15,967 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:35:15,968 INFO L263 TraceCheckSpWp]: Trace formula consists of 80 conjuncts, 1 conjunts are in the unsatisfiable core [2022-04-08 12:35:15,976 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:35:15,978 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:35:16,067 INFO L272 TraceCheckUtils]: 0: Hoare triple {40#true} call ULTIMATE.init(); {40#true} is VALID [2022-04-08 12:35:16,067 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#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; {40#true} is VALID [2022-04-08 12:35:16,068 INFO L290 TraceCheckUtils]: 2: Hoare triple {40#true} assume true; {40#true} is VALID [2022-04-08 12:35:16,068 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40#true} {40#true} #102#return; {40#true} is VALID [2022-04-08 12:35:16,068 INFO L272 TraceCheckUtils]: 4: Hoare triple {40#true} call #t~ret9 := main(); {40#true} is VALID [2022-04-08 12:35:16,069 INFO L290 TraceCheckUtils]: 5: Hoare triple {40#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; {40#true} is VALID [2022-04-08 12:35:16,069 INFO L272 TraceCheckUtils]: 6: Hoare triple {40#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {40#true} is VALID [2022-04-08 12:35:16,069 INFO L290 TraceCheckUtils]: 7: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-08 12:35:16,069 INFO L290 TraceCheckUtils]: 8: Hoare triple {40#true} assume 0 == ~cond;assume false; {40#true} is VALID [2022-04-08 12:35:16,069 INFO L290 TraceCheckUtils]: 9: Hoare triple {40#true} assume true; {40#true} is VALID [2022-04-08 12:35:16,069 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {40#true} {40#true} #90#return; {40#true} is VALID [2022-04-08 12:35:16,070 INFO L272 TraceCheckUtils]: 11: Hoare triple {40#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)); {40#true} is VALID [2022-04-08 12:35:16,070 INFO L290 TraceCheckUtils]: 12: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-08 12:35:16,071 INFO L290 TraceCheckUtils]: 13: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-08 12:35:16,071 INFO L290 TraceCheckUtils]: 14: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-08 12:35:16,071 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {41#false} {40#true} #92#return; {41#false} is VALID [2022-04-08 12:35:16,071 INFO L290 TraceCheckUtils]: 16: Hoare triple {41#false} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {41#false} is VALID [2022-04-08 12:35:16,071 INFO L290 TraceCheckUtils]: 17: Hoare triple {41#false} assume !true; {41#false} is VALID [2022-04-08 12:35:16,072 INFO L272 TraceCheckUtils]: 18: Hoare triple {41#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)); {41#false} is VALID [2022-04-08 12:35:16,073 INFO L290 TraceCheckUtils]: 19: Hoare triple {41#false} ~cond := #in~cond; {41#false} is VALID [2022-04-08 12:35:16,073 INFO L290 TraceCheckUtils]: 20: Hoare triple {41#false} assume 0 == ~cond; {41#false} is VALID [2022-04-08 12:35:16,073 INFO L290 TraceCheckUtils]: 21: Hoare triple {41#false} assume !false; {41#false} is VALID [2022-04-08 12:35:16,074 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-08 12:35:16,074 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 12:35:16,074 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:35:16,074 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1183028881] [2022-04-08 12:35:16,074 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:35:16,075 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1982148605] [2022-04-08 12:35:16,075 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1982148605] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:35:16,075 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:35:16,075 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-04-08 12:35:16,077 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:35:16,078 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1302586196] [2022-04-08 12:35:16,078 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1302586196] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:35:16,078 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:35:16,078 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-04-08 12:35:16,078 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1908041695] [2022-04-08 12:35:16,079 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:35:16,083 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-08 12:35:16,084 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:35:16,086 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-08 12:35:16,107 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-08 12:35:16,108 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-04-08 12:35:16,108 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:35:16,132 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-04-08 12:35:16,132 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-04-08 12:35:16,135 INFO L87 Difference]: Start difference. First operand has 37 states, 23 states have (on average 1.5217391304347827) internal successors, (35), 24 states have internal predecessors, (35), 8 states have call successors, (8), 4 states have call predecessors, (8), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) 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-08 12:35:16,206 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:35:16,206 INFO L93 Difference]: Finished difference Result 67 states and 100 transitions. [2022-04-08 12:35:16,207 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-04-08 12:35:16,207 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-08 12:35:16,207 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:35:16,208 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-08 12:35:16,216 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 100 transitions. [2022-04-08 12:35:16,216 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-08 12:35:16,219 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 100 transitions. [2022-04-08 12:35:16,220 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 2 states and 100 transitions. [2022-04-08 12:35:16,314 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 100 edges. 100 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:35:16,325 INFO L225 Difference]: With dead ends: 67 [2022-04-08 12:35:16,326 INFO L226 Difference]: Without dead ends: 32 [2022-04-08 12:35:16,328 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-08 12:35:16,332 INFO L913 BasicCegarLoop]: 46 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, 46 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-08 12:35:16,334 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 12:35:16,345 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2022-04-08 12:35:16,360 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 32. [2022-04-08 12:35:16,360 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:35:16,361 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand has 32 states, 20 states have (on average 1.35) internal successors, (27), 21 states have internal predecessors, (27), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 12:35:16,362 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand has 32 states, 20 states have (on average 1.35) internal successors, (27), 21 states have internal predecessors, (27), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 12:35:16,363 INFO L87 Difference]: Start difference. First operand 32 states. Second operand has 32 states, 20 states have (on average 1.35) internal successors, (27), 21 states have internal predecessors, (27), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 12:35:16,369 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:35:16,370 INFO L93 Difference]: Finished difference Result 32 states and 41 transitions. [2022-04-08 12:35:16,370 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 41 transitions. [2022-04-08 12:35:16,371 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:35:16,374 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:35:16,375 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 20 states have (on average 1.35) internal successors, (27), 21 states have internal predecessors, (27), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 32 states. [2022-04-08 12:35:16,381 INFO L87 Difference]: Start difference. First operand has 32 states, 20 states have (on average 1.35) internal successors, (27), 21 states have internal predecessors, (27), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 32 states. [2022-04-08 12:35:16,386 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:35:16,386 INFO L93 Difference]: Finished difference Result 32 states and 41 transitions. [2022-04-08 12:35:16,386 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 41 transitions. [2022-04-08 12:35:16,387 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:35:16,387 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:35:16,388 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:35:16,388 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:35:16,388 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 20 states have (on average 1.35) internal successors, (27), 21 states have internal predecessors, (27), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 12:35:16,392 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 41 transitions. [2022-04-08 12:35:16,393 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 41 transitions. Word has length 22 [2022-04-08 12:35:16,393 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:35:16,394 INFO L478 AbstractCegarLoop]: Abstraction has 32 states and 41 transitions. [2022-04-08 12:35:16,394 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-08 12:35:16,394 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 32 states and 41 transitions. [2022-04-08 12:35:16,431 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-08 12:35:16,432 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 41 transitions. [2022-04-08 12:35:16,432 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-08 12:35:16,432 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:35:16,433 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-08 12:35:16,452 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-08 12:35:16,642 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-08 12:35:16,643 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:35:16,643 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:35:16,643 INFO L85 PathProgramCache]: Analyzing trace with hash -155606603, now seen corresponding path program 1 times [2022-04-08 12:35:16,644 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:35:16,644 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1235409870] [2022-04-08 12:35:16,644 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:35:16,644 INFO L85 PathProgramCache]: Analyzing trace with hash -155606603, now seen corresponding path program 2 times [2022-04-08 12:35:16,645 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:35:16,645 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1076972959] [2022-04-08 12:35:16,645 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:35:16,645 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:35:16,659 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:35:16,659 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [375822615] [2022-04-08 12:35:16,659 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:35:16,659 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:35:16,659 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:35:16,661 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-08 12:35:16,662 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-08 12:35:16,703 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-08 12:35:16,704 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:35:16,704 INFO L263 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-08 12:35:16,712 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:35:16,713 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:35:16,836 INFO L272 TraceCheckUtils]: 0: Hoare triple {369#true} call ULTIMATE.init(); {369#true} is VALID [2022-04-08 12:35:16,837 INFO L290 TraceCheckUtils]: 1: Hoare triple {369#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; {377#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:16,837 INFO L290 TraceCheckUtils]: 2: Hoare triple {377#(<= ~counter~0 0)} assume true; {377#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:16,838 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {377#(<= ~counter~0 0)} {369#true} #102#return; {377#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:16,838 INFO L272 TraceCheckUtils]: 4: Hoare triple {377#(<= ~counter~0 0)} call #t~ret9 := main(); {377#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:16,838 INFO L290 TraceCheckUtils]: 5: Hoare triple {377#(<= ~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; {377#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:16,839 INFO L272 TraceCheckUtils]: 6: Hoare triple {377#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {377#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:16,839 INFO L290 TraceCheckUtils]: 7: Hoare triple {377#(<= ~counter~0 0)} ~cond := #in~cond; {377#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:16,840 INFO L290 TraceCheckUtils]: 8: Hoare triple {377#(<= ~counter~0 0)} assume !(0 == ~cond); {377#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:16,840 INFO L290 TraceCheckUtils]: 9: Hoare triple {377#(<= ~counter~0 0)} assume true; {377#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:16,841 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {377#(<= ~counter~0 0)} {377#(<= ~counter~0 0)} #90#return; {377#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:16,841 INFO L272 TraceCheckUtils]: 11: Hoare triple {377#(<= ~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)); {377#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:16,842 INFO L290 TraceCheckUtils]: 12: Hoare triple {377#(<= ~counter~0 0)} ~cond := #in~cond; {377#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:16,842 INFO L290 TraceCheckUtils]: 13: Hoare triple {377#(<= ~counter~0 0)} assume !(0 == ~cond); {377#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:16,843 INFO L290 TraceCheckUtils]: 14: Hoare triple {377#(<= ~counter~0 0)} assume true; {377#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:16,843 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {377#(<= ~counter~0 0)} {377#(<= ~counter~0 0)} #92#return; {377#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:16,843 INFO L290 TraceCheckUtils]: 16: Hoare triple {377#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {377#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:16,844 INFO L290 TraceCheckUtils]: 17: Hoare triple {377#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {426#(<= |main_#t~post6| 0)} is VALID [2022-04-08 12:35:16,845 INFO L290 TraceCheckUtils]: 18: Hoare triple {426#(<= |main_#t~post6| 0)} assume !(#t~post6 < 10);havoc #t~post6; {370#false} is VALID [2022-04-08 12:35:16,845 INFO L272 TraceCheckUtils]: 19: Hoare triple {370#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)); {370#false} is VALID [2022-04-08 12:35:16,845 INFO L290 TraceCheckUtils]: 20: Hoare triple {370#false} ~cond := #in~cond; {370#false} is VALID [2022-04-08 12:35:16,845 INFO L290 TraceCheckUtils]: 21: Hoare triple {370#false} assume 0 == ~cond; {370#false} is VALID [2022-04-08 12:35:16,845 INFO L290 TraceCheckUtils]: 22: Hoare triple {370#false} assume !false; {370#false} is VALID [2022-04-08 12:35:16,845 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-08 12:35:16,845 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 12:35:16,846 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:35:16,846 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1076972959] [2022-04-08 12:35:16,846 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:35:16,846 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [375822615] [2022-04-08 12:35:16,846 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [375822615] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:35:16,846 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:35:16,846 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 12:35:16,847 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:35:16,847 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1235409870] [2022-04-08 12:35:16,847 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1235409870] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:35:16,847 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:35:16,847 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 12:35:16,847 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1600197473] [2022-04-08 12:35:16,847 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:35:16,848 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-08 12:35:16,848 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:35:16,848 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-08 12:35:16,864 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-08 12:35:16,864 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-08 12:35:16,865 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:35:16,865 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-08 12:35:16,865 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-08 12:35:16,865 INFO L87 Difference]: Start difference. First operand 32 states and 41 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-08 12:35:16,954 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:35:16,954 INFO L93 Difference]: Finished difference Result 41 states and 50 transitions. [2022-04-08 12:35:16,954 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-08 12:35:16,955 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-08 12:35:16,955 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:35:16,956 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-08 12:35:16,960 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 50 transitions. [2022-04-08 12:35:16,961 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-08 12:35:16,962 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 50 transitions. [2022-04-08 12:35:16,962 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 50 transitions. [2022-04-08 12:35:16,993 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:35:16,994 INFO L225 Difference]: With dead ends: 41 [2022-04-08 12:35:16,994 INFO L226 Difference]: Without dead ends: 34 [2022-04-08 12:35:16,994 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-08 12:35:16,995 INFO L913 BasicCegarLoop]: 39 mSDtfsCounter, 0 mSDsluCounter, 62 mSDsCounter, 0 mSdLazyCounter, 9 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 101 SdHoareTripleChecker+Invalid, 9 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 9 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 12:35:16,995 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 101 Invalid, 9 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 9 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 12:35:16,996 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-08 12:35:17,006 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 34. [2022-04-08 12:35:17,006 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:35:17,007 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand has 34 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 12:35:17,007 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand has 34 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 12:35:17,007 INFO L87 Difference]: Start difference. First operand 34 states. Second operand has 34 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 12:35:17,009 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:35:17,009 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-08 12:35:17,009 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-08 12:35:17,009 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:35:17,009 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:35:17,010 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 34 states. [2022-04-08 12:35:17,010 INFO L87 Difference]: Start difference. First operand has 34 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 34 states. [2022-04-08 12:35:17,011 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:35:17,011 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-08 12:35:17,011 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-08 12:35:17,012 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:35:17,012 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:35:17,012 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:35:17,012 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:35:17,012 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-08 12:35:17,013 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 43 transitions. [2022-04-08 12:35:17,014 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 43 transitions. Word has length 23 [2022-04-08 12:35:17,014 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:35:17,014 INFO L478 AbstractCegarLoop]: Abstraction has 34 states and 43 transitions. [2022-04-08 12:35:17,014 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-08 12:35:17,014 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 34 states and 43 transitions. [2022-04-08 12:35:17,052 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:35:17,052 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-08 12:35:17,052 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-08 12:35:17,052 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:35:17,053 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-08 12:35:17,071 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-08 12:35:17,270 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-08 12:35:17,271 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:35:17,271 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:35:17,272 INFO L85 PathProgramCache]: Analyzing trace with hash -153938307, now seen corresponding path program 1 times [2022-04-08 12:35:17,272 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:35:17,272 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [246734168] [2022-04-08 12:35:17,272 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:35:17,272 INFO L85 PathProgramCache]: Analyzing trace with hash -153938307, now seen corresponding path program 2 times [2022-04-08 12:35:17,272 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:35:17,273 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [738645944] [2022-04-08 12:35:17,273 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:35:17,273 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:35:17,285 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:35:17,285 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1042335667] [2022-04-08 12:35:17,285 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:35:17,286 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:35:17,286 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:35:17,286 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-08 12:35:17,291 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-08 12:35:17,336 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-08 12:35:17,336 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:35:17,337 INFO L263 TraceCheckSpWp]: Trace formula consists of 84 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-08 12:35:17,346 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:35:17,346 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:35:18,845 INFO L272 TraceCheckUtils]: 0: Hoare triple {659#true} call ULTIMATE.init(); {659#true} is VALID [2022-04-08 12:35:18,845 INFO L290 TraceCheckUtils]: 1: Hoare triple {659#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; {659#true} is VALID [2022-04-08 12:35:18,846 INFO L290 TraceCheckUtils]: 2: Hoare triple {659#true} assume true; {659#true} is VALID [2022-04-08 12:35:18,846 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {659#true} {659#true} #102#return; {659#true} is VALID [2022-04-08 12:35:18,846 INFO L272 TraceCheckUtils]: 4: Hoare triple {659#true} call #t~ret9 := main(); {659#true} is VALID [2022-04-08 12:35:18,846 INFO L290 TraceCheckUtils]: 5: Hoare triple {659#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; {659#true} is VALID [2022-04-08 12:35:18,846 INFO L272 TraceCheckUtils]: 6: Hoare triple {659#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {659#true} is VALID [2022-04-08 12:35:18,846 INFO L290 TraceCheckUtils]: 7: Hoare triple {659#true} ~cond := #in~cond; {659#true} is VALID [2022-04-08 12:35:18,846 INFO L290 TraceCheckUtils]: 8: Hoare triple {659#true} assume !(0 == ~cond); {659#true} is VALID [2022-04-08 12:35:18,846 INFO L290 TraceCheckUtils]: 9: Hoare triple {659#true} assume true; {659#true} is VALID [2022-04-08 12:35:18,847 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {659#true} {659#true} #90#return; {659#true} is VALID [2022-04-08 12:35:18,847 INFO L272 TraceCheckUtils]: 11: Hoare triple {659#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)); {659#true} is VALID [2022-04-08 12:35:18,847 INFO L290 TraceCheckUtils]: 12: Hoare triple {659#true} ~cond := #in~cond; {659#true} is VALID [2022-04-08 12:35:18,847 INFO L290 TraceCheckUtils]: 13: Hoare triple {659#true} assume !(0 == ~cond); {659#true} is VALID [2022-04-08 12:35:18,847 INFO L290 TraceCheckUtils]: 14: Hoare triple {659#true} assume true; {659#true} is VALID [2022-04-08 12:35:18,847 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {659#true} {659#true} #92#return; {659#true} is VALID [2022-04-08 12:35:20,852 WARN L290 TraceCheckUtils]: 16: Hoare triple {659#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {712#(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 UNKNOWN [2022-04-08 12:35:20,853 INFO L290 TraceCheckUtils]: 17: Hoare triple {712#(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; {712#(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-08 12:35:20,853 INFO L290 TraceCheckUtils]: 18: Hoare triple {712#(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; {712#(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-08 12:35:22,632 INFO L272 TraceCheckUtils]: 19: Hoare triple {712#(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)); {722#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:35:22,633 INFO L290 TraceCheckUtils]: 20: Hoare triple {722#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {726#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:35:22,633 INFO L290 TraceCheckUtils]: 21: Hoare triple {726#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {660#false} is VALID [2022-04-08 12:35:22,634 INFO L290 TraceCheckUtils]: 22: Hoare triple {660#false} assume !false; {660#false} is VALID [2022-04-08 12:35:22,634 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-08 12:35:22,634 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 12:35:22,634 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:35:22,634 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [738645944] [2022-04-08 12:35:22,634 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:35:22,634 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1042335667] [2022-04-08 12:35:22,634 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1042335667] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:35:22,634 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:35:22,635 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 12:35:22,635 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:35:22,635 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [246734168] [2022-04-08 12:35:22,635 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [246734168] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:35:22,635 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:35:22,635 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 12:35:22,635 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1922313368] [2022-04-08 12:35:22,635 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:35:22,635 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-08 12:35:22,636 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:35:22,636 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-08 12:35:25,682 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 19 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 12:35:25,682 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 12:35:25,682 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:35:25,683 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 12:35:25,683 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 12:35:25,683 INFO L87 Difference]: Start difference. First operand 34 states and 43 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-08 12:35:30,156 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-08 12:35:32,381 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.19s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 12:35:35,111 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.30s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 12:35:41,070 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-08 12:35:41,093 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:35:41,094 INFO L93 Difference]: Finished difference Result 53 states and 70 transitions. [2022-04-08 12:35:41,094 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 12:35:41,094 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-08 12:35:41,094 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:35:41,094 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-08 12:35:41,097 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 68 transitions. [2022-04-08 12:35:41,097 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-08 12:35:41,098 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 68 transitions. [2022-04-08 12:35:41,098 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 68 transitions. [2022-04-08 12:35:43,336 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:35:43,338 INFO L225 Difference]: With dead ends: 53 [2022-04-08 12:35:43,338 INFO L226 Difference]: Without dead ends: 51 [2022-04-08 12:35:43,338 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-08 12:35:43,339 INFO L913 BasicCegarLoop]: 34 mSDtfsCounter, 16 mSDsluCounter, 85 mSDsCounter, 0 mSdLazyCounter, 53 mSolverCounterSat, 1 mSolverCounterUnsat, 2 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 7.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 19 SdHoareTripleChecker+Valid, 119 SdHoareTripleChecker+Invalid, 56 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 53 IncrementalHoareTripleChecker+Invalid, 2 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 7.6s IncrementalHoareTripleChecker+Time [2022-04-08 12:35:43,339 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [19 Valid, 119 Invalid, 56 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 53 Invalid, 2 Unknown, 0 Unchecked, 7.6s Time] [2022-04-08 12:35:43,340 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states. [2022-04-08 12:35:43,363 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 50. [2022-04-08 12:35:43,363 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:35:43,363 INFO L82 GeneralOperation]: Start isEquivalent. First operand 51 states. Second operand has 50 states, 34 states have (on average 1.3823529411764706) internal successors, (47), 35 states have internal predecessors, (47), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 12:35:43,364 INFO L74 IsIncluded]: Start isIncluded. First operand 51 states. Second operand has 50 states, 34 states have (on average 1.3823529411764706) internal successors, (47), 35 states have internal predecessors, (47), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 12:35:43,364 INFO L87 Difference]: Start difference. First operand 51 states. Second operand has 50 states, 34 states have (on average 1.3823529411764706) internal successors, (47), 35 states have internal predecessors, (47), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 12:35:43,369 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:35:43,369 INFO L93 Difference]: Finished difference Result 51 states and 68 transitions. [2022-04-08 12:35:43,369 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 68 transitions. [2022-04-08 12:35:43,370 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:35:43,370 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:35:43,370 INFO L74 IsIncluded]: Start isIncluded. First operand has 50 states, 34 states have (on average 1.3823529411764706) internal successors, (47), 35 states have internal predecessors, (47), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 51 states. [2022-04-08 12:35:43,371 INFO L87 Difference]: Start difference. First operand has 50 states, 34 states have (on average 1.3823529411764706) internal successors, (47), 35 states have internal predecessors, (47), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 51 states. [2022-04-08 12:35:43,373 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:35:43,373 INFO L93 Difference]: Finished difference Result 51 states and 68 transitions. [2022-04-08 12:35:43,373 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 68 transitions. [2022-04-08 12:35:43,373 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:35:43,373 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:35:43,373 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:35:43,374 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:35:43,374 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 50 states, 34 states have (on average 1.3823529411764706) internal successors, (47), 35 states have internal predecessors, (47), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 12:35:43,375 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 67 transitions. [2022-04-08 12:35:43,376 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 67 transitions. Word has length 23 [2022-04-08 12:35:43,376 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:35:43,376 INFO L478 AbstractCegarLoop]: Abstraction has 50 states and 67 transitions. [2022-04-08 12:35:43,376 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-08 12:35:43,376 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 50 states and 67 transitions. [2022-04-08 12:35:47,215 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 66 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 12:35:47,215 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 67 transitions. [2022-04-08 12:35:47,216 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-08 12:35:47,216 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:35:47,216 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-08 12:35:47,252 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-08 12:35:47,416 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-08 12:35:47,417 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:35:47,417 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:35:47,417 INFO L85 PathProgramCache]: Analyzing trace with hash -1676885497, now seen corresponding path program 1 times [2022-04-08 12:35:47,417 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:35:47,417 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2069355312] [2022-04-08 12:35:47,418 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:35:47,418 INFO L85 PathProgramCache]: Analyzing trace with hash -1676885497, now seen corresponding path program 2 times [2022-04-08 12:35:47,418 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:35:47,418 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1227317117] [2022-04-08 12:35:47,418 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:35:47,418 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:35:47,429 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:35:47,429 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [234585593] [2022-04-08 12:35:47,430 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:35:47,430 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:35:47,430 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:35:47,433 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-08 12:35:47,434 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-08 12:35:47,473 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:35:47,473 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:35:47,474 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-08 12:35:47,489 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:35:47,490 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:35:47,638 INFO L272 TraceCheckUtils]: 0: Hoare triple {1042#true} call ULTIMATE.init(); {1042#true} is VALID [2022-04-08 12:35:47,638 INFO L290 TraceCheckUtils]: 1: Hoare triple {1042#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; {1042#true} is VALID [2022-04-08 12:35:47,638 INFO L290 TraceCheckUtils]: 2: Hoare triple {1042#true} assume true; {1042#true} is VALID [2022-04-08 12:35:47,638 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1042#true} {1042#true} #102#return; {1042#true} is VALID [2022-04-08 12:35:47,638 INFO L272 TraceCheckUtils]: 4: Hoare triple {1042#true} call #t~ret9 := main(); {1042#true} is VALID [2022-04-08 12:35:47,638 INFO L290 TraceCheckUtils]: 5: Hoare triple {1042#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; {1042#true} is VALID [2022-04-08 12:35:47,638 INFO L272 TraceCheckUtils]: 6: Hoare triple {1042#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {1042#true} is VALID [2022-04-08 12:35:47,638 INFO L290 TraceCheckUtils]: 7: Hoare triple {1042#true} ~cond := #in~cond; {1042#true} is VALID [2022-04-08 12:35:47,639 INFO L290 TraceCheckUtils]: 8: Hoare triple {1042#true} assume !(0 == ~cond); {1042#true} is VALID [2022-04-08 12:35:47,639 INFO L290 TraceCheckUtils]: 9: Hoare triple {1042#true} assume true; {1042#true} is VALID [2022-04-08 12:35:47,639 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1042#true} {1042#true} #90#return; {1042#true} is VALID [2022-04-08 12:35:47,639 INFO L272 TraceCheckUtils]: 11: Hoare triple {1042#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)); {1042#true} is VALID [2022-04-08 12:35:47,639 INFO L290 TraceCheckUtils]: 12: Hoare triple {1042#true} ~cond := #in~cond; {1042#true} is VALID [2022-04-08 12:35:47,639 INFO L290 TraceCheckUtils]: 13: Hoare triple {1042#true} assume !(0 == ~cond); {1042#true} is VALID [2022-04-08 12:35:47,639 INFO L290 TraceCheckUtils]: 14: Hoare triple {1042#true} assume true; {1042#true} is VALID [2022-04-08 12:35:47,639 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1042#true} {1042#true} #92#return; {1042#true} is VALID [2022-04-08 12:35:47,639 INFO L290 TraceCheckUtils]: 16: Hoare triple {1042#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {1042#true} is VALID [2022-04-08 12:35:47,640 INFO L290 TraceCheckUtils]: 17: Hoare triple {1042#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1042#true} is VALID [2022-04-08 12:35:47,640 INFO L290 TraceCheckUtils]: 18: Hoare triple {1042#true} assume !!(#t~post6 < 10);havoc #t~post6; {1042#true} is VALID [2022-04-08 12:35:47,640 INFO L272 TraceCheckUtils]: 19: Hoare triple {1042#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)); {1042#true} is VALID [2022-04-08 12:35:47,640 INFO L290 TraceCheckUtils]: 20: Hoare triple {1042#true} ~cond := #in~cond; {1107#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:35:47,640 INFO L290 TraceCheckUtils]: 21: Hoare triple {1107#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {1111#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:35:47,641 INFO L290 TraceCheckUtils]: 22: Hoare triple {1111#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1111#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:35:47,641 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1111#(not (= |__VERIFIER_assert_#in~cond| 0))} {1042#true} #94#return; {1118#(= (+ (* 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-08 12:35:47,642 INFO L290 TraceCheckUtils]: 24: Hoare triple {1118#(= (+ (* 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); {1122#(= (+ (* 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-08 12:35:47,643 INFO L272 TraceCheckUtils]: 25: Hoare triple {1122#(= (+ (* 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)); {1126#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:35:47,643 INFO L290 TraceCheckUtils]: 26: Hoare triple {1126#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1130#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:35:47,643 INFO L290 TraceCheckUtils]: 27: Hoare triple {1130#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1043#false} is VALID [2022-04-08 12:35:47,643 INFO L290 TraceCheckUtils]: 28: Hoare triple {1043#false} assume !false; {1043#false} is VALID [2022-04-08 12:35:47,644 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-08 12:35:47,644 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:35:48,004 INFO L290 TraceCheckUtils]: 28: Hoare triple {1043#false} assume !false; {1043#false} is VALID [2022-04-08 12:35:48,005 INFO L290 TraceCheckUtils]: 27: Hoare triple {1130#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1043#false} is VALID [2022-04-08 12:35:48,005 INFO L290 TraceCheckUtils]: 26: Hoare triple {1126#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1130#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:35:48,006 INFO L272 TraceCheckUtils]: 25: Hoare triple {1122#(= (+ (* 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)); {1126#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:35:48,006 INFO L290 TraceCheckUtils]: 24: Hoare triple {1149#(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); {1122#(= (+ (* 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-08 12:35:48,007 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1111#(not (= |__VERIFIER_assert_#in~cond| 0))} {1042#true} #94#return; {1149#(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-08 12:35:48,009 INFO L290 TraceCheckUtils]: 22: Hoare triple {1111#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1111#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:35:48,014 INFO L290 TraceCheckUtils]: 21: Hoare triple {1162#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {1111#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:35:48,014 INFO L290 TraceCheckUtils]: 20: Hoare triple {1042#true} ~cond := #in~cond; {1162#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 12:35:48,014 INFO L272 TraceCheckUtils]: 19: Hoare triple {1042#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)); {1042#true} is VALID [2022-04-08 12:35:48,014 INFO L290 TraceCheckUtils]: 18: Hoare triple {1042#true} assume !!(#t~post6 < 10);havoc #t~post6; {1042#true} is VALID [2022-04-08 12:35:48,014 INFO L290 TraceCheckUtils]: 17: Hoare triple {1042#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1042#true} is VALID [2022-04-08 12:35:48,015 INFO L290 TraceCheckUtils]: 16: Hoare triple {1042#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {1042#true} is VALID [2022-04-08 12:35:48,015 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1042#true} {1042#true} #92#return; {1042#true} is VALID [2022-04-08 12:35:48,015 INFO L290 TraceCheckUtils]: 14: Hoare triple {1042#true} assume true; {1042#true} is VALID [2022-04-08 12:35:48,015 INFO L290 TraceCheckUtils]: 13: Hoare triple {1042#true} assume !(0 == ~cond); {1042#true} is VALID [2022-04-08 12:35:48,015 INFO L290 TraceCheckUtils]: 12: Hoare triple {1042#true} ~cond := #in~cond; {1042#true} is VALID [2022-04-08 12:35:48,015 INFO L272 TraceCheckUtils]: 11: Hoare triple {1042#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)); {1042#true} is VALID [2022-04-08 12:35:48,015 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1042#true} {1042#true} #90#return; {1042#true} is VALID [2022-04-08 12:35:48,015 INFO L290 TraceCheckUtils]: 9: Hoare triple {1042#true} assume true; {1042#true} is VALID [2022-04-08 12:35:48,015 INFO L290 TraceCheckUtils]: 8: Hoare triple {1042#true} assume !(0 == ~cond); {1042#true} is VALID [2022-04-08 12:35:48,016 INFO L290 TraceCheckUtils]: 7: Hoare triple {1042#true} ~cond := #in~cond; {1042#true} is VALID [2022-04-08 12:35:48,016 INFO L272 TraceCheckUtils]: 6: Hoare triple {1042#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {1042#true} is VALID [2022-04-08 12:35:48,016 INFO L290 TraceCheckUtils]: 5: Hoare triple {1042#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; {1042#true} is VALID [2022-04-08 12:35:48,016 INFO L272 TraceCheckUtils]: 4: Hoare triple {1042#true} call #t~ret9 := main(); {1042#true} is VALID [2022-04-08 12:35:48,016 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1042#true} {1042#true} #102#return; {1042#true} is VALID [2022-04-08 12:35:48,016 INFO L290 TraceCheckUtils]: 2: Hoare triple {1042#true} assume true; {1042#true} is VALID [2022-04-08 12:35:48,016 INFO L290 TraceCheckUtils]: 1: Hoare triple {1042#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; {1042#true} is VALID [2022-04-08 12:35:48,016 INFO L272 TraceCheckUtils]: 0: Hoare triple {1042#true} call ULTIMATE.init(); {1042#true} is VALID [2022-04-08 12:35:48,016 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-08 12:35:48,017 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:35:48,020 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1227317117] [2022-04-08 12:35:48,020 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:35:48,020 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [234585593] [2022-04-08 12:35:48,020 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [234585593] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:35:48,020 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:35:48,020 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-08 12:35:48,020 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:35:48,021 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2069355312] [2022-04-08 12:35:48,021 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2069355312] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:35:48,021 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:35:48,021 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 12:35:48,021 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [547312916] [2022-04-08 12:35:48,021 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:35:48,021 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-08 12:35:48,021 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:35:48,021 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-08 12:35:48,037 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-08 12:35:48,038 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 12:35:48,038 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:35:48,038 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 12:35:48,038 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=67, Unknown=0, NotChecked=0, Total=90 [2022-04-08 12:35:48,038 INFO L87 Difference]: Start difference. First operand 50 states and 67 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-08 12:35:48,357 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:35:48,357 INFO L93 Difference]: Finished difference Result 57 states and 73 transitions. [2022-04-08 12:35:48,357 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 12:35:48,357 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-08 12:35:48,357 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:35:48,358 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-08 12:35:48,359 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-08 12:35:48,359 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-08 12:35:48,360 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-08 12:35:48,360 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 47 transitions. [2022-04-08 12:35:48,398 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-08 12:35:48,399 INFO L225 Difference]: With dead ends: 57 [2022-04-08 12:35:48,399 INFO L226 Difference]: Without dead ends: 52 [2022-04-08 12:35:48,400 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-08 12:35:48,400 INFO L913 BasicCegarLoop]: 29 mSDtfsCounter, 25 mSDsluCounter, 106 mSDsCounter, 0 mSdLazyCounter, 83 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 27 SdHoareTripleChecker+Valid, 135 SdHoareTripleChecker+Invalid, 93 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 83 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 12:35:48,400 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [27 Valid, 135 Invalid, 93 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 83 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 12:35:48,401 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 52 states. [2022-04-08 12:35:48,418 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 52 to 52. [2022-04-08 12:35:48,418 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:35:48,419 INFO L82 GeneralOperation]: Start isEquivalent. First operand 52 states. Second operand has 52 states, 36 states have (on average 1.2777777777777777) internal successors, (46), 36 states have internal predecessors, (46), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 12:35:48,419 INFO L74 IsIncluded]: Start isIncluded. First operand 52 states. Second operand has 52 states, 36 states have (on average 1.2777777777777777) internal successors, (46), 36 states have internal predecessors, (46), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 12:35:48,419 INFO L87 Difference]: Start difference. First operand 52 states. Second operand has 52 states, 36 states have (on average 1.2777777777777777) internal successors, (46), 36 states have internal predecessors, (46), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 12:35:48,421 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:35:48,421 INFO L93 Difference]: Finished difference Result 52 states and 66 transitions. [2022-04-08 12:35:48,421 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 66 transitions. [2022-04-08 12:35:48,421 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:35:48,421 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:35:48,422 INFO L74 IsIncluded]: Start isIncluded. First operand has 52 states, 36 states have (on average 1.2777777777777777) internal successors, (46), 36 states have internal predecessors, (46), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 52 states. [2022-04-08 12:35:48,422 INFO L87 Difference]: Start difference. First operand has 52 states, 36 states have (on average 1.2777777777777777) internal successors, (46), 36 states have internal predecessors, (46), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 52 states. [2022-04-08 12:35:48,424 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:35:48,424 INFO L93 Difference]: Finished difference Result 52 states and 66 transitions. [2022-04-08 12:35:48,424 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 66 transitions. [2022-04-08 12:35:48,424 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:35:48,424 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:35:48,424 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:35:48,424 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:35:48,424 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 52 states, 36 states have (on average 1.2777777777777777) internal successors, (46), 36 states have internal predecessors, (46), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 12:35:48,426 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 52 states to 52 states and 66 transitions. [2022-04-08 12:35:48,426 INFO L78 Accepts]: Start accepts. Automaton has 52 states and 66 transitions. Word has length 29 [2022-04-08 12:35:48,426 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:35:48,426 INFO L478 AbstractCegarLoop]: Abstraction has 52 states and 66 transitions. [2022-04-08 12:35:48,426 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-08 12:35:48,426 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 52 states and 66 transitions. [2022-04-08 12:35:49,933 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:35:49,933 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 66 transitions. [2022-04-08 12:35:49,933 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-04-08 12:35:49,933 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:35:49,934 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, 1, 1, 1] [2022-04-08 12:35:49,950 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Ended with exit code 0 [2022-04-08 12:35:50,139 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-08 12:35:50,139 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:35:50,139 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:35:50,139 INFO L85 PathProgramCache]: Analyzing trace with hash 1154059858, now seen corresponding path program 1 times [2022-04-08 12:35:50,139 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:35:50,139 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [459994631] [2022-04-08 12:35:50,140 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:35:50,140 INFO L85 PathProgramCache]: Analyzing trace with hash 1154059858, now seen corresponding path program 2 times [2022-04-08 12:35:50,140 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:35:50,140 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1509556955] [2022-04-08 12:35:50,140 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:35:50,140 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:35:50,159 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:35:50,160 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [388249225] [2022-04-08 12:35:50,160 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:35:50,160 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:35:50,160 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:35:50,161 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-08 12:35:50,180 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-08 12:35:50,323 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:35:50,323 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:35:50,324 INFO L263 TraceCheckSpWp]: Trace formula consists of 118 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 12:35:50,335 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:35:50,335 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:35:50,476 INFO L272 TraceCheckUtils]: 0: Hoare triple {1553#true} call ULTIMATE.init(); {1553#true} is VALID [2022-04-08 12:35:50,477 INFO L290 TraceCheckUtils]: 1: Hoare triple {1553#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; {1561#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:50,477 INFO L290 TraceCheckUtils]: 2: Hoare triple {1561#(<= ~counter~0 0)} assume true; {1561#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:50,491 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1561#(<= ~counter~0 0)} {1553#true} #102#return; {1561#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:50,492 INFO L272 TraceCheckUtils]: 4: Hoare triple {1561#(<= ~counter~0 0)} call #t~ret9 := main(); {1561#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:50,492 INFO L290 TraceCheckUtils]: 5: Hoare triple {1561#(<= ~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; {1561#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:50,492 INFO L272 TraceCheckUtils]: 6: Hoare triple {1561#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {1561#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:50,493 INFO L290 TraceCheckUtils]: 7: Hoare triple {1561#(<= ~counter~0 0)} ~cond := #in~cond; {1561#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:50,493 INFO L290 TraceCheckUtils]: 8: Hoare triple {1561#(<= ~counter~0 0)} assume !(0 == ~cond); {1561#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:50,493 INFO L290 TraceCheckUtils]: 9: Hoare triple {1561#(<= ~counter~0 0)} assume true; {1561#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:50,494 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1561#(<= ~counter~0 0)} {1561#(<= ~counter~0 0)} #90#return; {1561#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:50,494 INFO L272 TraceCheckUtils]: 11: Hoare triple {1561#(<= ~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)); {1561#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:50,495 INFO L290 TraceCheckUtils]: 12: Hoare triple {1561#(<= ~counter~0 0)} ~cond := #in~cond; {1561#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:50,495 INFO L290 TraceCheckUtils]: 13: Hoare triple {1561#(<= ~counter~0 0)} assume !(0 == ~cond); {1561#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:50,495 INFO L290 TraceCheckUtils]: 14: Hoare triple {1561#(<= ~counter~0 0)} assume true; {1561#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:50,496 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1561#(<= ~counter~0 0)} {1561#(<= ~counter~0 0)} #92#return; {1561#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:50,496 INFO L290 TraceCheckUtils]: 16: Hoare triple {1561#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {1561#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:50,496 INFO L290 TraceCheckUtils]: 17: Hoare triple {1561#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1610#(<= ~counter~0 1)} is VALID [2022-04-08 12:35:50,497 INFO L290 TraceCheckUtils]: 18: Hoare triple {1610#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {1610#(<= ~counter~0 1)} is VALID [2022-04-08 12:35:50,497 INFO L272 TraceCheckUtils]: 19: Hoare triple {1610#(<= ~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)); {1610#(<= ~counter~0 1)} is VALID [2022-04-08 12:35:50,498 INFO L290 TraceCheckUtils]: 20: Hoare triple {1610#(<= ~counter~0 1)} ~cond := #in~cond; {1610#(<= ~counter~0 1)} is VALID [2022-04-08 12:35:50,498 INFO L290 TraceCheckUtils]: 21: Hoare triple {1610#(<= ~counter~0 1)} assume !(0 == ~cond); {1610#(<= ~counter~0 1)} is VALID [2022-04-08 12:35:50,498 INFO L290 TraceCheckUtils]: 22: Hoare triple {1610#(<= ~counter~0 1)} assume true; {1610#(<= ~counter~0 1)} is VALID [2022-04-08 12:35:50,499 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1610#(<= ~counter~0 1)} {1610#(<= ~counter~0 1)} #94#return; {1610#(<= ~counter~0 1)} is VALID [2022-04-08 12:35:50,499 INFO L290 TraceCheckUtils]: 24: Hoare triple {1610#(<= ~counter~0 1)} assume !!(0 != ~r~0); {1610#(<= ~counter~0 1)} is VALID [2022-04-08 12:35:50,500 INFO L290 TraceCheckUtils]: 25: Hoare triple {1610#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1635#(<= |main_#t~post7| 1)} is VALID [2022-04-08 12:35:50,500 INFO L290 TraceCheckUtils]: 26: Hoare triple {1635#(<= |main_#t~post7| 1)} assume !(#t~post7 < 10);havoc #t~post7; {1554#false} is VALID [2022-04-08 12:35:50,500 INFO L290 TraceCheckUtils]: 27: Hoare triple {1554#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {1554#false} is VALID [2022-04-08 12:35:50,500 INFO L290 TraceCheckUtils]: 28: Hoare triple {1554#false} assume !(#t~post8 < 10);havoc #t~post8; {1554#false} is VALID [2022-04-08 12:35:50,500 INFO L290 TraceCheckUtils]: 29: Hoare triple {1554#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1554#false} is VALID [2022-04-08 12:35:50,500 INFO L290 TraceCheckUtils]: 30: Hoare triple {1554#false} assume !(#t~post6 < 10);havoc #t~post6; {1554#false} is VALID [2022-04-08 12:35:50,500 INFO L272 TraceCheckUtils]: 31: Hoare triple {1554#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)); {1554#false} is VALID [2022-04-08 12:35:50,500 INFO L290 TraceCheckUtils]: 32: Hoare triple {1554#false} ~cond := #in~cond; {1554#false} is VALID [2022-04-08 12:35:50,501 INFO L290 TraceCheckUtils]: 33: Hoare triple {1554#false} assume 0 == ~cond; {1554#false} is VALID [2022-04-08 12:35:50,501 INFO L290 TraceCheckUtils]: 34: Hoare triple {1554#false} assume !false; {1554#false} is VALID [2022-04-08 12:35:50,501 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 12:35:50,501 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 12:35:50,501 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:35:50,501 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1509556955] [2022-04-08 12:35:50,501 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:35:50,501 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [388249225] [2022-04-08 12:35:50,501 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [388249225] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:35:50,501 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:35:50,501 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 12:35:50,502 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:35:50,502 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [459994631] [2022-04-08 12:35:50,502 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [459994631] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:35:50,502 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:35:50,502 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 12:35:50,502 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [734998000] [2022-04-08 12:35:50,502 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:35:50,503 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 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 35 [2022-04-08 12:35:50,504 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:35:50,504 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 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-08 12:35:50,524 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:35:50,524 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 12:35:50,524 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:35:50,524 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 12:35:50,524 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-08 12:35:50,525 INFO L87 Difference]: Start difference. First operand 52 states and 66 transitions. Second operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 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-08 12:35:50,631 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:35:50,631 INFO L93 Difference]: Finished difference Result 97 states and 125 transitions. [2022-04-08 12:35:50,631 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 12:35:50,632 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 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 35 [2022-04-08 12:35:50,632 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:35:50,632 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 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-08 12:35:50,634 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 77 transitions. [2022-04-08 12:35:50,634 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 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-08 12:35:50,636 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 77 transitions. [2022-04-08 12:35:50,637 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 77 transitions. [2022-04-08 12:35:50,685 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:35:50,688 INFO L225 Difference]: With dead ends: 97 [2022-04-08 12:35:50,688 INFO L226 Difference]: Without dead ends: 60 [2022-04-08 12:35:50,688 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 34 GetRequests, 31 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-08 12:35:50,690 INFO L913 BasicCegarLoop]: 38 mSDtfsCounter, 6 mSDsluCounter, 65 mSDsCounter, 0 mSdLazyCounter, 14 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 103 SdHoareTripleChecker+Invalid, 21 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 14 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 12:35:50,690 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [6 Valid, 103 Invalid, 21 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 14 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 12:35:50,691 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 60 states. [2022-04-08 12:35:50,723 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 60 to 60. [2022-04-08 12:35:50,723 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:35:50,724 INFO L82 GeneralOperation]: Start isEquivalent. First operand 60 states. Second operand has 60 states, 42 states have (on average 1.2380952380952381) internal successors, (52), 42 states have internal predecessors, (52), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 12:35:50,724 INFO L74 IsIncluded]: Start isIncluded. First operand 60 states. Second operand has 60 states, 42 states have (on average 1.2380952380952381) internal successors, (52), 42 states have internal predecessors, (52), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 12:35:50,724 INFO L87 Difference]: Start difference. First operand 60 states. Second operand has 60 states, 42 states have (on average 1.2380952380952381) internal successors, (52), 42 states have internal predecessors, (52), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 12:35:50,727 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:35:50,727 INFO L93 Difference]: Finished difference Result 60 states and 74 transitions. [2022-04-08 12:35:50,727 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 74 transitions. [2022-04-08 12:35:50,727 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:35:50,727 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:35:50,727 INFO L74 IsIncluded]: Start isIncluded. First operand has 60 states, 42 states have (on average 1.2380952380952381) internal successors, (52), 42 states have internal predecessors, (52), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 60 states. [2022-04-08 12:35:50,728 INFO L87 Difference]: Start difference. First operand has 60 states, 42 states have (on average 1.2380952380952381) internal successors, (52), 42 states have internal predecessors, (52), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 60 states. [2022-04-08 12:35:50,730 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:35:50,730 INFO L93 Difference]: Finished difference Result 60 states and 74 transitions. [2022-04-08 12:35:50,730 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 74 transitions. [2022-04-08 12:35:50,731 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:35:50,731 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:35:50,731 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:35:50,731 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:35:50,731 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 60 states, 42 states have (on average 1.2380952380952381) internal successors, (52), 42 states have internal predecessors, (52), 12 states have call successors, (12), 7 states have call predecessors, (12), 5 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-08 12:35:50,733 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 60 states to 60 states and 74 transitions. [2022-04-08 12:35:50,733 INFO L78 Accepts]: Start accepts. Automaton has 60 states and 74 transitions. Word has length 35 [2022-04-08 12:35:50,733 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:35:50,733 INFO L478 AbstractCegarLoop]: Abstraction has 60 states and 74 transitions. [2022-04-08 12:35:50,733 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 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-08 12:35:50,734 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 60 states and 74 transitions. [2022-04-08 12:35:52,814 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 73 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 12:35:52,815 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 74 transitions. [2022-04-08 12:35:52,815 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-08 12:35:52,815 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:35:52,815 INFO L499 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 12:35:52,822 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-08 12:35:53,020 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-08 12:35:53,020 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:35:53,020 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:35:53,020 INFO L85 PathProgramCache]: Analyzing trace with hash -174895632, now seen corresponding path program 1 times [2022-04-08 12:35:53,020 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:35:53,020 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [521384502] [2022-04-08 12:35:53,021 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:35:53,021 INFO L85 PathProgramCache]: Analyzing trace with hash -174895632, now seen corresponding path program 2 times [2022-04-08 12:35:53,021 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:35:53,021 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [515903613] [2022-04-08 12:35:53,021 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:35:53,021 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:35:53,037 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:35:53,037 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [928381617] [2022-04-08 12:35:53,037 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:35:53,037 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:35:53,037 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:35:53,043 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-08 12:35:53,044 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-08 12:35:53,082 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:35:53,082 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:35:53,083 INFO L263 TraceCheckSpWp]: Trace formula consists of 128 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 12:35:53,093 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:35:53,094 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:35:53,258 INFO L272 TraceCheckUtils]: 0: Hoare triple {2096#true} call ULTIMATE.init(); {2096#true} is VALID [2022-04-08 12:35:53,259 INFO L290 TraceCheckUtils]: 1: Hoare triple {2096#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; {2104#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:53,259 INFO L290 TraceCheckUtils]: 2: Hoare triple {2104#(<= ~counter~0 0)} assume true; {2104#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:53,259 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2104#(<= ~counter~0 0)} {2096#true} #102#return; {2104#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:53,260 INFO L272 TraceCheckUtils]: 4: Hoare triple {2104#(<= ~counter~0 0)} call #t~ret9 := main(); {2104#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:53,260 INFO L290 TraceCheckUtils]: 5: Hoare triple {2104#(<= ~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; {2104#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:53,260 INFO L272 TraceCheckUtils]: 6: Hoare triple {2104#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {2104#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:53,261 INFO L290 TraceCheckUtils]: 7: Hoare triple {2104#(<= ~counter~0 0)} ~cond := #in~cond; {2104#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:53,261 INFO L290 TraceCheckUtils]: 8: Hoare triple {2104#(<= ~counter~0 0)} assume !(0 == ~cond); {2104#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:53,261 INFO L290 TraceCheckUtils]: 9: Hoare triple {2104#(<= ~counter~0 0)} assume true; {2104#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:53,261 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2104#(<= ~counter~0 0)} {2104#(<= ~counter~0 0)} #90#return; {2104#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:53,262 INFO L272 TraceCheckUtils]: 11: Hoare triple {2104#(<= ~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)); {2104#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:53,262 INFO L290 TraceCheckUtils]: 12: Hoare triple {2104#(<= ~counter~0 0)} ~cond := #in~cond; {2104#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:53,262 INFO L290 TraceCheckUtils]: 13: Hoare triple {2104#(<= ~counter~0 0)} assume !(0 == ~cond); {2104#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:53,263 INFO L290 TraceCheckUtils]: 14: Hoare triple {2104#(<= ~counter~0 0)} assume true; {2104#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:53,263 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2104#(<= ~counter~0 0)} {2104#(<= ~counter~0 0)} #92#return; {2104#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:53,263 INFO L290 TraceCheckUtils]: 16: Hoare triple {2104#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {2104#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:53,264 INFO L290 TraceCheckUtils]: 17: Hoare triple {2104#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2153#(<= ~counter~0 1)} is VALID [2022-04-08 12:35:53,265 INFO L290 TraceCheckUtils]: 18: Hoare triple {2153#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {2153#(<= ~counter~0 1)} is VALID [2022-04-08 12:35:53,266 INFO L272 TraceCheckUtils]: 19: Hoare triple {2153#(<= ~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)); {2153#(<= ~counter~0 1)} is VALID [2022-04-08 12:35:53,266 INFO L290 TraceCheckUtils]: 20: Hoare triple {2153#(<= ~counter~0 1)} ~cond := #in~cond; {2153#(<= ~counter~0 1)} is VALID [2022-04-08 12:35:53,266 INFO L290 TraceCheckUtils]: 21: Hoare triple {2153#(<= ~counter~0 1)} assume !(0 == ~cond); {2153#(<= ~counter~0 1)} is VALID [2022-04-08 12:35:53,266 INFO L290 TraceCheckUtils]: 22: Hoare triple {2153#(<= ~counter~0 1)} assume true; {2153#(<= ~counter~0 1)} is VALID [2022-04-08 12:35:53,269 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2153#(<= ~counter~0 1)} {2153#(<= ~counter~0 1)} #94#return; {2153#(<= ~counter~0 1)} is VALID [2022-04-08 12:35:53,269 INFO L290 TraceCheckUtils]: 24: Hoare triple {2153#(<= ~counter~0 1)} assume !!(0 != ~r~0); {2153#(<= ~counter~0 1)} is VALID [2022-04-08 12:35:53,270 INFO L290 TraceCheckUtils]: 25: Hoare triple {2153#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2178#(<= ~counter~0 2)} is VALID [2022-04-08 12:35:53,270 INFO L290 TraceCheckUtils]: 26: Hoare triple {2178#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {2178#(<= ~counter~0 2)} is VALID [2022-04-08 12:35:53,271 INFO L272 TraceCheckUtils]: 27: Hoare triple {2178#(<= ~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)); {2178#(<= ~counter~0 2)} is VALID [2022-04-08 12:35:53,272 INFO L290 TraceCheckUtils]: 28: Hoare triple {2178#(<= ~counter~0 2)} ~cond := #in~cond; {2178#(<= ~counter~0 2)} is VALID [2022-04-08 12:35:53,272 INFO L290 TraceCheckUtils]: 29: Hoare triple {2178#(<= ~counter~0 2)} assume !(0 == ~cond); {2178#(<= ~counter~0 2)} is VALID [2022-04-08 12:35:53,272 INFO L290 TraceCheckUtils]: 30: Hoare triple {2178#(<= ~counter~0 2)} assume true; {2178#(<= ~counter~0 2)} is VALID [2022-04-08 12:35:53,273 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2178#(<= ~counter~0 2)} {2178#(<= ~counter~0 2)} #96#return; {2178#(<= ~counter~0 2)} is VALID [2022-04-08 12:35:53,273 INFO L290 TraceCheckUtils]: 32: Hoare triple {2178#(<= ~counter~0 2)} assume !(~r~0 > 0); {2178#(<= ~counter~0 2)} is VALID [2022-04-08 12:35:53,273 INFO L290 TraceCheckUtils]: 33: Hoare triple {2178#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {2203#(<= |main_#t~post8| 2)} is VALID [2022-04-08 12:35:53,274 INFO L290 TraceCheckUtils]: 34: Hoare triple {2203#(<= |main_#t~post8| 2)} assume !(#t~post8 < 10);havoc #t~post8; {2097#false} is VALID [2022-04-08 12:35:53,274 INFO L290 TraceCheckUtils]: 35: Hoare triple {2097#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2097#false} is VALID [2022-04-08 12:35:53,274 INFO L290 TraceCheckUtils]: 36: Hoare triple {2097#false} assume !(#t~post6 < 10);havoc #t~post6; {2097#false} is VALID [2022-04-08 12:35:53,277 INFO L272 TraceCheckUtils]: 37: Hoare triple {2097#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)); {2097#false} is VALID [2022-04-08 12:35:53,277 INFO L290 TraceCheckUtils]: 38: Hoare triple {2097#false} ~cond := #in~cond; {2097#false} is VALID [2022-04-08 12:35:53,277 INFO L290 TraceCheckUtils]: 39: Hoare triple {2097#false} assume 0 == ~cond; {2097#false} is VALID [2022-04-08 12:35:53,277 INFO L290 TraceCheckUtils]: 40: Hoare triple {2097#false} assume !false; {2097#false} is VALID [2022-04-08 12:35:53,277 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 6 proven. 4 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 12:35:53,277 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:35:53,487 INFO L290 TraceCheckUtils]: 40: Hoare triple {2097#false} assume !false; {2097#false} is VALID [2022-04-08 12:35:53,487 INFO L290 TraceCheckUtils]: 39: Hoare triple {2097#false} assume 0 == ~cond; {2097#false} is VALID [2022-04-08 12:35:53,487 INFO L290 TraceCheckUtils]: 38: Hoare triple {2097#false} ~cond := #in~cond; {2097#false} is VALID [2022-04-08 12:35:53,487 INFO L272 TraceCheckUtils]: 37: Hoare triple {2097#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)); {2097#false} is VALID [2022-04-08 12:35:53,487 INFO L290 TraceCheckUtils]: 36: Hoare triple {2097#false} assume !(#t~post6 < 10);havoc #t~post6; {2097#false} is VALID [2022-04-08 12:35:53,487 INFO L290 TraceCheckUtils]: 35: Hoare triple {2097#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2097#false} is VALID [2022-04-08 12:35:53,488 INFO L290 TraceCheckUtils]: 34: Hoare triple {2243#(< |main_#t~post8| 10)} assume !(#t~post8 < 10);havoc #t~post8; {2097#false} is VALID [2022-04-08 12:35:53,488 INFO L290 TraceCheckUtils]: 33: Hoare triple {2247#(< ~counter~0 10)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {2243#(< |main_#t~post8| 10)} is VALID [2022-04-08 12:35:53,488 INFO L290 TraceCheckUtils]: 32: Hoare triple {2247#(< ~counter~0 10)} assume !(~r~0 > 0); {2247#(< ~counter~0 10)} is VALID [2022-04-08 12:35:53,489 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2096#true} {2247#(< ~counter~0 10)} #96#return; {2247#(< ~counter~0 10)} is VALID [2022-04-08 12:35:53,489 INFO L290 TraceCheckUtils]: 30: Hoare triple {2096#true} assume true; {2096#true} is VALID [2022-04-08 12:35:53,489 INFO L290 TraceCheckUtils]: 29: Hoare triple {2096#true} assume !(0 == ~cond); {2096#true} is VALID [2022-04-08 12:35:53,489 INFO L290 TraceCheckUtils]: 28: Hoare triple {2096#true} ~cond := #in~cond; {2096#true} is VALID [2022-04-08 12:35:53,489 INFO L272 TraceCheckUtils]: 27: Hoare triple {2247#(< ~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)); {2096#true} is VALID [2022-04-08 12:35:53,489 INFO L290 TraceCheckUtils]: 26: Hoare triple {2247#(< ~counter~0 10)} assume !!(#t~post7 < 10);havoc #t~post7; {2247#(< ~counter~0 10)} is VALID [2022-04-08 12:35:53,490 INFO L290 TraceCheckUtils]: 25: Hoare triple {2272#(< ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2247#(< ~counter~0 10)} is VALID [2022-04-08 12:35:53,490 INFO L290 TraceCheckUtils]: 24: Hoare triple {2272#(< ~counter~0 9)} assume !!(0 != ~r~0); {2272#(< ~counter~0 9)} is VALID [2022-04-08 12:35:53,491 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2096#true} {2272#(< ~counter~0 9)} #94#return; {2272#(< ~counter~0 9)} is VALID [2022-04-08 12:35:53,491 INFO L290 TraceCheckUtils]: 22: Hoare triple {2096#true} assume true; {2096#true} is VALID [2022-04-08 12:35:53,491 INFO L290 TraceCheckUtils]: 21: Hoare triple {2096#true} assume !(0 == ~cond); {2096#true} is VALID [2022-04-08 12:35:53,491 INFO L290 TraceCheckUtils]: 20: Hoare triple {2096#true} ~cond := #in~cond; {2096#true} is VALID [2022-04-08 12:35:53,491 INFO L272 TraceCheckUtils]: 19: Hoare triple {2272#(< ~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)); {2096#true} is VALID [2022-04-08 12:35:53,491 INFO L290 TraceCheckUtils]: 18: Hoare triple {2272#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {2272#(< ~counter~0 9)} is VALID [2022-04-08 12:35:53,492 INFO L290 TraceCheckUtils]: 17: Hoare triple {2297#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2272#(< ~counter~0 9)} is VALID [2022-04-08 12:35:53,492 INFO L290 TraceCheckUtils]: 16: Hoare triple {2297#(< ~counter~0 8)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {2297#(< ~counter~0 8)} is VALID [2022-04-08 12:35:53,492 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2096#true} {2297#(< ~counter~0 8)} #92#return; {2297#(< ~counter~0 8)} is VALID [2022-04-08 12:35:53,493 INFO L290 TraceCheckUtils]: 14: Hoare triple {2096#true} assume true; {2096#true} is VALID [2022-04-08 12:35:53,493 INFO L290 TraceCheckUtils]: 13: Hoare triple {2096#true} assume !(0 == ~cond); {2096#true} is VALID [2022-04-08 12:35:53,493 INFO L290 TraceCheckUtils]: 12: Hoare triple {2096#true} ~cond := #in~cond; {2096#true} is VALID [2022-04-08 12:35:53,493 INFO L272 TraceCheckUtils]: 11: Hoare triple {2297#(< ~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)); {2096#true} is VALID [2022-04-08 12:35:53,493 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2096#true} {2297#(< ~counter~0 8)} #90#return; {2297#(< ~counter~0 8)} is VALID [2022-04-08 12:35:53,493 INFO L290 TraceCheckUtils]: 9: Hoare triple {2096#true} assume true; {2096#true} is VALID [2022-04-08 12:35:53,493 INFO L290 TraceCheckUtils]: 8: Hoare triple {2096#true} assume !(0 == ~cond); {2096#true} is VALID [2022-04-08 12:35:53,494 INFO L290 TraceCheckUtils]: 7: Hoare triple {2096#true} ~cond := #in~cond; {2096#true} is VALID [2022-04-08 12:35:53,494 INFO L272 TraceCheckUtils]: 6: Hoare triple {2297#(< ~counter~0 8)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {2096#true} is VALID [2022-04-08 12:35:53,494 INFO L290 TraceCheckUtils]: 5: Hoare triple {2297#(< ~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; {2297#(< ~counter~0 8)} is VALID [2022-04-08 12:35:53,494 INFO L272 TraceCheckUtils]: 4: Hoare triple {2297#(< ~counter~0 8)} call #t~ret9 := main(); {2297#(< ~counter~0 8)} is VALID [2022-04-08 12:35:53,494 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2297#(< ~counter~0 8)} {2096#true} #102#return; {2297#(< ~counter~0 8)} is VALID [2022-04-08 12:35:53,495 INFO L290 TraceCheckUtils]: 2: Hoare triple {2297#(< ~counter~0 8)} assume true; {2297#(< ~counter~0 8)} is VALID [2022-04-08 12:35:53,495 INFO L290 TraceCheckUtils]: 1: Hoare triple {2096#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; {2297#(< ~counter~0 8)} is VALID [2022-04-08 12:35:53,495 INFO L272 TraceCheckUtils]: 0: Hoare triple {2096#true} call ULTIMATE.init(); {2096#true} is VALID [2022-04-08 12:35:53,495 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-04-08 12:35:53,496 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:35:53,496 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [515903613] [2022-04-08 12:35:53,496 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:35:53,496 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [928381617] [2022-04-08 12:35:53,496 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [928381617] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-08 12:35:53,496 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-08 12:35:53,496 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [6] total 10 [2022-04-08 12:35:53,496 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:35:53,496 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [521384502] [2022-04-08 12:35:53,496 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [521384502] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:35:53,496 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:35:53,496 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 12:35:53,496 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [868104842] [2022-04-08 12:35:53,496 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:35:53,497 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.8333333333333335) internal successors, (23), 6 states have internal predecessors, (23), 5 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) Word has length 41 [2022-04-08 12:35:53,497 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:35:53,497 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 3.8333333333333335) internal successors, (23), 6 states have internal predecessors, (23), 5 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-08 12:35:53,544 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-08 12:35:53,545 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 12:35:53,545 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:35:53,545 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 12:35:53,545 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-08 12:35:53,545 INFO L87 Difference]: Start difference. First operand 60 states and 74 transitions. Second operand has 6 states, 6 states have (on average 3.8333333333333335) internal successors, (23), 6 states have internal predecessors, (23), 5 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-08 12:35:53,704 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:35:53,705 INFO L93 Difference]: Finished difference Result 106 states and 135 transitions. [2022-04-08 12:35:53,705 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 12:35:53,705 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.8333333333333335) internal successors, (23), 6 states have internal predecessors, (23), 5 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) Word has length 41 [2022-04-08 12:35:53,705 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:35:53,705 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.8333333333333335) internal successors, (23), 6 states have internal predecessors, (23), 5 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-08 12:35:53,707 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 87 transitions. [2022-04-08 12:35:53,707 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.8333333333333335) internal successors, (23), 6 states have internal predecessors, (23), 5 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-08 12:35:53,708 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 87 transitions. [2022-04-08 12:35:53,709 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 87 transitions. [2022-04-08 12:35:53,764 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 87 edges. 87 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:35:53,766 INFO L225 Difference]: With dead ends: 106 [2022-04-08 12:35:53,767 INFO L226 Difference]: Without dead ends: 69 [2022-04-08 12:35:53,767 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 81 GetRequests, 73 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-08 12:35:53,768 INFO L913 BasicCegarLoop]: 38 mSDtfsCounter, 31 mSDsluCounter, 71 mSDsCounter, 0 mSdLazyCounter, 19 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 109 SdHoareTripleChecker+Invalid, 36 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 19 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 12:35:53,768 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [31 Valid, 109 Invalid, 36 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 19 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 12:35:53,769 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 69 states. [2022-04-08 12:35:53,811 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 69 to 68. [2022-04-08 12:35:53,811 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:35:53,811 INFO L82 GeneralOperation]: Start isEquivalent. First operand 69 states. Second operand has 68 states, 48 states have (on average 1.2291666666666667) internal successors, (59), 48 states have internal predecessors, (59), 13 states have call successors, (13), 8 states have call predecessors, (13), 6 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 12:35:53,812 INFO L74 IsIncluded]: Start isIncluded. First operand 69 states. Second operand has 68 states, 48 states have (on average 1.2291666666666667) internal successors, (59), 48 states have internal predecessors, (59), 13 states have call successors, (13), 8 states have call predecessors, (13), 6 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 12:35:53,812 INFO L87 Difference]: Start difference. First operand 69 states. Second operand has 68 states, 48 states have (on average 1.2291666666666667) internal successors, (59), 48 states have internal predecessors, (59), 13 states have call successors, (13), 8 states have call predecessors, (13), 6 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 12:35:53,814 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:35:53,815 INFO L93 Difference]: Finished difference Result 69 states and 84 transitions. [2022-04-08 12:35:53,815 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 84 transitions. [2022-04-08 12:35:53,815 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:35:53,815 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:35:53,815 INFO L74 IsIncluded]: Start isIncluded. First operand has 68 states, 48 states have (on average 1.2291666666666667) internal successors, (59), 48 states have internal predecessors, (59), 13 states have call successors, (13), 8 states have call predecessors, (13), 6 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 69 states. [2022-04-08 12:35:53,816 INFO L87 Difference]: Start difference. First operand has 68 states, 48 states have (on average 1.2291666666666667) internal successors, (59), 48 states have internal predecessors, (59), 13 states have call successors, (13), 8 states have call predecessors, (13), 6 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 69 states. [2022-04-08 12:35:53,818 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:35:53,818 INFO L93 Difference]: Finished difference Result 69 states and 84 transitions. [2022-04-08 12:35:53,818 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 84 transitions. [2022-04-08 12:35:53,818 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:35:53,818 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:35:53,819 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:35:53,819 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:35:53,819 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 68 states, 48 states have (on average 1.2291666666666667) internal successors, (59), 48 states have internal predecessors, (59), 13 states have call successors, (13), 8 states have call predecessors, (13), 6 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 12:35:53,821 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 83 transitions. [2022-04-08 12:35:53,821 INFO L78 Accepts]: Start accepts. Automaton has 68 states and 83 transitions. Word has length 41 [2022-04-08 12:35:53,822 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:35:53,822 INFO L478 AbstractCegarLoop]: Abstraction has 68 states and 83 transitions. [2022-04-08 12:35:53,822 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 3.8333333333333335) internal successors, (23), 6 states have internal predecessors, (23), 5 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-08 12:35:53,822 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 68 states and 83 transitions. [2022-04-08 12:35:54,308 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-08 12:35:54,308 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 83 transitions. [2022-04-08 12:35:54,308 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-08 12:35:54,308 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:35:54,309 INFO L499 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 12:35:54,325 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-08 12:35:54,509 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-08 12:35:54,509 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:35:54,510 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:35:54,510 INFO L85 PathProgramCache]: Analyzing trace with hash -1292932747, now seen corresponding path program 1 times [2022-04-08 12:35:54,510 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:35:54,510 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1114473093] [2022-04-08 12:35:54,510 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:35:54,510 INFO L85 PathProgramCache]: Analyzing trace with hash -1292932747, now seen corresponding path program 2 times [2022-04-08 12:35:54,510 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:35:54,510 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [337557514] [2022-04-08 12:35:54,510 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:35:54,510 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:35:54,523 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:35:54,523 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1486934675] [2022-04-08 12:35:54,523 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:35:54,524 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:35:54,524 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:35:54,537 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-08 12:35:54,538 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-08 12:35:54,575 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:35:54,576 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:35:54,576 INFO L263 TraceCheckSpWp]: Trace formula consists of 137 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 12:35:54,589 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:35:54,591 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:35:54,754 INFO L272 TraceCheckUtils]: 0: Hoare triple {2837#true} call ULTIMATE.init(); {2837#true} is VALID [2022-04-08 12:35:54,755 INFO L290 TraceCheckUtils]: 1: Hoare triple {2837#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; {2845#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:54,756 INFO L290 TraceCheckUtils]: 2: Hoare triple {2845#(<= ~counter~0 0)} assume true; {2845#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:54,757 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2845#(<= ~counter~0 0)} {2837#true} #102#return; {2845#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:54,758 INFO L272 TraceCheckUtils]: 4: Hoare triple {2845#(<= ~counter~0 0)} call #t~ret9 := main(); {2845#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:54,759 INFO L290 TraceCheckUtils]: 5: Hoare triple {2845#(<= ~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; {2845#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:54,760 INFO L272 TraceCheckUtils]: 6: Hoare triple {2845#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {2845#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:54,760 INFO L290 TraceCheckUtils]: 7: Hoare triple {2845#(<= ~counter~0 0)} ~cond := #in~cond; {2845#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:54,760 INFO L290 TraceCheckUtils]: 8: Hoare triple {2845#(<= ~counter~0 0)} assume !(0 == ~cond); {2845#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:54,761 INFO L290 TraceCheckUtils]: 9: Hoare triple {2845#(<= ~counter~0 0)} assume true; {2845#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:54,763 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2845#(<= ~counter~0 0)} {2845#(<= ~counter~0 0)} #90#return; {2845#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:54,764 INFO L272 TraceCheckUtils]: 11: Hoare triple {2845#(<= ~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)); {2845#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:54,766 INFO L290 TraceCheckUtils]: 12: Hoare triple {2845#(<= ~counter~0 0)} ~cond := #in~cond; {2845#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:54,767 INFO L290 TraceCheckUtils]: 13: Hoare triple {2845#(<= ~counter~0 0)} assume !(0 == ~cond); {2845#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:54,767 INFO L290 TraceCheckUtils]: 14: Hoare triple {2845#(<= ~counter~0 0)} assume true; {2845#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:54,767 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2845#(<= ~counter~0 0)} {2845#(<= ~counter~0 0)} #92#return; {2845#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:54,768 INFO L290 TraceCheckUtils]: 16: Hoare triple {2845#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {2845#(<= ~counter~0 0)} is VALID [2022-04-08 12:35:54,768 INFO L290 TraceCheckUtils]: 17: Hoare triple {2845#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2894#(<= ~counter~0 1)} is VALID [2022-04-08 12:35:54,769 INFO L290 TraceCheckUtils]: 18: Hoare triple {2894#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {2894#(<= ~counter~0 1)} is VALID [2022-04-08 12:35:54,769 INFO L272 TraceCheckUtils]: 19: Hoare triple {2894#(<= ~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)); {2894#(<= ~counter~0 1)} is VALID [2022-04-08 12:35:54,770 INFO L290 TraceCheckUtils]: 20: Hoare triple {2894#(<= ~counter~0 1)} ~cond := #in~cond; {2894#(<= ~counter~0 1)} is VALID [2022-04-08 12:35:54,770 INFO L290 TraceCheckUtils]: 21: Hoare triple {2894#(<= ~counter~0 1)} assume !(0 == ~cond); {2894#(<= ~counter~0 1)} is VALID [2022-04-08 12:35:54,770 INFO L290 TraceCheckUtils]: 22: Hoare triple {2894#(<= ~counter~0 1)} assume true; {2894#(<= ~counter~0 1)} is VALID [2022-04-08 12:35:54,771 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2894#(<= ~counter~0 1)} {2894#(<= ~counter~0 1)} #94#return; {2894#(<= ~counter~0 1)} is VALID [2022-04-08 12:35:54,771 INFO L290 TraceCheckUtils]: 24: Hoare triple {2894#(<= ~counter~0 1)} assume !!(0 != ~r~0); {2894#(<= ~counter~0 1)} is VALID [2022-04-08 12:35:54,771 INFO L290 TraceCheckUtils]: 25: Hoare triple {2894#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2919#(<= ~counter~0 2)} is VALID [2022-04-08 12:35:54,772 INFO L290 TraceCheckUtils]: 26: Hoare triple {2919#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {2919#(<= ~counter~0 2)} is VALID [2022-04-08 12:35:54,772 INFO L272 TraceCheckUtils]: 27: Hoare triple {2919#(<= ~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)); {2919#(<= ~counter~0 2)} is VALID [2022-04-08 12:35:54,772 INFO L290 TraceCheckUtils]: 28: Hoare triple {2919#(<= ~counter~0 2)} ~cond := #in~cond; {2919#(<= ~counter~0 2)} is VALID [2022-04-08 12:35:54,773 INFO L290 TraceCheckUtils]: 29: Hoare triple {2919#(<= ~counter~0 2)} assume !(0 == ~cond); {2919#(<= ~counter~0 2)} is VALID [2022-04-08 12:35:54,773 INFO L290 TraceCheckUtils]: 30: Hoare triple {2919#(<= ~counter~0 2)} assume true; {2919#(<= ~counter~0 2)} is VALID [2022-04-08 12:35:54,774 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2919#(<= ~counter~0 2)} {2919#(<= ~counter~0 2)} #96#return; {2919#(<= ~counter~0 2)} is VALID [2022-04-08 12:35:54,774 INFO L290 TraceCheckUtils]: 32: Hoare triple {2919#(<= ~counter~0 2)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2919#(<= ~counter~0 2)} is VALID [2022-04-08 12:35:54,774 INFO L290 TraceCheckUtils]: 33: Hoare triple {2919#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2944#(<= |main_#t~post7| 2)} is VALID [2022-04-08 12:35:54,775 INFO L290 TraceCheckUtils]: 34: Hoare triple {2944#(<= |main_#t~post7| 2)} assume !(#t~post7 < 10);havoc #t~post7; {2838#false} is VALID [2022-04-08 12:35:54,775 INFO L290 TraceCheckUtils]: 35: Hoare triple {2838#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {2838#false} is VALID [2022-04-08 12:35:54,775 INFO L290 TraceCheckUtils]: 36: Hoare triple {2838#false} assume !(#t~post8 < 10);havoc #t~post8; {2838#false} is VALID [2022-04-08 12:35:54,775 INFO L290 TraceCheckUtils]: 37: Hoare triple {2838#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2838#false} is VALID [2022-04-08 12:35:54,775 INFO L290 TraceCheckUtils]: 38: Hoare triple {2838#false} assume !(#t~post6 < 10);havoc #t~post6; {2838#false} is VALID [2022-04-08 12:35:54,775 INFO L272 TraceCheckUtils]: 39: Hoare triple {2838#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)); {2838#false} is VALID [2022-04-08 12:35:54,775 INFO L290 TraceCheckUtils]: 40: Hoare triple {2838#false} ~cond := #in~cond; {2838#false} is VALID [2022-04-08 12:35:54,775 INFO L290 TraceCheckUtils]: 41: Hoare triple {2838#false} assume 0 == ~cond; {2838#false} is VALID [2022-04-08 12:35:54,776 INFO L290 TraceCheckUtils]: 42: Hoare triple {2838#false} assume !false; {2838#false} is VALID [2022-04-08 12:35:54,777 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 6 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 12:35:54,777 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:35:54,969 INFO L290 TraceCheckUtils]: 42: Hoare triple {2838#false} assume !false; {2838#false} is VALID [2022-04-08 12:35:54,969 INFO L290 TraceCheckUtils]: 41: Hoare triple {2838#false} assume 0 == ~cond; {2838#false} is VALID [2022-04-08 12:35:54,969 INFO L290 TraceCheckUtils]: 40: Hoare triple {2838#false} ~cond := #in~cond; {2838#false} is VALID [2022-04-08 12:35:54,969 INFO L272 TraceCheckUtils]: 39: Hoare triple {2838#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)); {2838#false} is VALID [2022-04-08 12:35:54,969 INFO L290 TraceCheckUtils]: 38: Hoare triple {2838#false} assume !(#t~post6 < 10);havoc #t~post6; {2838#false} is VALID [2022-04-08 12:35:54,970 INFO L290 TraceCheckUtils]: 37: Hoare triple {2838#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2838#false} is VALID [2022-04-08 12:35:54,970 INFO L290 TraceCheckUtils]: 36: Hoare triple {2838#false} assume !(#t~post8 < 10);havoc #t~post8; {2838#false} is VALID [2022-04-08 12:35:54,970 INFO L290 TraceCheckUtils]: 35: Hoare triple {2838#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {2838#false} is VALID [2022-04-08 12:35:54,970 INFO L290 TraceCheckUtils]: 34: Hoare triple {2996#(< |main_#t~post7| 10)} assume !(#t~post7 < 10);havoc #t~post7; {2838#false} is VALID [2022-04-08 12:35:54,970 INFO L290 TraceCheckUtils]: 33: Hoare triple {3000#(< ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2996#(< |main_#t~post7| 10)} is VALID [2022-04-08 12:35:54,971 INFO L290 TraceCheckUtils]: 32: Hoare triple {3000#(< ~counter~0 10)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3000#(< ~counter~0 10)} is VALID [2022-04-08 12:35:54,971 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2837#true} {3000#(< ~counter~0 10)} #96#return; {3000#(< ~counter~0 10)} is VALID [2022-04-08 12:35:54,972 INFO L290 TraceCheckUtils]: 30: Hoare triple {2837#true} assume true; {2837#true} is VALID [2022-04-08 12:35:54,972 INFO L290 TraceCheckUtils]: 29: Hoare triple {2837#true} assume !(0 == ~cond); {2837#true} is VALID [2022-04-08 12:35:54,972 INFO L290 TraceCheckUtils]: 28: Hoare triple {2837#true} ~cond := #in~cond; {2837#true} is VALID [2022-04-08 12:35:54,972 INFO L272 TraceCheckUtils]: 27: Hoare triple {3000#(< ~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)); {2837#true} is VALID [2022-04-08 12:35:54,972 INFO L290 TraceCheckUtils]: 26: Hoare triple {3000#(< ~counter~0 10)} assume !!(#t~post7 < 10);havoc #t~post7; {3000#(< ~counter~0 10)} is VALID [2022-04-08 12:35:54,973 INFO L290 TraceCheckUtils]: 25: Hoare triple {3025#(< ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3000#(< ~counter~0 10)} is VALID [2022-04-08 12:35:54,973 INFO L290 TraceCheckUtils]: 24: Hoare triple {3025#(< ~counter~0 9)} assume !!(0 != ~r~0); {3025#(< ~counter~0 9)} is VALID [2022-04-08 12:35:54,974 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2837#true} {3025#(< ~counter~0 9)} #94#return; {3025#(< ~counter~0 9)} is VALID [2022-04-08 12:35:54,974 INFO L290 TraceCheckUtils]: 22: Hoare triple {2837#true} assume true; {2837#true} is VALID [2022-04-08 12:35:54,974 INFO L290 TraceCheckUtils]: 21: Hoare triple {2837#true} assume !(0 == ~cond); {2837#true} is VALID [2022-04-08 12:35:54,974 INFO L290 TraceCheckUtils]: 20: Hoare triple {2837#true} ~cond := #in~cond; {2837#true} is VALID [2022-04-08 12:35:54,974 INFO L272 TraceCheckUtils]: 19: Hoare triple {3025#(< ~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)); {2837#true} is VALID [2022-04-08 12:35:54,974 INFO L290 TraceCheckUtils]: 18: Hoare triple {3025#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {3025#(< ~counter~0 9)} is VALID [2022-04-08 12:35:54,975 INFO L290 TraceCheckUtils]: 17: Hoare triple {3050#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3025#(< ~counter~0 9)} is VALID [2022-04-08 12:35:54,975 INFO L290 TraceCheckUtils]: 16: Hoare triple {3050#(< ~counter~0 8)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {3050#(< ~counter~0 8)} is VALID [2022-04-08 12:35:54,975 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2837#true} {3050#(< ~counter~0 8)} #92#return; {3050#(< ~counter~0 8)} is VALID [2022-04-08 12:35:54,976 INFO L290 TraceCheckUtils]: 14: Hoare triple {2837#true} assume true; {2837#true} is VALID [2022-04-08 12:35:54,976 INFO L290 TraceCheckUtils]: 13: Hoare triple {2837#true} assume !(0 == ~cond); {2837#true} is VALID [2022-04-08 12:35:54,976 INFO L290 TraceCheckUtils]: 12: Hoare triple {2837#true} ~cond := #in~cond; {2837#true} is VALID [2022-04-08 12:35:54,976 INFO L272 TraceCheckUtils]: 11: Hoare triple {3050#(< ~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)); {2837#true} is VALID [2022-04-08 12:35:54,977 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2837#true} {3050#(< ~counter~0 8)} #90#return; {3050#(< ~counter~0 8)} is VALID [2022-04-08 12:35:54,977 INFO L290 TraceCheckUtils]: 9: Hoare triple {2837#true} assume true; {2837#true} is VALID [2022-04-08 12:35:54,977 INFO L290 TraceCheckUtils]: 8: Hoare triple {2837#true} assume !(0 == ~cond); {2837#true} is VALID [2022-04-08 12:35:54,977 INFO L290 TraceCheckUtils]: 7: Hoare triple {2837#true} ~cond := #in~cond; {2837#true} is VALID [2022-04-08 12:35:54,977 INFO L272 TraceCheckUtils]: 6: Hoare triple {3050#(< ~counter~0 8)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {2837#true} is VALID [2022-04-08 12:35:54,977 INFO L290 TraceCheckUtils]: 5: Hoare triple {3050#(< ~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; {3050#(< ~counter~0 8)} is VALID [2022-04-08 12:35:54,978 INFO L272 TraceCheckUtils]: 4: Hoare triple {3050#(< ~counter~0 8)} call #t~ret9 := main(); {3050#(< ~counter~0 8)} is VALID [2022-04-08 12:35:54,978 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3050#(< ~counter~0 8)} {2837#true} #102#return; {3050#(< ~counter~0 8)} is VALID [2022-04-08 12:35:54,979 INFO L290 TraceCheckUtils]: 2: Hoare triple {3050#(< ~counter~0 8)} assume true; {3050#(< ~counter~0 8)} is VALID [2022-04-08 12:35:54,979 INFO L290 TraceCheckUtils]: 1: Hoare triple {2837#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; {3050#(< ~counter~0 8)} is VALID [2022-04-08 12:35:54,979 INFO L272 TraceCheckUtils]: 0: Hoare triple {2837#true} call ULTIMATE.init(); {2837#true} is VALID [2022-04-08 12:35:54,979 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 6 proven. 2 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-04-08 12:35:54,979 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:35:54,980 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [337557514] [2022-04-08 12:35:54,980 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:35:54,980 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1486934675] [2022-04-08 12:35:54,980 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1486934675] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:35:54,980 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:35:54,980 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-08 12:35:54,980 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:35:54,980 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1114473093] [2022-04-08 12:35:54,980 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1114473093] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:35:54,980 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:35:54,980 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 12:35:54,980 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1533172416] [2022-04-08 12:35:54,981 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:35:54,981 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 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 43 [2022-04-08 12:35:54,981 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:35:54,981 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 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-08 12:35:55,010 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:35:55,011 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 12:35:55,011 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:35:55,011 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 12:35:55,011 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-08 12:35:55,011 INFO L87 Difference]: Start difference. First operand 68 states and 83 transitions. Second operand has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 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-08 12:35:55,186 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:35:55,187 INFO L93 Difference]: Finished difference Result 91 states and 113 transitions. [2022-04-08 12:35:55,187 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-08 12:35:55,187 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 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 43 [2022-04-08 12:35:55,187 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:35:55,187 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 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-08 12:35:55,188 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 87 transitions. [2022-04-08 12:35:55,188 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 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-08 12:35:55,189 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 87 transitions. [2022-04-08 12:35:55,189 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 87 transitions. [2022-04-08 12:35:55,248 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 87 edges. 87 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:35:55,249 INFO L225 Difference]: With dead ends: 91 [2022-04-08 12:35:55,249 INFO L226 Difference]: Without dead ends: 70 [2022-04-08 12:35:55,249 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 86 GetRequests, 77 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=41, Invalid=69, Unknown=0, NotChecked=0, Total=110 [2022-04-08 12:35:55,250 INFO L913 BasicCegarLoop]: 38 mSDtfsCounter, 9 mSDsluCounter, 103 mSDsCounter, 0 mSdLazyCounter, 27 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 141 SdHoareTripleChecker+Invalid, 37 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 27 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 12:35:55,251 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [9 Valid, 141 Invalid, 37 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 27 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 12:35:55,251 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 70 states. [2022-04-08 12:35:55,300 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 70 to 70. [2022-04-08 12:35:55,301 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:35:55,301 INFO L82 GeneralOperation]: Start isEquivalent. First operand 70 states. Second operand has 70 states, 50 states have (on average 1.22) internal successors, (61), 50 states have internal predecessors, (61), 13 states have call successors, (13), 8 states have call predecessors, (13), 6 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 12:35:55,301 INFO L74 IsIncluded]: Start isIncluded. First operand 70 states. Second operand has 70 states, 50 states have (on average 1.22) internal successors, (61), 50 states have internal predecessors, (61), 13 states have call successors, (13), 8 states have call predecessors, (13), 6 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 12:35:55,301 INFO L87 Difference]: Start difference. First operand 70 states. Second operand has 70 states, 50 states have (on average 1.22) internal successors, (61), 50 states have internal predecessors, (61), 13 states have call successors, (13), 8 states have call predecessors, (13), 6 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 12:35:55,303 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:35:55,303 INFO L93 Difference]: Finished difference Result 70 states and 85 transitions. [2022-04-08 12:35:55,303 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 85 transitions. [2022-04-08 12:35:55,303 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:35:55,303 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:35:55,304 INFO L74 IsIncluded]: Start isIncluded. First operand has 70 states, 50 states have (on average 1.22) internal successors, (61), 50 states have internal predecessors, (61), 13 states have call successors, (13), 8 states have call predecessors, (13), 6 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 70 states. [2022-04-08 12:35:55,304 INFO L87 Difference]: Start difference. First operand has 70 states, 50 states have (on average 1.22) internal successors, (61), 50 states have internal predecessors, (61), 13 states have call successors, (13), 8 states have call predecessors, (13), 6 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 70 states. [2022-04-08 12:35:55,305 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:35:55,305 INFO L93 Difference]: Finished difference Result 70 states and 85 transitions. [2022-04-08 12:35:55,305 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 85 transitions. [2022-04-08 12:35:55,305 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:35:55,306 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:35:55,306 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:35:55,306 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:35:55,306 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 70 states, 50 states have (on average 1.22) internal successors, (61), 50 states have internal predecessors, (61), 13 states have call successors, (13), 8 states have call predecessors, (13), 6 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 12:35:55,307 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 85 transitions. [2022-04-08 12:35:55,307 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 85 transitions. Word has length 43 [2022-04-08 12:35:55,307 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:35:55,308 INFO L478 AbstractCegarLoop]: Abstraction has 70 states and 85 transitions. [2022-04-08 12:35:55,308 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 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-08 12:35:55,308 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 70 states and 85 transitions. [2022-04-08 12:35:57,387 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-08 12:35:57,388 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 85 transitions. [2022-04-08 12:35:57,388 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-08 12:35:57,388 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:35:57,388 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 12:35:57,411 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-08 12:35:57,588 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-08 12:35:57,589 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:35:57,589 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:35:57,589 INFO L85 PathProgramCache]: Analyzing trace with hash 1407897436, now seen corresponding path program 1 times [2022-04-08 12:35:57,589 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:35:57,589 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [310625390] [2022-04-08 12:35:57,590 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:35:57,590 INFO L85 PathProgramCache]: Analyzing trace with hash 1407897436, now seen corresponding path program 2 times [2022-04-08 12:35:57,590 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:35:57,590 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1990999750] [2022-04-08 12:35:57,590 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:35:57,590 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:35:57,599 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:35:57,599 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [973376583] [2022-04-08 12:35:57,599 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:35:57,599 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:35:57,599 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:35:57,600 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-08 12:35:57,601 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-08 12:35:57,637 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:35:57,637 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:35:57,637 INFO L263 TraceCheckSpWp]: Trace formula consists of 138 conjuncts, 3 conjunts are in the unsatisfiable core [2022-04-08 12:35:57,644 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:35:57,644 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:35:57,771 INFO L272 TraceCheckUtils]: 0: Hoare triple {3568#true} call ULTIMATE.init(); {3568#true} is VALID [2022-04-08 12:35:57,771 INFO L290 TraceCheckUtils]: 1: Hoare triple {3568#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; {3568#true} is VALID [2022-04-08 12:35:57,771 INFO L290 TraceCheckUtils]: 2: Hoare triple {3568#true} assume true; {3568#true} is VALID [2022-04-08 12:35:57,771 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3568#true} {3568#true} #102#return; {3568#true} is VALID [2022-04-08 12:35:57,771 INFO L272 TraceCheckUtils]: 4: Hoare triple {3568#true} call #t~ret9 := main(); {3568#true} is VALID [2022-04-08 12:35:57,771 INFO L290 TraceCheckUtils]: 5: Hoare triple {3568#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; {3568#true} is VALID [2022-04-08 12:35:57,771 INFO L272 TraceCheckUtils]: 6: Hoare triple {3568#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {3568#true} is VALID [2022-04-08 12:35:57,771 INFO L290 TraceCheckUtils]: 7: Hoare triple {3568#true} ~cond := #in~cond; {3568#true} is VALID [2022-04-08 12:35:57,771 INFO L290 TraceCheckUtils]: 8: Hoare triple {3568#true} assume !(0 == ~cond); {3568#true} is VALID [2022-04-08 12:35:57,771 INFO L290 TraceCheckUtils]: 9: Hoare triple {3568#true} assume true; {3568#true} is VALID [2022-04-08 12:35:57,771 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3568#true} {3568#true} #90#return; {3568#true} is VALID [2022-04-08 12:35:57,771 INFO L272 TraceCheckUtils]: 11: Hoare triple {3568#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)); {3568#true} is VALID [2022-04-08 12:35:57,771 INFO L290 TraceCheckUtils]: 12: Hoare triple {3568#true} ~cond := #in~cond; {3568#true} is VALID [2022-04-08 12:35:57,772 INFO L290 TraceCheckUtils]: 13: Hoare triple {3568#true} assume !(0 == ~cond); {3568#true} is VALID [2022-04-08 12:35:57,772 INFO L290 TraceCheckUtils]: 14: Hoare triple {3568#true} assume true; {3568#true} is VALID [2022-04-08 12:35:57,772 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3568#true} {3568#true} #92#return; {3568#true} is VALID [2022-04-08 12:35:57,772 INFO L290 TraceCheckUtils]: 16: Hoare triple {3568#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {3568#true} is VALID [2022-04-08 12:35:57,772 INFO L290 TraceCheckUtils]: 17: Hoare triple {3568#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3568#true} is VALID [2022-04-08 12:35:57,772 INFO L290 TraceCheckUtils]: 18: Hoare triple {3568#true} assume !!(#t~post6 < 10);havoc #t~post6; {3568#true} is VALID [2022-04-08 12:35:57,772 INFO L272 TraceCheckUtils]: 19: Hoare triple {3568#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)); {3568#true} is VALID [2022-04-08 12:35:57,772 INFO L290 TraceCheckUtils]: 20: Hoare triple {3568#true} ~cond := #in~cond; {3568#true} is VALID [2022-04-08 12:35:57,772 INFO L290 TraceCheckUtils]: 21: Hoare triple {3568#true} assume !(0 == ~cond); {3568#true} is VALID [2022-04-08 12:35:57,772 INFO L290 TraceCheckUtils]: 22: Hoare triple {3568#true} assume true; {3568#true} is VALID [2022-04-08 12:35:57,772 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3568#true} {3568#true} #94#return; {3568#true} is VALID [2022-04-08 12:35:57,772 INFO L290 TraceCheckUtils]: 24: Hoare triple {3568#true} assume !!(0 != ~r~0); {3645#(not (= main_~r~0 0))} is VALID [2022-04-08 12:35:57,773 INFO L290 TraceCheckUtils]: 25: Hoare triple {3645#(not (= main_~r~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3645#(not (= main_~r~0 0))} is VALID [2022-04-08 12:35:57,773 INFO L290 TraceCheckUtils]: 26: Hoare triple {3645#(not (= main_~r~0 0))} assume !!(#t~post7 < 10);havoc #t~post7; {3645#(not (= main_~r~0 0))} is VALID [2022-04-08 12:35:57,773 INFO L272 TraceCheckUtils]: 27: Hoare triple {3645#(not (= main_~r~0 0))} 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)); {3568#true} is VALID [2022-04-08 12:35:57,773 INFO L290 TraceCheckUtils]: 28: Hoare triple {3568#true} ~cond := #in~cond; {3568#true} is VALID [2022-04-08 12:35:57,773 INFO L290 TraceCheckUtils]: 29: Hoare triple {3568#true} assume !(0 == ~cond); {3568#true} is VALID [2022-04-08 12:35:57,773 INFO L290 TraceCheckUtils]: 30: Hoare triple {3568#true} assume true; {3568#true} is VALID [2022-04-08 12:35:57,774 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {3568#true} {3645#(not (= main_~r~0 0))} #96#return; {3645#(not (= main_~r~0 0))} is VALID [2022-04-08 12:35:57,774 INFO L290 TraceCheckUtils]: 32: Hoare triple {3645#(not (= main_~r~0 0))} assume !(~r~0 > 0); {3670#(and (not (= main_~r~0 0)) (not (< 0 main_~r~0)))} is VALID [2022-04-08 12:35:57,774 INFO L290 TraceCheckUtils]: 33: Hoare triple {3670#(and (not (= main_~r~0 0)) (not (< 0 main_~r~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {3670#(and (not (= main_~r~0 0)) (not (< 0 main_~r~0)))} is VALID [2022-04-08 12:35:57,775 INFO L290 TraceCheckUtils]: 34: Hoare triple {3670#(and (not (= main_~r~0 0)) (not (< 0 main_~r~0)))} assume !!(#t~post8 < 10);havoc #t~post8; {3670#(and (not (= main_~r~0 0)) (not (< 0 main_~r~0)))} is VALID [2022-04-08 12:35:57,775 INFO L272 TraceCheckUtils]: 35: Hoare triple {3670#(and (not (= main_~r~0 0)) (not (< 0 main_~r~0)))} 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)); {3568#true} is VALID [2022-04-08 12:35:57,775 INFO L290 TraceCheckUtils]: 36: Hoare triple {3568#true} ~cond := #in~cond; {3568#true} is VALID [2022-04-08 12:35:57,775 INFO L290 TraceCheckUtils]: 37: Hoare triple {3568#true} assume !(0 == ~cond); {3568#true} is VALID [2022-04-08 12:35:57,775 INFO L290 TraceCheckUtils]: 38: Hoare triple {3568#true} assume true; {3568#true} is VALID [2022-04-08 12:35:57,787 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {3568#true} {3670#(and (not (= main_~r~0 0)) (not (< 0 main_~r~0)))} #98#return; {3670#(and (not (= main_~r~0 0)) (not (< 0 main_~r~0)))} is VALID [2022-04-08 12:35:57,787 INFO L290 TraceCheckUtils]: 40: Hoare triple {3670#(and (not (= main_~r~0 0)) (not (< 0 main_~r~0)))} assume !(~r~0 < 0); {3569#false} is VALID [2022-04-08 12:35:57,787 INFO L290 TraceCheckUtils]: 41: Hoare triple {3569#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3569#false} is VALID [2022-04-08 12:35:57,787 INFO L290 TraceCheckUtils]: 42: Hoare triple {3569#false} assume !(#t~post6 < 10);havoc #t~post6; {3569#false} is VALID [2022-04-08 12:35:57,787 INFO L272 TraceCheckUtils]: 43: Hoare triple {3569#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)); {3569#false} is VALID [2022-04-08 12:35:57,787 INFO L290 TraceCheckUtils]: 44: Hoare triple {3569#false} ~cond := #in~cond; {3569#false} is VALID [2022-04-08 12:35:57,788 INFO L290 TraceCheckUtils]: 45: Hoare triple {3569#false} assume 0 == ~cond; {3569#false} is VALID [2022-04-08 12:35:57,788 INFO L290 TraceCheckUtils]: 46: Hoare triple {3569#false} assume !false; {3569#false} is VALID [2022-04-08 12:35:57,788 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 8 proven. 0 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-08 12:35:57,788 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 12:35:57,788 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:35:57,788 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1990999750] [2022-04-08 12:35:57,788 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:35:57,788 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [973376583] [2022-04-08 12:35:57,788 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [973376583] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:35:57,788 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:35:57,788 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 12:35:57,788 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:35:57,789 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [310625390] [2022-04-08 12:35:57,789 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [310625390] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:35:57,789 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:35:57,789 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 12:35:57,789 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1222564670] [2022-04-08 12:35:57,789 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:35:57,789 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 6.0) internal successors, (24), 4 states have internal predecessors, (24), 4 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) Word has length 47 [2022-04-08 12:35:57,789 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:35:57,789 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 6.0) internal successors, (24), 4 states have internal predecessors, (24), 4 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-08 12:35:57,825 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-08 12:35:57,825 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-08 12:35:57,825 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:35:57,825 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-08 12:35:57,825 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-04-08 12:35:57,826 INFO L87 Difference]: Start difference. First operand 70 states and 85 transitions. Second operand has 4 states, 4 states have (on average 6.0) internal successors, (24), 4 states have internal predecessors, (24), 4 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-08 12:35:57,960 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:35:57,960 INFO L93 Difference]: Finished difference Result 123 states and 161 transitions. [2022-04-08 12:35:57,960 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-08 12:35:57,960 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 6.0) internal successors, (24), 4 states have internal predecessors, (24), 4 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) Word has length 47 [2022-04-08 12:35:57,960 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:35:57,960 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 6.0) internal successors, (24), 4 states have internal predecessors, (24), 4 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-08 12:35:57,962 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 108 transitions. [2022-04-08 12:35:57,962 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 6.0) internal successors, (24), 4 states have internal predecessors, (24), 4 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-08 12:35:57,963 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 108 transitions. [2022-04-08 12:35:57,963 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 108 transitions. [2022-04-08 12:35:58,035 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 108 edges. 108 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:35:58,036 INFO L225 Difference]: With dead ends: 123 [2022-04-08 12:35:58,036 INFO L226 Difference]: Without dead ends: 86 [2022-04-08 12:35:58,036 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 46 GetRequests, 44 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-04-08 12:35:58,037 INFO L913 BasicCegarLoop]: 60 mSDtfsCounter, 19 mSDsluCounter, 41 mSDsCounter, 0 mSdLazyCounter, 25 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 23 SdHoareTripleChecker+Valid, 101 SdHoareTripleChecker+Invalid, 28 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 25 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 12:35:58,037 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [23 Valid, 101 Invalid, 28 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 25 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 12:35:58,037 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 86 states. [2022-04-08 12:35:58,086 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 86 to 75. [2022-04-08 12:35:58,087 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:35:58,087 INFO L82 GeneralOperation]: Start isEquivalent. First operand 86 states. Second operand has 75 states, 53 states have (on average 1.2075471698113207) internal successors, (64), 54 states have internal predecessors, (64), 15 states have call successors, (15), 8 states have call predecessors, (15), 6 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-08 12:35:58,087 INFO L74 IsIncluded]: Start isIncluded. First operand 86 states. Second operand has 75 states, 53 states have (on average 1.2075471698113207) internal successors, (64), 54 states have internal predecessors, (64), 15 states have call successors, (15), 8 states have call predecessors, (15), 6 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-08 12:35:58,087 INFO L87 Difference]: Start difference. First operand 86 states. Second operand has 75 states, 53 states have (on average 1.2075471698113207) internal successors, (64), 54 states have internal predecessors, (64), 15 states have call successors, (15), 8 states have call predecessors, (15), 6 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-08 12:35:58,089 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:35:58,089 INFO L93 Difference]: Finished difference Result 86 states and 108 transitions. [2022-04-08 12:35:58,089 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 108 transitions. [2022-04-08 12:35:58,089 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:35:58,090 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:35:58,090 INFO L74 IsIncluded]: Start isIncluded. First operand has 75 states, 53 states have (on average 1.2075471698113207) internal successors, (64), 54 states have internal predecessors, (64), 15 states have call successors, (15), 8 states have call predecessors, (15), 6 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) Second operand 86 states. [2022-04-08 12:35:58,090 INFO L87 Difference]: Start difference. First operand has 75 states, 53 states have (on average 1.2075471698113207) internal successors, (64), 54 states have internal predecessors, (64), 15 states have call successors, (15), 8 states have call predecessors, (15), 6 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) Second operand 86 states. [2022-04-08 12:35:58,092 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:35:58,092 INFO L93 Difference]: Finished difference Result 86 states and 108 transitions. [2022-04-08 12:35:58,092 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 108 transitions. [2022-04-08 12:35:58,092 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:35:58,092 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:35:58,092 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:35:58,092 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:35:58,092 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 75 states, 53 states have (on average 1.2075471698113207) internal successors, (64), 54 states have internal predecessors, (64), 15 states have call successors, (15), 8 states have call predecessors, (15), 6 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-08 12:35:58,094 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 75 states to 75 states and 92 transitions. [2022-04-08 12:35:58,094 INFO L78 Accepts]: Start accepts. Automaton has 75 states and 92 transitions. Word has length 47 [2022-04-08 12:35:58,094 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:35:58,094 INFO L478 AbstractCegarLoop]: Abstraction has 75 states and 92 transitions. [2022-04-08 12:35:58,094 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 6.0) internal successors, (24), 4 states have internal predecessors, (24), 4 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-08 12:35:58,094 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 75 states and 92 transitions. [2022-04-08 12:36:00,176 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 92 edges. 91 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:00,176 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 92 transitions. [2022-04-08 12:36:00,177 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-04-08 12:36:00,177 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:36:00,177 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 12:36:00,193 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-08 12:36:00,382 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-08 12:36:00,382 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:36:00,383 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:36:00,383 INFO L85 PathProgramCache]: Analyzing trace with hash 1915058849, now seen corresponding path program 1 times [2022-04-08 12:36:00,383 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:00,383 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [242881801] [2022-04-08 12:36:00,383 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:36:00,383 INFO L85 PathProgramCache]: Analyzing trace with hash 1915058849, now seen corresponding path program 2 times [2022-04-08 12:36:00,383 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:36:00,383 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1531670801] [2022-04-08 12:36:00,383 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:36:00,383 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:36:00,392 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:36:00,392 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1295594643] [2022-04-08 12:36:00,392 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:36:00,392 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:36:00,393 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:36:00,393 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-08 12:36:00,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-08 12:36:00,443 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:36:00,443 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:36:00,444 INFO L263 TraceCheckSpWp]: Trace formula consists of 147 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-08 12:36:00,454 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:36:00,455 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:36:00,649 INFO L272 TraceCheckUtils]: 0: Hoare triple {4280#true} call ULTIMATE.init(); {4280#true} is VALID [2022-04-08 12:36:00,650 INFO L290 TraceCheckUtils]: 1: Hoare triple {4280#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; {4288#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:00,650 INFO L290 TraceCheckUtils]: 2: Hoare triple {4288#(<= ~counter~0 0)} assume true; {4288#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:00,651 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4288#(<= ~counter~0 0)} {4280#true} #102#return; {4288#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:00,651 INFO L272 TraceCheckUtils]: 4: Hoare triple {4288#(<= ~counter~0 0)} call #t~ret9 := main(); {4288#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:00,651 INFO L290 TraceCheckUtils]: 5: Hoare triple {4288#(<= ~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; {4288#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:00,652 INFO L272 TraceCheckUtils]: 6: Hoare triple {4288#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {4288#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:00,652 INFO L290 TraceCheckUtils]: 7: Hoare triple {4288#(<= ~counter~0 0)} ~cond := #in~cond; {4288#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:00,658 INFO L290 TraceCheckUtils]: 8: Hoare triple {4288#(<= ~counter~0 0)} assume !(0 == ~cond); {4288#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:00,658 INFO L290 TraceCheckUtils]: 9: Hoare triple {4288#(<= ~counter~0 0)} assume true; {4288#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:00,659 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4288#(<= ~counter~0 0)} {4288#(<= ~counter~0 0)} #90#return; {4288#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:00,659 INFO L272 TraceCheckUtils]: 11: Hoare triple {4288#(<= ~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)); {4288#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:00,659 INFO L290 TraceCheckUtils]: 12: Hoare triple {4288#(<= ~counter~0 0)} ~cond := #in~cond; {4288#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:00,660 INFO L290 TraceCheckUtils]: 13: Hoare triple {4288#(<= ~counter~0 0)} assume !(0 == ~cond); {4288#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:00,660 INFO L290 TraceCheckUtils]: 14: Hoare triple {4288#(<= ~counter~0 0)} assume true; {4288#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:00,660 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4288#(<= ~counter~0 0)} {4288#(<= ~counter~0 0)} #92#return; {4288#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:00,660 INFO L290 TraceCheckUtils]: 16: Hoare triple {4288#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {4288#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:00,661 INFO L290 TraceCheckUtils]: 17: Hoare triple {4288#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4337#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:00,661 INFO L290 TraceCheckUtils]: 18: Hoare triple {4337#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {4337#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:00,662 INFO L272 TraceCheckUtils]: 19: Hoare triple {4337#(<= ~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)); {4337#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:00,662 INFO L290 TraceCheckUtils]: 20: Hoare triple {4337#(<= ~counter~0 1)} ~cond := #in~cond; {4337#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:00,662 INFO L290 TraceCheckUtils]: 21: Hoare triple {4337#(<= ~counter~0 1)} assume !(0 == ~cond); {4337#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:00,662 INFO L290 TraceCheckUtils]: 22: Hoare triple {4337#(<= ~counter~0 1)} assume true; {4337#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:00,663 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4337#(<= ~counter~0 1)} {4337#(<= ~counter~0 1)} #94#return; {4337#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:00,663 INFO L290 TraceCheckUtils]: 24: Hoare triple {4337#(<= ~counter~0 1)} assume !!(0 != ~r~0); {4337#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:00,663 INFO L290 TraceCheckUtils]: 25: Hoare triple {4337#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4362#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:00,664 INFO L290 TraceCheckUtils]: 26: Hoare triple {4362#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {4362#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:00,664 INFO L272 TraceCheckUtils]: 27: Hoare triple {4362#(<= ~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)); {4362#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:00,664 INFO L290 TraceCheckUtils]: 28: Hoare triple {4362#(<= ~counter~0 2)} ~cond := #in~cond; {4362#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:00,665 INFO L290 TraceCheckUtils]: 29: Hoare triple {4362#(<= ~counter~0 2)} assume !(0 == ~cond); {4362#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:00,665 INFO L290 TraceCheckUtils]: 30: Hoare triple {4362#(<= ~counter~0 2)} assume true; {4362#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:00,665 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {4362#(<= ~counter~0 2)} {4362#(<= ~counter~0 2)} #96#return; {4362#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:00,666 INFO L290 TraceCheckUtils]: 32: Hoare triple {4362#(<= ~counter~0 2)} assume !(~r~0 > 0); {4362#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:00,666 INFO L290 TraceCheckUtils]: 33: Hoare triple {4362#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {4387#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:00,666 INFO L290 TraceCheckUtils]: 34: Hoare triple {4387#(<= ~counter~0 3)} assume !!(#t~post8 < 10);havoc #t~post8; {4387#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:00,667 INFO L272 TraceCheckUtils]: 35: Hoare triple {4387#(<= ~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)); {4387#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:00,667 INFO L290 TraceCheckUtils]: 36: Hoare triple {4387#(<= ~counter~0 3)} ~cond := #in~cond; {4387#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:00,667 INFO L290 TraceCheckUtils]: 37: Hoare triple {4387#(<= ~counter~0 3)} assume !(0 == ~cond); {4387#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:00,667 INFO L290 TraceCheckUtils]: 38: Hoare triple {4387#(<= ~counter~0 3)} assume true; {4387#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:00,668 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {4387#(<= ~counter~0 3)} {4387#(<= ~counter~0 3)} #98#return; {4387#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:00,668 INFO L290 TraceCheckUtils]: 40: Hoare triple {4387#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {4387#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:00,668 INFO L290 TraceCheckUtils]: 41: Hoare triple {4387#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {4412#(<= |main_#t~post8| 3)} is VALID [2022-04-08 12:36:00,669 INFO L290 TraceCheckUtils]: 42: Hoare triple {4412#(<= |main_#t~post8| 3)} assume !(#t~post8 < 10);havoc #t~post8; {4281#false} is VALID [2022-04-08 12:36:00,669 INFO L290 TraceCheckUtils]: 43: Hoare triple {4281#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4281#false} is VALID [2022-04-08 12:36:00,669 INFO L290 TraceCheckUtils]: 44: Hoare triple {4281#false} assume !(#t~post6 < 10);havoc #t~post6; {4281#false} is VALID [2022-04-08 12:36:00,669 INFO L272 TraceCheckUtils]: 45: Hoare triple {4281#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)); {4281#false} is VALID [2022-04-08 12:36:00,669 INFO L290 TraceCheckUtils]: 46: Hoare triple {4281#false} ~cond := #in~cond; {4281#false} is VALID [2022-04-08 12:36:00,669 INFO L290 TraceCheckUtils]: 47: Hoare triple {4281#false} assume 0 == ~cond; {4281#false} is VALID [2022-04-08 12:36:00,669 INFO L290 TraceCheckUtils]: 48: Hoare triple {4281#false} assume !false; {4281#false} is VALID [2022-04-08 12:36:00,669 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 8 proven. 14 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 12:36:00,669 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:36:00,898 INFO L290 TraceCheckUtils]: 48: Hoare triple {4281#false} assume !false; {4281#false} is VALID [2022-04-08 12:36:00,898 INFO L290 TraceCheckUtils]: 47: Hoare triple {4281#false} assume 0 == ~cond; {4281#false} is VALID [2022-04-08 12:36:00,898 INFO L290 TraceCheckUtils]: 46: Hoare triple {4281#false} ~cond := #in~cond; {4281#false} is VALID [2022-04-08 12:36:00,898 INFO L272 TraceCheckUtils]: 45: Hoare triple {4281#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)); {4281#false} is VALID [2022-04-08 12:36:00,898 INFO L290 TraceCheckUtils]: 44: Hoare triple {4281#false} assume !(#t~post6 < 10);havoc #t~post6; {4281#false} is VALID [2022-04-08 12:36:00,898 INFO L290 TraceCheckUtils]: 43: Hoare triple {4281#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4281#false} is VALID [2022-04-08 12:36:00,898 INFO L290 TraceCheckUtils]: 42: Hoare triple {4452#(< |main_#t~post8| 10)} assume !(#t~post8 < 10);havoc #t~post8; {4281#false} is VALID [2022-04-08 12:36:00,899 INFO L290 TraceCheckUtils]: 41: Hoare triple {4456#(< ~counter~0 10)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {4452#(< |main_#t~post8| 10)} is VALID [2022-04-08 12:36:00,899 INFO L290 TraceCheckUtils]: 40: Hoare triple {4456#(< ~counter~0 10)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {4456#(< ~counter~0 10)} is VALID [2022-04-08 12:36:00,900 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {4280#true} {4456#(< ~counter~0 10)} #98#return; {4456#(< ~counter~0 10)} is VALID [2022-04-08 12:36:00,900 INFO L290 TraceCheckUtils]: 38: Hoare triple {4280#true} assume true; {4280#true} is VALID [2022-04-08 12:36:00,900 INFO L290 TraceCheckUtils]: 37: Hoare triple {4280#true} assume !(0 == ~cond); {4280#true} is VALID [2022-04-08 12:36:00,900 INFO L290 TraceCheckUtils]: 36: Hoare triple {4280#true} ~cond := #in~cond; {4280#true} is VALID [2022-04-08 12:36:00,900 INFO L272 TraceCheckUtils]: 35: Hoare triple {4456#(< ~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)); {4280#true} is VALID [2022-04-08 12:36:00,900 INFO L290 TraceCheckUtils]: 34: Hoare triple {4456#(< ~counter~0 10)} assume !!(#t~post8 < 10);havoc #t~post8; {4456#(< ~counter~0 10)} is VALID [2022-04-08 12:36:00,901 INFO L290 TraceCheckUtils]: 33: Hoare triple {4481#(< ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {4456#(< ~counter~0 10)} is VALID [2022-04-08 12:36:00,901 INFO L290 TraceCheckUtils]: 32: Hoare triple {4481#(< ~counter~0 9)} assume !(~r~0 > 0); {4481#(< ~counter~0 9)} is VALID [2022-04-08 12:36:00,902 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {4280#true} {4481#(< ~counter~0 9)} #96#return; {4481#(< ~counter~0 9)} is VALID [2022-04-08 12:36:00,902 INFO L290 TraceCheckUtils]: 30: Hoare triple {4280#true} assume true; {4280#true} is VALID [2022-04-08 12:36:00,902 INFO L290 TraceCheckUtils]: 29: Hoare triple {4280#true} assume !(0 == ~cond); {4280#true} is VALID [2022-04-08 12:36:00,902 INFO L290 TraceCheckUtils]: 28: Hoare triple {4280#true} ~cond := #in~cond; {4280#true} is VALID [2022-04-08 12:36:00,902 INFO L272 TraceCheckUtils]: 27: Hoare triple {4481#(< ~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)); {4280#true} is VALID [2022-04-08 12:36:00,902 INFO L290 TraceCheckUtils]: 26: Hoare triple {4481#(< ~counter~0 9)} assume !!(#t~post7 < 10);havoc #t~post7; {4481#(< ~counter~0 9)} is VALID [2022-04-08 12:36:00,903 INFO L290 TraceCheckUtils]: 25: Hoare triple {4506#(< ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4481#(< ~counter~0 9)} is VALID [2022-04-08 12:36:00,903 INFO L290 TraceCheckUtils]: 24: Hoare triple {4506#(< ~counter~0 8)} assume !!(0 != ~r~0); {4506#(< ~counter~0 8)} is VALID [2022-04-08 12:36:00,904 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4280#true} {4506#(< ~counter~0 8)} #94#return; {4506#(< ~counter~0 8)} is VALID [2022-04-08 12:36:00,904 INFO L290 TraceCheckUtils]: 22: Hoare triple {4280#true} assume true; {4280#true} is VALID [2022-04-08 12:36:00,904 INFO L290 TraceCheckUtils]: 21: Hoare triple {4280#true} assume !(0 == ~cond); {4280#true} is VALID [2022-04-08 12:36:00,904 INFO L290 TraceCheckUtils]: 20: Hoare triple {4280#true} ~cond := #in~cond; {4280#true} is VALID [2022-04-08 12:36:00,904 INFO L272 TraceCheckUtils]: 19: Hoare triple {4506#(< ~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)); {4280#true} is VALID [2022-04-08 12:36:00,904 INFO L290 TraceCheckUtils]: 18: Hoare triple {4506#(< ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {4506#(< ~counter~0 8)} is VALID [2022-04-08 12:36:00,905 INFO L290 TraceCheckUtils]: 17: Hoare triple {4531#(< ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4506#(< ~counter~0 8)} is VALID [2022-04-08 12:36:00,905 INFO L290 TraceCheckUtils]: 16: Hoare triple {4531#(< ~counter~0 7)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {4531#(< ~counter~0 7)} is VALID [2022-04-08 12:36:00,906 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4280#true} {4531#(< ~counter~0 7)} #92#return; {4531#(< ~counter~0 7)} is VALID [2022-04-08 12:36:00,906 INFO L290 TraceCheckUtils]: 14: Hoare triple {4280#true} assume true; {4280#true} is VALID [2022-04-08 12:36:00,906 INFO L290 TraceCheckUtils]: 13: Hoare triple {4280#true} assume !(0 == ~cond); {4280#true} is VALID [2022-04-08 12:36:00,906 INFO L290 TraceCheckUtils]: 12: Hoare triple {4280#true} ~cond := #in~cond; {4280#true} is VALID [2022-04-08 12:36:00,906 INFO L272 TraceCheckUtils]: 11: Hoare triple {4531#(< ~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)); {4280#true} is VALID [2022-04-08 12:36:00,906 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4280#true} {4531#(< ~counter~0 7)} #90#return; {4531#(< ~counter~0 7)} is VALID [2022-04-08 12:36:00,906 INFO L290 TraceCheckUtils]: 9: Hoare triple {4280#true} assume true; {4280#true} is VALID [2022-04-08 12:36:00,906 INFO L290 TraceCheckUtils]: 8: Hoare triple {4280#true} assume !(0 == ~cond); {4280#true} is VALID [2022-04-08 12:36:00,907 INFO L290 TraceCheckUtils]: 7: Hoare triple {4280#true} ~cond := #in~cond; {4280#true} is VALID [2022-04-08 12:36:00,907 INFO L272 TraceCheckUtils]: 6: Hoare triple {4531#(< ~counter~0 7)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {4280#true} is VALID [2022-04-08 12:36:00,907 INFO L290 TraceCheckUtils]: 5: Hoare triple {4531#(< ~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; {4531#(< ~counter~0 7)} is VALID [2022-04-08 12:36:00,907 INFO L272 TraceCheckUtils]: 4: Hoare triple {4531#(< ~counter~0 7)} call #t~ret9 := main(); {4531#(< ~counter~0 7)} is VALID [2022-04-08 12:36:00,908 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4531#(< ~counter~0 7)} {4280#true} #102#return; {4531#(< ~counter~0 7)} is VALID [2022-04-08 12:36:00,908 INFO L290 TraceCheckUtils]: 2: Hoare triple {4531#(< ~counter~0 7)} assume true; {4531#(< ~counter~0 7)} is VALID [2022-04-08 12:36:00,908 INFO L290 TraceCheckUtils]: 1: Hoare triple {4280#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; {4531#(< ~counter~0 7)} is VALID [2022-04-08 12:36:00,909 INFO L272 TraceCheckUtils]: 0: Hoare triple {4280#true} call ULTIMATE.init(); {4280#true} is VALID [2022-04-08 12:36:00,909 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 8 proven. 2 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-08 12:36:00,909 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:36:00,909 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1531670801] [2022-04-08 12:36:00,909 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:36:00,909 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1295594643] [2022-04-08 12:36:00,909 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1295594643] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:36:00,909 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:36:00,909 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-08 12:36:00,909 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:36:00,909 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [242881801] [2022-04-08 12:36:00,909 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [242881801] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:36:00,910 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:36:00,910 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-08 12:36:00,910 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1607408388] [2022-04-08 12:36:00,910 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:36:00,911 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.571428571428571) internal successors, (32), 6 states have internal predecessors, (32), 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 49 [2022-04-08 12:36:00,911 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:36:00,911 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 4.571428571428571) internal successors, (32), 6 states have internal predecessors, (32), 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-08 12:36:00,945 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:00,945 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-08 12:36:00,945 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:00,946 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-08 12:36:00,946 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=82, Unknown=0, NotChecked=0, Total=132 [2022-04-08 12:36:00,946 INFO L87 Difference]: Start difference. First operand 75 states and 92 transitions. Second operand has 7 states, 7 states have (on average 4.571428571428571) internal successors, (32), 6 states have internal predecessors, (32), 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-08 12:36:01,189 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:01,189 INFO L93 Difference]: Finished difference Result 122 states and 156 transitions. [2022-04-08 12:36:01,189 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 12:36:01,189 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.571428571428571) internal successors, (32), 6 states have internal predecessors, (32), 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 49 [2022-04-08 12:36:01,190 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:36:01,190 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.571428571428571) internal successors, (32), 6 states have internal predecessors, (32), 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-08 12:36:01,191 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 101 transitions. [2022-04-08 12:36:01,191 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.571428571428571) internal successors, (32), 6 states have internal predecessors, (32), 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-08 12:36:01,192 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 101 transitions. [2022-04-08 12:36:01,192 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 101 transitions. [2022-04-08 12:36:01,252 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-08 12:36:01,253 INFO L225 Difference]: With dead ends: 122 [2022-04-08 12:36:01,253 INFO L226 Difference]: Without dead ends: 85 [2022-04-08 12:36:01,254 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 98 GetRequests, 87 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=59, Invalid=97, Unknown=0, NotChecked=0, Total=156 [2022-04-08 12:36:01,254 INFO L913 BasicCegarLoop]: 40 mSDtfsCounter, 22 mSDsluCounter, 109 mSDsCounter, 0 mSdLazyCounter, 35 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 149 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-08 12:36:01,254 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [22 Valid, 149 Invalid, 56 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 35 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 12:36:01,254 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 85 states. [2022-04-08 12:36:01,316 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 85 to 84. [2022-04-08 12:36:01,316 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:36:01,317 INFO L82 GeneralOperation]: Start isEquivalent. First operand 85 states. Second operand has 84 states, 60 states have (on average 1.2) internal successors, (72), 60 states have internal predecessors, (72), 16 states have call successors, (16), 9 states have call predecessors, (16), 7 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-08 12:36:01,317 INFO L74 IsIncluded]: Start isIncluded. First operand 85 states. Second operand has 84 states, 60 states have (on average 1.2) internal successors, (72), 60 states have internal predecessors, (72), 16 states have call successors, (16), 9 states have call predecessors, (16), 7 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-08 12:36:01,317 INFO L87 Difference]: Start difference. First operand 85 states. Second operand has 84 states, 60 states have (on average 1.2) internal successors, (72), 60 states have internal predecessors, (72), 16 states have call successors, (16), 9 states have call predecessors, (16), 7 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-08 12:36:01,319 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:01,319 INFO L93 Difference]: Finished difference Result 85 states and 103 transitions. [2022-04-08 12:36:01,327 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 103 transitions. [2022-04-08 12:36:01,327 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:01,327 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:01,328 INFO L74 IsIncluded]: Start isIncluded. First operand has 84 states, 60 states have (on average 1.2) internal successors, (72), 60 states have internal predecessors, (72), 16 states have call successors, (16), 9 states have call predecessors, (16), 7 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) Second operand 85 states. [2022-04-08 12:36:01,328 INFO L87 Difference]: Start difference. First operand has 84 states, 60 states have (on average 1.2) internal successors, (72), 60 states have internal predecessors, (72), 16 states have call successors, (16), 9 states have call predecessors, (16), 7 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) Second operand 85 states. [2022-04-08 12:36:01,330 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:01,330 INFO L93 Difference]: Finished difference Result 85 states and 103 transitions. [2022-04-08 12:36:01,330 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 103 transitions. [2022-04-08 12:36:01,330 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:01,330 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:01,330 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:36:01,330 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:36:01,330 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 84 states, 60 states have (on average 1.2) internal successors, (72), 60 states have internal predecessors, (72), 16 states have call successors, (16), 9 states have call predecessors, (16), 7 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-08 12:36:01,332 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 84 states to 84 states and 102 transitions. [2022-04-08 12:36:01,332 INFO L78 Accepts]: Start accepts. Automaton has 84 states and 102 transitions. Word has length 49 [2022-04-08 12:36:01,332 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:36:01,332 INFO L478 AbstractCegarLoop]: Abstraction has 84 states and 102 transitions. [2022-04-08 12:36:01,332 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 4.571428571428571) internal successors, (32), 6 states have internal predecessors, (32), 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-08 12:36:01,332 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 84 states and 102 transitions. [2022-04-08 12:36:01,660 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 102 edges. 102 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:01,660 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 102 transitions. [2022-04-08 12:36:01,660 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2022-04-08 12:36:01,660 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:36:01,660 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 12:36:01,676 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Ended with exit code 0 [2022-04-08 12:36:01,861 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-08 12:36:01,861 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:36:01,861 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:36:01,861 INFO L85 PathProgramCache]: Analyzing trace with hash -60460648, now seen corresponding path program 3 times [2022-04-08 12:36:01,861 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:01,861 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1623212059] [2022-04-08 12:36:01,862 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:36:01,862 INFO L85 PathProgramCache]: Analyzing trace with hash -60460648, now seen corresponding path program 4 times [2022-04-08 12:36:01,862 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:36:01,870 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [531930732] [2022-04-08 12:36:01,870 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:36:01,870 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:36:01,887 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:36:01,887 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1761021184] [2022-04-08 12:36:01,888 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 12:36:01,888 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:36:01,888 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:36:01,888 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-08 12:36:01,891 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-08 12:36:01,959 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 12:36:01,959 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:36:01,959 INFO L263 TraceCheckSpWp]: Trace formula consists of 156 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-08 12:36:01,983 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:36:01,984 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:36:02,181 INFO L272 TraceCheckUtils]: 0: Hoare triple {5169#true} call ULTIMATE.init(); {5169#true} is VALID [2022-04-08 12:36:02,182 INFO L290 TraceCheckUtils]: 1: Hoare triple {5169#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; {5177#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:02,182 INFO L290 TraceCheckUtils]: 2: Hoare triple {5177#(<= ~counter~0 0)} assume true; {5177#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:02,183 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5177#(<= ~counter~0 0)} {5169#true} #102#return; {5177#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:02,187 INFO L272 TraceCheckUtils]: 4: Hoare triple {5177#(<= ~counter~0 0)} call #t~ret9 := main(); {5177#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:02,187 INFO L290 TraceCheckUtils]: 5: Hoare triple {5177#(<= ~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; {5177#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:02,188 INFO L272 TraceCheckUtils]: 6: Hoare triple {5177#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {5177#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:02,188 INFO L290 TraceCheckUtils]: 7: Hoare triple {5177#(<= ~counter~0 0)} ~cond := #in~cond; {5177#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:02,188 INFO L290 TraceCheckUtils]: 8: Hoare triple {5177#(<= ~counter~0 0)} assume !(0 == ~cond); {5177#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:02,188 INFO L290 TraceCheckUtils]: 9: Hoare triple {5177#(<= ~counter~0 0)} assume true; {5177#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:02,189 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5177#(<= ~counter~0 0)} {5177#(<= ~counter~0 0)} #90#return; {5177#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:02,189 INFO L272 TraceCheckUtils]: 11: Hoare triple {5177#(<= ~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)); {5177#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:02,189 INFO L290 TraceCheckUtils]: 12: Hoare triple {5177#(<= ~counter~0 0)} ~cond := #in~cond; {5177#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:02,189 INFO L290 TraceCheckUtils]: 13: Hoare triple {5177#(<= ~counter~0 0)} assume !(0 == ~cond); {5177#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:02,190 INFO L290 TraceCheckUtils]: 14: Hoare triple {5177#(<= ~counter~0 0)} assume true; {5177#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:02,190 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5177#(<= ~counter~0 0)} {5177#(<= ~counter~0 0)} #92#return; {5177#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:02,190 INFO L290 TraceCheckUtils]: 16: Hoare triple {5177#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {5177#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:02,191 INFO L290 TraceCheckUtils]: 17: Hoare triple {5177#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5226#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:02,191 INFO L290 TraceCheckUtils]: 18: Hoare triple {5226#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {5226#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:02,191 INFO L272 TraceCheckUtils]: 19: Hoare triple {5226#(<= ~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)); {5226#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:02,192 INFO L290 TraceCheckUtils]: 20: Hoare triple {5226#(<= ~counter~0 1)} ~cond := #in~cond; {5226#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:02,192 INFO L290 TraceCheckUtils]: 21: Hoare triple {5226#(<= ~counter~0 1)} assume !(0 == ~cond); {5226#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:02,192 INFO L290 TraceCheckUtils]: 22: Hoare triple {5226#(<= ~counter~0 1)} assume true; {5226#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:02,192 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {5226#(<= ~counter~0 1)} {5226#(<= ~counter~0 1)} #94#return; {5226#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:02,193 INFO L290 TraceCheckUtils]: 24: Hoare triple {5226#(<= ~counter~0 1)} assume !!(0 != ~r~0); {5226#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:02,193 INFO L290 TraceCheckUtils]: 25: Hoare triple {5226#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5251#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:02,193 INFO L290 TraceCheckUtils]: 26: Hoare triple {5251#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {5251#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:02,194 INFO L272 TraceCheckUtils]: 27: Hoare triple {5251#(<= ~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)); {5251#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:02,194 INFO L290 TraceCheckUtils]: 28: Hoare triple {5251#(<= ~counter~0 2)} ~cond := #in~cond; {5251#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:02,194 INFO L290 TraceCheckUtils]: 29: Hoare triple {5251#(<= ~counter~0 2)} assume !(0 == ~cond); {5251#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:02,194 INFO L290 TraceCheckUtils]: 30: Hoare triple {5251#(<= ~counter~0 2)} assume true; {5251#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:02,195 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {5251#(<= ~counter~0 2)} {5251#(<= ~counter~0 2)} #96#return; {5251#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:02,195 INFO L290 TraceCheckUtils]: 32: Hoare triple {5251#(<= ~counter~0 2)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5251#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:02,195 INFO L290 TraceCheckUtils]: 33: Hoare triple {5251#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5276#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:02,195 INFO L290 TraceCheckUtils]: 34: Hoare triple {5276#(<= ~counter~0 3)} assume !!(#t~post7 < 10);havoc #t~post7; {5276#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:02,196 INFO L272 TraceCheckUtils]: 35: Hoare triple {5276#(<= ~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)); {5276#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:02,196 INFO L290 TraceCheckUtils]: 36: Hoare triple {5276#(<= ~counter~0 3)} ~cond := #in~cond; {5276#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:02,196 INFO L290 TraceCheckUtils]: 37: Hoare triple {5276#(<= ~counter~0 3)} assume !(0 == ~cond); {5276#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:02,196 INFO L290 TraceCheckUtils]: 38: Hoare triple {5276#(<= ~counter~0 3)} assume true; {5276#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:02,197 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {5276#(<= ~counter~0 3)} {5276#(<= ~counter~0 3)} #96#return; {5276#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:02,197 INFO L290 TraceCheckUtils]: 40: Hoare triple {5276#(<= ~counter~0 3)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5276#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:02,197 INFO L290 TraceCheckUtils]: 41: Hoare triple {5276#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5301#(<= |main_#t~post7| 3)} is VALID [2022-04-08 12:36:02,198 INFO L290 TraceCheckUtils]: 42: Hoare triple {5301#(<= |main_#t~post7| 3)} assume !(#t~post7 < 10);havoc #t~post7; {5170#false} is VALID [2022-04-08 12:36:02,198 INFO L290 TraceCheckUtils]: 43: Hoare triple {5170#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {5170#false} is VALID [2022-04-08 12:36:02,198 INFO L290 TraceCheckUtils]: 44: Hoare triple {5170#false} assume !(#t~post8 < 10);havoc #t~post8; {5170#false} is VALID [2022-04-08 12:36:02,198 INFO L290 TraceCheckUtils]: 45: Hoare triple {5170#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5170#false} is VALID [2022-04-08 12:36:02,198 INFO L290 TraceCheckUtils]: 46: Hoare triple {5170#false} assume !(#t~post6 < 10);havoc #t~post6; {5170#false} is VALID [2022-04-08 12:36:02,198 INFO L272 TraceCheckUtils]: 47: Hoare triple {5170#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)); {5170#false} is VALID [2022-04-08 12:36:02,198 INFO L290 TraceCheckUtils]: 48: Hoare triple {5170#false} ~cond := #in~cond; {5170#false} is VALID [2022-04-08 12:36:02,198 INFO L290 TraceCheckUtils]: 49: Hoare triple {5170#false} assume 0 == ~cond; {5170#false} is VALID [2022-04-08 12:36:02,198 INFO L290 TraceCheckUtils]: 50: Hoare triple {5170#false} assume !false; {5170#false} is VALID [2022-04-08 12:36:02,198 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 8 proven. 20 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 12:36:02,198 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:36:02,465 INFO L290 TraceCheckUtils]: 50: Hoare triple {5170#false} assume !false; {5170#false} is VALID [2022-04-08 12:36:02,465 INFO L290 TraceCheckUtils]: 49: Hoare triple {5170#false} assume 0 == ~cond; {5170#false} is VALID [2022-04-08 12:36:02,465 INFO L290 TraceCheckUtils]: 48: Hoare triple {5170#false} ~cond := #in~cond; {5170#false} is VALID [2022-04-08 12:36:02,465 INFO L272 TraceCheckUtils]: 47: Hoare triple {5170#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)); {5170#false} is VALID [2022-04-08 12:36:02,465 INFO L290 TraceCheckUtils]: 46: Hoare triple {5170#false} assume !(#t~post6 < 10);havoc #t~post6; {5170#false} is VALID [2022-04-08 12:36:02,465 INFO L290 TraceCheckUtils]: 45: Hoare triple {5170#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5170#false} is VALID [2022-04-08 12:36:02,465 INFO L290 TraceCheckUtils]: 44: Hoare triple {5170#false} assume !(#t~post8 < 10);havoc #t~post8; {5170#false} is VALID [2022-04-08 12:36:02,465 INFO L290 TraceCheckUtils]: 43: Hoare triple {5170#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {5170#false} is VALID [2022-04-08 12:36:02,465 INFO L290 TraceCheckUtils]: 42: Hoare triple {5353#(< |main_#t~post7| 10)} assume !(#t~post7 < 10);havoc #t~post7; {5170#false} is VALID [2022-04-08 12:36:02,466 INFO L290 TraceCheckUtils]: 41: Hoare triple {5357#(< ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5353#(< |main_#t~post7| 10)} is VALID [2022-04-08 12:36:02,466 INFO L290 TraceCheckUtils]: 40: Hoare triple {5357#(< ~counter~0 10)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5357#(< ~counter~0 10)} is VALID [2022-04-08 12:36:02,467 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {5169#true} {5357#(< ~counter~0 10)} #96#return; {5357#(< ~counter~0 10)} is VALID [2022-04-08 12:36:02,467 INFO L290 TraceCheckUtils]: 38: Hoare triple {5169#true} assume true; {5169#true} is VALID [2022-04-08 12:36:02,467 INFO L290 TraceCheckUtils]: 37: Hoare triple {5169#true} assume !(0 == ~cond); {5169#true} is VALID [2022-04-08 12:36:02,467 INFO L290 TraceCheckUtils]: 36: Hoare triple {5169#true} ~cond := #in~cond; {5169#true} is VALID [2022-04-08 12:36:02,467 INFO L272 TraceCheckUtils]: 35: Hoare triple {5357#(< ~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)); {5169#true} is VALID [2022-04-08 12:36:02,467 INFO L290 TraceCheckUtils]: 34: Hoare triple {5357#(< ~counter~0 10)} assume !!(#t~post7 < 10);havoc #t~post7; {5357#(< ~counter~0 10)} is VALID [2022-04-08 12:36:02,468 INFO L290 TraceCheckUtils]: 33: Hoare triple {5382#(< ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5357#(< ~counter~0 10)} is VALID [2022-04-08 12:36:02,468 INFO L290 TraceCheckUtils]: 32: Hoare triple {5382#(< ~counter~0 9)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {5382#(< ~counter~0 9)} is VALID [2022-04-08 12:36:02,468 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {5169#true} {5382#(< ~counter~0 9)} #96#return; {5382#(< ~counter~0 9)} is VALID [2022-04-08 12:36:02,468 INFO L290 TraceCheckUtils]: 30: Hoare triple {5169#true} assume true; {5169#true} is VALID [2022-04-08 12:36:02,468 INFO L290 TraceCheckUtils]: 29: Hoare triple {5169#true} assume !(0 == ~cond); {5169#true} is VALID [2022-04-08 12:36:02,468 INFO L290 TraceCheckUtils]: 28: Hoare triple {5169#true} ~cond := #in~cond; {5169#true} is VALID [2022-04-08 12:36:02,468 INFO L272 TraceCheckUtils]: 27: Hoare triple {5382#(< ~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)); {5169#true} is VALID [2022-04-08 12:36:02,469 INFO L290 TraceCheckUtils]: 26: Hoare triple {5382#(< ~counter~0 9)} assume !!(#t~post7 < 10);havoc #t~post7; {5382#(< ~counter~0 9)} is VALID [2022-04-08 12:36:02,469 INFO L290 TraceCheckUtils]: 25: Hoare triple {5407#(< ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5382#(< ~counter~0 9)} is VALID [2022-04-08 12:36:02,469 INFO L290 TraceCheckUtils]: 24: Hoare triple {5407#(< ~counter~0 8)} assume !!(0 != ~r~0); {5407#(< ~counter~0 8)} is VALID [2022-04-08 12:36:02,470 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {5169#true} {5407#(< ~counter~0 8)} #94#return; {5407#(< ~counter~0 8)} is VALID [2022-04-08 12:36:02,470 INFO L290 TraceCheckUtils]: 22: Hoare triple {5169#true} assume true; {5169#true} is VALID [2022-04-08 12:36:02,470 INFO L290 TraceCheckUtils]: 21: Hoare triple {5169#true} assume !(0 == ~cond); {5169#true} is VALID [2022-04-08 12:36:02,470 INFO L290 TraceCheckUtils]: 20: Hoare triple {5169#true} ~cond := #in~cond; {5169#true} is VALID [2022-04-08 12:36:02,470 INFO L272 TraceCheckUtils]: 19: Hoare triple {5407#(< ~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)); {5169#true} is VALID [2022-04-08 12:36:02,471 INFO L290 TraceCheckUtils]: 18: Hoare triple {5407#(< ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {5407#(< ~counter~0 8)} is VALID [2022-04-08 12:36:02,471 INFO L290 TraceCheckUtils]: 17: Hoare triple {5432#(< ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5407#(< ~counter~0 8)} is VALID [2022-04-08 12:36:02,471 INFO L290 TraceCheckUtils]: 16: Hoare triple {5432#(< ~counter~0 7)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {5432#(< ~counter~0 7)} is VALID [2022-04-08 12:36:02,472 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5169#true} {5432#(< ~counter~0 7)} #92#return; {5432#(< ~counter~0 7)} is VALID [2022-04-08 12:36:02,472 INFO L290 TraceCheckUtils]: 14: Hoare triple {5169#true} assume true; {5169#true} is VALID [2022-04-08 12:36:02,472 INFO L290 TraceCheckUtils]: 13: Hoare triple {5169#true} assume !(0 == ~cond); {5169#true} is VALID [2022-04-08 12:36:02,472 INFO L290 TraceCheckUtils]: 12: Hoare triple {5169#true} ~cond := #in~cond; {5169#true} is VALID [2022-04-08 12:36:02,472 INFO L272 TraceCheckUtils]: 11: Hoare triple {5432#(< ~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)); {5169#true} is VALID [2022-04-08 12:36:02,475 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5169#true} {5432#(< ~counter~0 7)} #90#return; {5432#(< ~counter~0 7)} is VALID [2022-04-08 12:36:02,475 INFO L290 TraceCheckUtils]: 9: Hoare triple {5169#true} assume true; {5169#true} is VALID [2022-04-08 12:36:02,475 INFO L290 TraceCheckUtils]: 8: Hoare triple {5169#true} assume !(0 == ~cond); {5169#true} is VALID [2022-04-08 12:36:02,475 INFO L290 TraceCheckUtils]: 7: Hoare triple {5169#true} ~cond := #in~cond; {5169#true} is VALID [2022-04-08 12:36:02,475 INFO L272 TraceCheckUtils]: 6: Hoare triple {5432#(< ~counter~0 7)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {5169#true} is VALID [2022-04-08 12:36:02,487 INFO L290 TraceCheckUtils]: 5: Hoare triple {5432#(< ~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; {5432#(< ~counter~0 7)} is VALID [2022-04-08 12:36:02,487 INFO L272 TraceCheckUtils]: 4: Hoare triple {5432#(< ~counter~0 7)} call #t~ret9 := main(); {5432#(< ~counter~0 7)} is VALID [2022-04-08 12:36:02,488 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5432#(< ~counter~0 7)} {5169#true} #102#return; {5432#(< ~counter~0 7)} is VALID [2022-04-08 12:36:02,488 INFO L290 TraceCheckUtils]: 2: Hoare triple {5432#(< ~counter~0 7)} assume true; {5432#(< ~counter~0 7)} is VALID [2022-04-08 12:36:02,489 INFO L290 TraceCheckUtils]: 1: Hoare triple {5169#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; {5432#(< ~counter~0 7)} is VALID [2022-04-08 12:36:02,489 INFO L272 TraceCheckUtils]: 0: Hoare triple {5169#true} call ULTIMATE.init(); {5169#true} is VALID [2022-04-08 12:36:02,489 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 8 proven. 8 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-08 12:36:02,489 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:36:02,489 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [531930732] [2022-04-08 12:36:02,489 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:36:02,489 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1761021184] [2022-04-08 12:36:02,489 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1761021184] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:36:02,489 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:36:02,489 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-08 12:36:02,489 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:36:02,489 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1623212059] [2022-04-08 12:36:02,490 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1623212059] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:36:02,490 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:36:02,490 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-08 12:36:02,490 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1527634220] [2022-04-08 12:36:02,490 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:36:02,490 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.857142857142857) internal successors, (34), 6 states have internal predecessors, (34), 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 51 [2022-04-08 12:36:02,490 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:36:02,490 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 4.857142857142857) internal successors, (34), 6 states have internal predecessors, (34), 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-08 12:36:02,522 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:02,522 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-08 12:36:02,522 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:02,522 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-08 12:36:02,522 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=82, Unknown=0, NotChecked=0, Total=132 [2022-04-08 12:36:02,522 INFO L87 Difference]: Start difference. First operand 84 states and 102 transitions. Second operand has 7 states, 7 states have (on average 4.857142857142857) internal successors, (34), 6 states have internal predecessors, (34), 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-08 12:36:02,739 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:02,739 INFO L93 Difference]: Finished difference Result 123 states and 157 transitions. [2022-04-08 12:36:02,739 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 12:36:02,739 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.857142857142857) internal successors, (34), 6 states have internal predecessors, (34), 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 51 [2022-04-08 12:36:02,739 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:36:02,739 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.857142857142857) internal successors, (34), 6 states have internal predecessors, (34), 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-08 12:36:02,740 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 101 transitions. [2022-04-08 12:36:02,741 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.857142857142857) internal successors, (34), 6 states have internal predecessors, (34), 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-08 12:36:02,742 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 101 transitions. [2022-04-08 12:36:02,742 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 101 transitions. [2022-04-08 12:36:02,807 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-08 12:36:02,808 INFO L225 Difference]: With dead ends: 123 [2022-04-08 12:36:02,808 INFO L226 Difference]: Without dead ends: 86 [2022-04-08 12:36:02,809 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 103 GetRequests, 91 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=70, Invalid=112, Unknown=0, NotChecked=0, Total=182 [2022-04-08 12:36:02,809 INFO L913 BasicCegarLoop]: 40 mSDtfsCounter, 29 mSDsluCounter, 83 mSDsCounter, 0 mSdLazyCounter, 35 mSolverCounterSat, 28 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 29 SdHoareTripleChecker+Valid, 123 SdHoareTripleChecker+Invalid, 63 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 28 IncrementalHoareTripleChecker+Valid, 35 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 12:36:02,810 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [29 Valid, 123 Invalid, 63 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [28 Valid, 35 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 12:36:02,810 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 86 states. [2022-04-08 12:36:02,882 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 86 to 86. [2022-04-08 12:36:02,882 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:36:02,882 INFO L82 GeneralOperation]: Start isEquivalent. First operand 86 states. Second operand has 86 states, 62 states have (on average 1.1935483870967742) internal successors, (74), 62 states have internal predecessors, (74), 16 states have call successors, (16), 9 states have call predecessors, (16), 7 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-08 12:36:02,882 INFO L74 IsIncluded]: Start isIncluded. First operand 86 states. Second operand has 86 states, 62 states have (on average 1.1935483870967742) internal successors, (74), 62 states have internal predecessors, (74), 16 states have call successors, (16), 9 states have call predecessors, (16), 7 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-08 12:36:02,883 INFO L87 Difference]: Start difference. First operand 86 states. Second operand has 86 states, 62 states have (on average 1.1935483870967742) internal successors, (74), 62 states have internal predecessors, (74), 16 states have call successors, (16), 9 states have call predecessors, (16), 7 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-08 12:36:02,884 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:02,884 INFO L93 Difference]: Finished difference Result 86 states and 104 transitions. [2022-04-08 12:36:02,884 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 104 transitions. [2022-04-08 12:36:02,884 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:02,884 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:02,884 INFO L74 IsIncluded]: Start isIncluded. First operand has 86 states, 62 states have (on average 1.1935483870967742) internal successors, (74), 62 states have internal predecessors, (74), 16 states have call successors, (16), 9 states have call predecessors, (16), 7 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) Second operand 86 states. [2022-04-08 12:36:02,885 INFO L87 Difference]: Start difference. First operand has 86 states, 62 states have (on average 1.1935483870967742) internal successors, (74), 62 states have internal predecessors, (74), 16 states have call successors, (16), 9 states have call predecessors, (16), 7 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) Second operand 86 states. [2022-04-08 12:36:02,886 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:02,886 INFO L93 Difference]: Finished difference Result 86 states and 104 transitions. [2022-04-08 12:36:02,886 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 104 transitions. [2022-04-08 12:36:02,886 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:02,886 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:02,886 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:36:02,886 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:36:02,886 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 86 states, 62 states have (on average 1.1935483870967742) internal successors, (74), 62 states have internal predecessors, (74), 16 states have call successors, (16), 9 states have call predecessors, (16), 7 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-08 12:36:02,888 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 86 states to 86 states and 104 transitions. [2022-04-08 12:36:02,888 INFO L78 Accepts]: Start accepts. Automaton has 86 states and 104 transitions. Word has length 51 [2022-04-08 12:36:02,888 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:36:02,888 INFO L478 AbstractCegarLoop]: Abstraction has 86 states and 104 transitions. [2022-04-08 12:36:02,888 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 4.857142857142857) internal successors, (34), 6 states have internal predecessors, (34), 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-08 12:36:02,888 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 86 states and 104 transitions. [2022-04-08 12:36:03,877 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 104 edges. 104 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:03,877 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 104 transitions. [2022-04-08 12:36:03,877 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-08 12:36:03,877 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:36:03,877 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 12:36:03,883 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-08 12:36:04,081 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-08 12:36:04,081 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:36:04,081 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:36:04,082 INFO L85 PathProgramCache]: Analyzing trace with hash -1067781299, now seen corresponding path program 1 times [2022-04-08 12:36:04,082 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:04,082 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [258613006] [2022-04-08 12:36:04,082 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:36:04,082 INFO L85 PathProgramCache]: Analyzing trace with hash -1067781299, now seen corresponding path program 2 times [2022-04-08 12:36:04,082 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:36:04,082 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1489842010] [2022-04-08 12:36:04,082 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:36:04,082 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:36:04,094 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:36:04,094 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [44432841] [2022-04-08 12:36:04,094 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:36:04,094 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:36:04,094 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:36:04,095 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-08 12:36:04,096 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-08 12:36:04,130 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:36:04,130 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:36:04,130 INFO L263 TraceCheckSpWp]: Trace formula consists of 157 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-08 12:36:04,141 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:36:04,141 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:36:04,393 INFO L272 TraceCheckUtils]: 0: Hoare triple {6080#true} call ULTIMATE.init(); {6080#true} is VALID [2022-04-08 12:36:04,394 INFO L290 TraceCheckUtils]: 1: Hoare triple {6080#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; {6088#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:04,394 INFO L290 TraceCheckUtils]: 2: Hoare triple {6088#(<= ~counter~0 0)} assume true; {6088#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:04,394 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6088#(<= ~counter~0 0)} {6080#true} #102#return; {6088#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:04,395 INFO L272 TraceCheckUtils]: 4: Hoare triple {6088#(<= ~counter~0 0)} call #t~ret9 := main(); {6088#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:04,395 INFO L290 TraceCheckUtils]: 5: Hoare triple {6088#(<= ~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; {6088#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:04,395 INFO L272 TraceCheckUtils]: 6: Hoare triple {6088#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {6088#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:04,396 INFO L290 TraceCheckUtils]: 7: Hoare triple {6088#(<= ~counter~0 0)} ~cond := #in~cond; {6088#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:04,396 INFO L290 TraceCheckUtils]: 8: Hoare triple {6088#(<= ~counter~0 0)} assume !(0 == ~cond); {6088#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:04,396 INFO L290 TraceCheckUtils]: 9: Hoare triple {6088#(<= ~counter~0 0)} assume true; {6088#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:04,396 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6088#(<= ~counter~0 0)} {6088#(<= ~counter~0 0)} #90#return; {6088#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:04,397 INFO L272 TraceCheckUtils]: 11: Hoare triple {6088#(<= ~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)); {6088#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:04,397 INFO L290 TraceCheckUtils]: 12: Hoare triple {6088#(<= ~counter~0 0)} ~cond := #in~cond; {6088#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:04,397 INFO L290 TraceCheckUtils]: 13: Hoare triple {6088#(<= ~counter~0 0)} assume !(0 == ~cond); {6088#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:04,398 INFO L290 TraceCheckUtils]: 14: Hoare triple {6088#(<= ~counter~0 0)} assume true; {6088#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:04,398 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {6088#(<= ~counter~0 0)} {6088#(<= ~counter~0 0)} #92#return; {6088#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:04,398 INFO L290 TraceCheckUtils]: 16: Hoare triple {6088#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {6088#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:04,399 INFO L290 TraceCheckUtils]: 17: Hoare triple {6088#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6137#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:04,399 INFO L290 TraceCheckUtils]: 18: Hoare triple {6137#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {6137#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:04,399 INFO L272 TraceCheckUtils]: 19: Hoare triple {6137#(<= ~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)); {6137#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:04,400 INFO L290 TraceCheckUtils]: 20: Hoare triple {6137#(<= ~counter~0 1)} ~cond := #in~cond; {6137#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:04,400 INFO L290 TraceCheckUtils]: 21: Hoare triple {6137#(<= ~counter~0 1)} assume !(0 == ~cond); {6137#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:04,400 INFO L290 TraceCheckUtils]: 22: Hoare triple {6137#(<= ~counter~0 1)} assume true; {6137#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:04,401 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {6137#(<= ~counter~0 1)} {6137#(<= ~counter~0 1)} #94#return; {6137#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:04,401 INFO L290 TraceCheckUtils]: 24: Hoare triple {6137#(<= ~counter~0 1)} assume !!(0 != ~r~0); {6137#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:04,401 INFO L290 TraceCheckUtils]: 25: Hoare triple {6137#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6162#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:04,401 INFO L290 TraceCheckUtils]: 26: Hoare triple {6162#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {6162#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:04,402 INFO L272 TraceCheckUtils]: 27: Hoare triple {6162#(<= ~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)); {6162#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:04,402 INFO L290 TraceCheckUtils]: 28: Hoare triple {6162#(<= ~counter~0 2)} ~cond := #in~cond; {6162#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:04,402 INFO L290 TraceCheckUtils]: 29: Hoare triple {6162#(<= ~counter~0 2)} assume !(0 == ~cond); {6162#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:04,403 INFO L290 TraceCheckUtils]: 30: Hoare triple {6162#(<= ~counter~0 2)} assume true; {6162#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:04,403 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {6162#(<= ~counter~0 2)} {6162#(<= ~counter~0 2)} #96#return; {6162#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:04,403 INFO L290 TraceCheckUtils]: 32: Hoare triple {6162#(<= ~counter~0 2)} assume !(~r~0 > 0); {6162#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:04,404 INFO L290 TraceCheckUtils]: 33: Hoare triple {6162#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {6187#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:04,404 INFO L290 TraceCheckUtils]: 34: Hoare triple {6187#(<= ~counter~0 3)} assume !!(#t~post8 < 10);havoc #t~post8; {6187#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:04,404 INFO L272 TraceCheckUtils]: 35: Hoare triple {6187#(<= ~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)); {6187#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:04,405 INFO L290 TraceCheckUtils]: 36: Hoare triple {6187#(<= ~counter~0 3)} ~cond := #in~cond; {6187#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:04,405 INFO L290 TraceCheckUtils]: 37: Hoare triple {6187#(<= ~counter~0 3)} assume !(0 == ~cond); {6187#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:04,405 INFO L290 TraceCheckUtils]: 38: Hoare triple {6187#(<= ~counter~0 3)} assume true; {6187#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:04,406 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {6187#(<= ~counter~0 3)} {6187#(<= ~counter~0 3)} #98#return; {6187#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:04,406 INFO L290 TraceCheckUtils]: 40: Hoare triple {6187#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {6187#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:04,406 INFO L290 TraceCheckUtils]: 41: Hoare triple {6187#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {6212#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:04,407 INFO L290 TraceCheckUtils]: 42: Hoare triple {6212#(<= ~counter~0 4)} assume !!(#t~post8 < 10);havoc #t~post8; {6212#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:04,407 INFO L272 TraceCheckUtils]: 43: Hoare triple {6212#(<= ~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)); {6212#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:04,407 INFO L290 TraceCheckUtils]: 44: Hoare triple {6212#(<= ~counter~0 4)} ~cond := #in~cond; {6212#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:04,408 INFO L290 TraceCheckUtils]: 45: Hoare triple {6212#(<= ~counter~0 4)} assume !(0 == ~cond); {6212#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:04,408 INFO L290 TraceCheckUtils]: 46: Hoare triple {6212#(<= ~counter~0 4)} assume true; {6212#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:04,408 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {6212#(<= ~counter~0 4)} {6212#(<= ~counter~0 4)} #98#return; {6212#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:04,409 INFO L290 TraceCheckUtils]: 48: Hoare triple {6212#(<= ~counter~0 4)} assume !(~r~0 < 0); {6212#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:04,409 INFO L290 TraceCheckUtils]: 49: Hoare triple {6212#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6237#(<= |main_#t~post6| 4)} is VALID [2022-04-08 12:36:04,409 INFO L290 TraceCheckUtils]: 50: Hoare triple {6237#(<= |main_#t~post6| 4)} assume !(#t~post6 < 10);havoc #t~post6; {6081#false} is VALID [2022-04-08 12:36:04,409 INFO L272 TraceCheckUtils]: 51: Hoare triple {6081#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)); {6081#false} is VALID [2022-04-08 12:36:04,409 INFO L290 TraceCheckUtils]: 52: Hoare triple {6081#false} ~cond := #in~cond; {6081#false} is VALID [2022-04-08 12:36:04,409 INFO L290 TraceCheckUtils]: 53: Hoare triple {6081#false} assume 0 == ~cond; {6081#false} is VALID [2022-04-08 12:36:04,409 INFO L290 TraceCheckUtils]: 54: Hoare triple {6081#false} assume !false; {6081#false} is VALID [2022-04-08 12:36:04,410 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 8 proven. 30 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 12:36:04,410 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:36:04,708 INFO L290 TraceCheckUtils]: 54: Hoare triple {6081#false} assume !false; {6081#false} is VALID [2022-04-08 12:36:04,708 INFO L290 TraceCheckUtils]: 53: Hoare triple {6081#false} assume 0 == ~cond; {6081#false} is VALID [2022-04-08 12:36:04,708 INFO L290 TraceCheckUtils]: 52: Hoare triple {6081#false} ~cond := #in~cond; {6081#false} is VALID [2022-04-08 12:36:04,708 INFO L272 TraceCheckUtils]: 51: Hoare triple {6081#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)); {6081#false} is VALID [2022-04-08 12:36:04,708 INFO L290 TraceCheckUtils]: 50: Hoare triple {6265#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {6081#false} is VALID [2022-04-08 12:36:04,709 INFO L290 TraceCheckUtils]: 49: Hoare triple {6269#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6265#(< |main_#t~post6| 10)} is VALID [2022-04-08 12:36:04,709 INFO L290 TraceCheckUtils]: 48: Hoare triple {6269#(< ~counter~0 10)} assume !(~r~0 < 0); {6269#(< ~counter~0 10)} is VALID [2022-04-08 12:36:04,709 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {6080#true} {6269#(< ~counter~0 10)} #98#return; {6269#(< ~counter~0 10)} is VALID [2022-04-08 12:36:04,710 INFO L290 TraceCheckUtils]: 46: Hoare triple {6080#true} assume true; {6080#true} is VALID [2022-04-08 12:36:04,710 INFO L290 TraceCheckUtils]: 45: Hoare triple {6080#true} assume !(0 == ~cond); {6080#true} is VALID [2022-04-08 12:36:04,710 INFO L290 TraceCheckUtils]: 44: Hoare triple {6080#true} ~cond := #in~cond; {6080#true} is VALID [2022-04-08 12:36:04,710 INFO L272 TraceCheckUtils]: 43: Hoare triple {6269#(< ~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)); {6080#true} is VALID [2022-04-08 12:36:04,710 INFO L290 TraceCheckUtils]: 42: Hoare triple {6269#(< ~counter~0 10)} assume !!(#t~post8 < 10);havoc #t~post8; {6269#(< ~counter~0 10)} is VALID [2022-04-08 12:36:04,710 INFO L290 TraceCheckUtils]: 41: Hoare triple {6294#(< ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {6269#(< ~counter~0 10)} is VALID [2022-04-08 12:36:04,711 INFO L290 TraceCheckUtils]: 40: Hoare triple {6294#(< ~counter~0 9)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {6294#(< ~counter~0 9)} is VALID [2022-04-08 12:36:04,711 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {6080#true} {6294#(< ~counter~0 9)} #98#return; {6294#(< ~counter~0 9)} is VALID [2022-04-08 12:36:04,711 INFO L290 TraceCheckUtils]: 38: Hoare triple {6080#true} assume true; {6080#true} is VALID [2022-04-08 12:36:04,711 INFO L290 TraceCheckUtils]: 37: Hoare triple {6080#true} assume !(0 == ~cond); {6080#true} is VALID [2022-04-08 12:36:04,711 INFO L290 TraceCheckUtils]: 36: Hoare triple {6080#true} ~cond := #in~cond; {6080#true} is VALID [2022-04-08 12:36:04,711 INFO L272 TraceCheckUtils]: 35: Hoare triple {6294#(< ~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)); {6080#true} is VALID [2022-04-08 12:36:04,712 INFO L290 TraceCheckUtils]: 34: Hoare triple {6294#(< ~counter~0 9)} assume !!(#t~post8 < 10);havoc #t~post8; {6294#(< ~counter~0 9)} is VALID [2022-04-08 12:36:04,712 INFO L290 TraceCheckUtils]: 33: Hoare triple {6319#(< ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {6294#(< ~counter~0 9)} is VALID [2022-04-08 12:36:04,712 INFO L290 TraceCheckUtils]: 32: Hoare triple {6319#(< ~counter~0 8)} assume !(~r~0 > 0); {6319#(< ~counter~0 8)} is VALID [2022-04-08 12:36:04,713 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {6080#true} {6319#(< ~counter~0 8)} #96#return; {6319#(< ~counter~0 8)} is VALID [2022-04-08 12:36:04,713 INFO L290 TraceCheckUtils]: 30: Hoare triple {6080#true} assume true; {6080#true} is VALID [2022-04-08 12:36:04,713 INFO L290 TraceCheckUtils]: 29: Hoare triple {6080#true} assume !(0 == ~cond); {6080#true} is VALID [2022-04-08 12:36:04,713 INFO L290 TraceCheckUtils]: 28: Hoare triple {6080#true} ~cond := #in~cond; {6080#true} is VALID [2022-04-08 12:36:04,713 INFO L272 TraceCheckUtils]: 27: Hoare triple {6319#(< ~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)); {6080#true} is VALID [2022-04-08 12:36:04,713 INFO L290 TraceCheckUtils]: 26: Hoare triple {6319#(< ~counter~0 8)} assume !!(#t~post7 < 10);havoc #t~post7; {6319#(< ~counter~0 8)} is VALID [2022-04-08 12:36:04,714 INFO L290 TraceCheckUtils]: 25: Hoare triple {6344#(< ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6319#(< ~counter~0 8)} is VALID [2022-04-08 12:36:04,727 INFO L290 TraceCheckUtils]: 24: Hoare triple {6344#(< ~counter~0 7)} assume !!(0 != ~r~0); {6344#(< ~counter~0 7)} is VALID [2022-04-08 12:36:04,728 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {6080#true} {6344#(< ~counter~0 7)} #94#return; {6344#(< ~counter~0 7)} is VALID [2022-04-08 12:36:04,728 INFO L290 TraceCheckUtils]: 22: Hoare triple {6080#true} assume true; {6080#true} is VALID [2022-04-08 12:36:04,728 INFO L290 TraceCheckUtils]: 21: Hoare triple {6080#true} assume !(0 == ~cond); {6080#true} is VALID [2022-04-08 12:36:04,728 INFO L290 TraceCheckUtils]: 20: Hoare triple {6080#true} ~cond := #in~cond; {6080#true} is VALID [2022-04-08 12:36:04,728 INFO L272 TraceCheckUtils]: 19: Hoare triple {6344#(< ~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)); {6080#true} is VALID [2022-04-08 12:36:04,728 INFO L290 TraceCheckUtils]: 18: Hoare triple {6344#(< ~counter~0 7)} assume !!(#t~post6 < 10);havoc #t~post6; {6344#(< ~counter~0 7)} is VALID [2022-04-08 12:36:04,729 INFO L290 TraceCheckUtils]: 17: Hoare triple {6369#(< ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6344#(< ~counter~0 7)} is VALID [2022-04-08 12:36:04,729 INFO L290 TraceCheckUtils]: 16: Hoare triple {6369#(< ~counter~0 6)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {6369#(< ~counter~0 6)} is VALID [2022-04-08 12:36:04,730 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {6080#true} {6369#(< ~counter~0 6)} #92#return; {6369#(< ~counter~0 6)} is VALID [2022-04-08 12:36:04,730 INFO L290 TraceCheckUtils]: 14: Hoare triple {6080#true} assume true; {6080#true} is VALID [2022-04-08 12:36:04,730 INFO L290 TraceCheckUtils]: 13: Hoare triple {6080#true} assume !(0 == ~cond); {6080#true} is VALID [2022-04-08 12:36:04,730 INFO L290 TraceCheckUtils]: 12: Hoare triple {6080#true} ~cond := #in~cond; {6080#true} is VALID [2022-04-08 12:36:04,730 INFO L272 TraceCheckUtils]: 11: Hoare triple {6369#(< ~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)); {6080#true} is VALID [2022-04-08 12:36:04,730 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6080#true} {6369#(< ~counter~0 6)} #90#return; {6369#(< ~counter~0 6)} is VALID [2022-04-08 12:36:04,730 INFO L290 TraceCheckUtils]: 9: Hoare triple {6080#true} assume true; {6080#true} is VALID [2022-04-08 12:36:04,730 INFO L290 TraceCheckUtils]: 8: Hoare triple {6080#true} assume !(0 == ~cond); {6080#true} is VALID [2022-04-08 12:36:04,731 INFO L290 TraceCheckUtils]: 7: Hoare triple {6080#true} ~cond := #in~cond; {6080#true} is VALID [2022-04-08 12:36:04,731 INFO L272 TraceCheckUtils]: 6: Hoare triple {6369#(< ~counter~0 6)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {6080#true} is VALID [2022-04-08 12:36:04,731 INFO L290 TraceCheckUtils]: 5: Hoare triple {6369#(< ~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; {6369#(< ~counter~0 6)} is VALID [2022-04-08 12:36:04,731 INFO L272 TraceCheckUtils]: 4: Hoare triple {6369#(< ~counter~0 6)} call #t~ret9 := main(); {6369#(< ~counter~0 6)} is VALID [2022-04-08 12:36:04,732 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6369#(< ~counter~0 6)} {6080#true} #102#return; {6369#(< ~counter~0 6)} is VALID [2022-04-08 12:36:04,732 INFO L290 TraceCheckUtils]: 2: Hoare triple {6369#(< ~counter~0 6)} assume true; {6369#(< ~counter~0 6)} is VALID [2022-04-08 12:36:04,732 INFO L290 TraceCheckUtils]: 1: Hoare triple {6080#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; {6369#(< ~counter~0 6)} is VALID [2022-04-08 12:36:04,732 INFO L272 TraceCheckUtils]: 0: Hoare triple {6080#true} call ULTIMATE.init(); {6080#true} is VALID [2022-04-08 12:36:04,733 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 8 proven. 6 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-08 12:36:04,733 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:36:04,733 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1489842010] [2022-04-08 12:36:04,733 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:36:04,733 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [44432841] [2022-04-08 12:36:04,733 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [44432841] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:36:04,733 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:36:04,733 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-08 12:36:04,733 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:36:04,733 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [258613006] [2022-04-08 12:36:04,733 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [258613006] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:36:04,733 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:36:04,733 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 12:36:04,734 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [997656492] [2022-04-08 12:36:04,734 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:36:04,734 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.5) internal successors, (36), 7 states have internal predecessors, (36), 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 55 [2022-04-08 12:36:04,734 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:36:04,734 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.5) internal successors, (36), 7 states have internal predecessors, (36), 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-08 12:36:04,765 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:04,766 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 12:36:04,766 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:04,766 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 12:36:04,766 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-08 12:36:04,766 INFO L87 Difference]: Start difference. First operand 86 states and 104 transitions. Second operand has 8 states, 8 states have (on average 4.5) internal successors, (36), 7 states have internal predecessors, (36), 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-08 12:36:05,048 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:05,049 INFO L93 Difference]: Finished difference Result 103 states and 124 transitions. [2022-04-08 12:36:05,049 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 12:36:05,049 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.5) internal successors, (36), 7 states have internal predecessors, (36), 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 55 [2022-04-08 12:36:05,049 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:36:05,049 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.5) internal successors, (36), 7 states have internal predecessors, (36), 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-08 12:36:05,050 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 95 transitions. [2022-04-08 12:36:05,050 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.5) internal successors, (36), 7 states have internal predecessors, (36), 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-08 12:36:05,051 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 95 transitions. [2022-04-08 12:36:05,051 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 95 transitions. [2022-04-08 12:36:05,126 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-08 12:36:05,127 INFO L225 Difference]: With dead ends: 103 [2022-04-08 12:36:05,127 INFO L226 Difference]: Without dead ends: 98 [2022-04-08 12:36:05,127 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 110 GetRequests, 97 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=84, Invalid=126, Unknown=0, NotChecked=0, Total=210 [2022-04-08 12:36:05,128 INFO L913 BasicCegarLoop]: 42 mSDtfsCounter, 35 mSDsluCounter, 101 mSDsCounter, 0 mSdLazyCounter, 49 mSolverCounterSat, 33 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 35 SdHoareTripleChecker+Valid, 143 SdHoareTripleChecker+Invalid, 82 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 33 IncrementalHoareTripleChecker+Valid, 49 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 12:36:05,128 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [35 Valid, 143 Invalid, 82 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [33 Valid, 49 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 12:36:05,128 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 98 states. [2022-04-08 12:36:05,199 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 98 to 95. [2022-04-08 12:36:05,199 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:36:05,200 INFO L82 GeneralOperation]: Start isEquivalent. First operand 98 states. Second operand has 95 states, 68 states have (on average 1.1911764705882353) internal successors, (81), 69 states have internal predecessors, (81), 18 states have call successors, (18), 10 states have call predecessors, (18), 8 states have return successors, (16), 15 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 12:36:05,200 INFO L74 IsIncluded]: Start isIncluded. First operand 98 states. Second operand has 95 states, 68 states have (on average 1.1911764705882353) internal successors, (81), 69 states have internal predecessors, (81), 18 states have call successors, (18), 10 states have call predecessors, (18), 8 states have return successors, (16), 15 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 12:36:05,200 INFO L87 Difference]: Start difference. First operand 98 states. Second operand has 95 states, 68 states have (on average 1.1911764705882353) internal successors, (81), 69 states have internal predecessors, (81), 18 states have call successors, (18), 10 states have call predecessors, (18), 8 states have return successors, (16), 15 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 12:36:05,202 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:05,202 INFO L93 Difference]: Finished difference Result 98 states and 119 transitions. [2022-04-08 12:36:05,203 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 119 transitions. [2022-04-08 12:36:05,203 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:05,203 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:05,203 INFO L74 IsIncluded]: Start isIncluded. First operand has 95 states, 68 states have (on average 1.1911764705882353) internal successors, (81), 69 states have internal predecessors, (81), 18 states have call successors, (18), 10 states have call predecessors, (18), 8 states have return successors, (16), 15 states have call predecessors, (16), 16 states have call successors, (16) Second operand 98 states. [2022-04-08 12:36:05,203 INFO L87 Difference]: Start difference. First operand has 95 states, 68 states have (on average 1.1911764705882353) internal successors, (81), 69 states have internal predecessors, (81), 18 states have call successors, (18), 10 states have call predecessors, (18), 8 states have return successors, (16), 15 states have call predecessors, (16), 16 states have call successors, (16) Second operand 98 states. [2022-04-08 12:36:05,205 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:05,205 INFO L93 Difference]: Finished difference Result 98 states and 119 transitions. [2022-04-08 12:36:05,205 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 119 transitions. [2022-04-08 12:36:05,206 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:05,206 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:05,206 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:36:05,206 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:36:05,207 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 95 states, 68 states have (on average 1.1911764705882353) internal successors, (81), 69 states have internal predecessors, (81), 18 states have call successors, (18), 10 states have call predecessors, (18), 8 states have return successors, (16), 15 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 12:36:05,209 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 95 states to 95 states and 115 transitions. [2022-04-08 12:36:05,209 INFO L78 Accepts]: Start accepts. Automaton has 95 states and 115 transitions. Word has length 55 [2022-04-08 12:36:05,210 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:36:05,210 INFO L478 AbstractCegarLoop]: Abstraction has 95 states and 115 transitions. [2022-04-08 12:36:05,210 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.5) internal successors, (36), 7 states have internal predecessors, (36), 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-08 12:36:05,210 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 95 states and 115 transitions. [2022-04-08 12:36:07,316 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 115 edges. 114 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:07,316 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 115 transitions. [2022-04-08 12:36:07,317 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 58 [2022-04-08 12:36:07,317 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:36:07,317 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 12:36:07,336 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Forceful destruction successful, exit code 0 [2022-04-08 12:36:07,517 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-08 12:36:07,517 INFO L403 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:36:07,518 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:36:07,518 INFO L85 PathProgramCache]: Analyzing trace with hash -2095290798, now seen corresponding path program 3 times [2022-04-08 12:36:07,518 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:07,518 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1520067724] [2022-04-08 12:36:07,518 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:36:07,518 INFO L85 PathProgramCache]: Analyzing trace with hash -2095290798, now seen corresponding path program 4 times [2022-04-08 12:36:07,518 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:36:07,519 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1977123282] [2022-04-08 12:36:07,519 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:36:07,519 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:36:07,528 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:36:07,528 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [722466582] [2022-04-08 12:36:07,528 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 12:36:07,528 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:36:07,528 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:36:07,529 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-08 12:36:07,529 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-08 12:36:07,587 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 12:36:07,587 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:36:07,587 INFO L263 TraceCheckSpWp]: Trace formula consists of 166 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-08 12:36:07,597 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:36:07,598 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:36:07,823 INFO L272 TraceCheckUtils]: 0: Hoare triple {7017#true} call ULTIMATE.init(); {7017#true} is VALID [2022-04-08 12:36:07,823 INFO L290 TraceCheckUtils]: 1: Hoare triple {7017#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; {7025#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:07,824 INFO L290 TraceCheckUtils]: 2: Hoare triple {7025#(<= ~counter~0 0)} assume true; {7025#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:07,824 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7025#(<= ~counter~0 0)} {7017#true} #102#return; {7025#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:07,824 INFO L272 TraceCheckUtils]: 4: Hoare triple {7025#(<= ~counter~0 0)} call #t~ret9 := main(); {7025#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:07,824 INFO L290 TraceCheckUtils]: 5: Hoare triple {7025#(<= ~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; {7025#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:07,825 INFO L272 TraceCheckUtils]: 6: Hoare triple {7025#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {7025#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:07,825 INFO L290 TraceCheckUtils]: 7: Hoare triple {7025#(<= ~counter~0 0)} ~cond := #in~cond; {7025#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:07,825 INFO L290 TraceCheckUtils]: 8: Hoare triple {7025#(<= ~counter~0 0)} assume !(0 == ~cond); {7025#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:07,826 INFO L290 TraceCheckUtils]: 9: Hoare triple {7025#(<= ~counter~0 0)} assume true; {7025#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:07,826 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7025#(<= ~counter~0 0)} {7025#(<= ~counter~0 0)} #90#return; {7025#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:07,826 INFO L272 TraceCheckUtils]: 11: Hoare triple {7025#(<= ~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)); {7025#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:07,827 INFO L290 TraceCheckUtils]: 12: Hoare triple {7025#(<= ~counter~0 0)} ~cond := #in~cond; {7025#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:07,827 INFO L290 TraceCheckUtils]: 13: Hoare triple {7025#(<= ~counter~0 0)} assume !(0 == ~cond); {7025#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:07,827 INFO L290 TraceCheckUtils]: 14: Hoare triple {7025#(<= ~counter~0 0)} assume true; {7025#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:07,827 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7025#(<= ~counter~0 0)} {7025#(<= ~counter~0 0)} #92#return; {7025#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:07,828 INFO L290 TraceCheckUtils]: 16: Hoare triple {7025#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {7025#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:07,828 INFO L290 TraceCheckUtils]: 17: Hoare triple {7025#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7074#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:07,828 INFO L290 TraceCheckUtils]: 18: Hoare triple {7074#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {7074#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:07,829 INFO L272 TraceCheckUtils]: 19: Hoare triple {7074#(<= ~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)); {7074#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:07,829 INFO L290 TraceCheckUtils]: 20: Hoare triple {7074#(<= ~counter~0 1)} ~cond := #in~cond; {7074#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:07,829 INFO L290 TraceCheckUtils]: 21: Hoare triple {7074#(<= ~counter~0 1)} assume !(0 == ~cond); {7074#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:07,830 INFO L290 TraceCheckUtils]: 22: Hoare triple {7074#(<= ~counter~0 1)} assume true; {7074#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:07,830 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {7074#(<= ~counter~0 1)} {7074#(<= ~counter~0 1)} #94#return; {7074#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:07,830 INFO L290 TraceCheckUtils]: 24: Hoare triple {7074#(<= ~counter~0 1)} assume !!(0 != ~r~0); {7074#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:07,831 INFO L290 TraceCheckUtils]: 25: Hoare triple {7074#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7099#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:07,831 INFO L290 TraceCheckUtils]: 26: Hoare triple {7099#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {7099#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:07,831 INFO L272 TraceCheckUtils]: 27: Hoare triple {7099#(<= ~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)); {7099#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:07,832 INFO L290 TraceCheckUtils]: 28: Hoare triple {7099#(<= ~counter~0 2)} ~cond := #in~cond; {7099#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:07,832 INFO L290 TraceCheckUtils]: 29: Hoare triple {7099#(<= ~counter~0 2)} assume !(0 == ~cond); {7099#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:07,832 INFO L290 TraceCheckUtils]: 30: Hoare triple {7099#(<= ~counter~0 2)} assume true; {7099#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:07,833 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {7099#(<= ~counter~0 2)} {7099#(<= ~counter~0 2)} #96#return; {7099#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:07,833 INFO L290 TraceCheckUtils]: 32: Hoare triple {7099#(<= ~counter~0 2)} assume !(~r~0 > 0); {7099#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:07,833 INFO L290 TraceCheckUtils]: 33: Hoare triple {7099#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {7124#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:07,834 INFO L290 TraceCheckUtils]: 34: Hoare triple {7124#(<= ~counter~0 3)} assume !!(#t~post8 < 10);havoc #t~post8; {7124#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:07,834 INFO L272 TraceCheckUtils]: 35: Hoare triple {7124#(<= ~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)); {7124#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:07,834 INFO L290 TraceCheckUtils]: 36: Hoare triple {7124#(<= ~counter~0 3)} ~cond := #in~cond; {7124#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:07,834 INFO L290 TraceCheckUtils]: 37: Hoare triple {7124#(<= ~counter~0 3)} assume !(0 == ~cond); {7124#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:07,835 INFO L290 TraceCheckUtils]: 38: Hoare triple {7124#(<= ~counter~0 3)} assume true; {7124#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:07,835 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {7124#(<= ~counter~0 3)} {7124#(<= ~counter~0 3)} #98#return; {7124#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:07,835 INFO L290 TraceCheckUtils]: 40: Hoare triple {7124#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {7124#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:07,836 INFO L290 TraceCheckUtils]: 41: Hoare triple {7124#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {7149#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:07,836 INFO L290 TraceCheckUtils]: 42: Hoare triple {7149#(<= ~counter~0 4)} assume !!(#t~post8 < 10);havoc #t~post8; {7149#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:07,837 INFO L272 TraceCheckUtils]: 43: Hoare triple {7149#(<= ~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)); {7149#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:07,837 INFO L290 TraceCheckUtils]: 44: Hoare triple {7149#(<= ~counter~0 4)} ~cond := #in~cond; {7149#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:07,837 INFO L290 TraceCheckUtils]: 45: Hoare triple {7149#(<= ~counter~0 4)} assume !(0 == ~cond); {7149#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:07,837 INFO L290 TraceCheckUtils]: 46: Hoare triple {7149#(<= ~counter~0 4)} assume true; {7149#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:07,838 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {7149#(<= ~counter~0 4)} {7149#(<= ~counter~0 4)} #98#return; {7149#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:07,838 INFO L290 TraceCheckUtils]: 48: Hoare triple {7149#(<= ~counter~0 4)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {7149#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:07,838 INFO L290 TraceCheckUtils]: 49: Hoare triple {7149#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {7174#(<= |main_#t~post8| 4)} is VALID [2022-04-08 12:36:07,839 INFO L290 TraceCheckUtils]: 50: Hoare triple {7174#(<= |main_#t~post8| 4)} assume !(#t~post8 < 10);havoc #t~post8; {7018#false} is VALID [2022-04-08 12:36:07,839 INFO L290 TraceCheckUtils]: 51: Hoare triple {7018#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7018#false} is VALID [2022-04-08 12:36:07,839 INFO L290 TraceCheckUtils]: 52: Hoare triple {7018#false} assume !(#t~post6 < 10);havoc #t~post6; {7018#false} is VALID [2022-04-08 12:36:07,839 INFO L272 TraceCheckUtils]: 53: Hoare triple {7018#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)); {7018#false} is VALID [2022-04-08 12:36:07,839 INFO L290 TraceCheckUtils]: 54: Hoare triple {7018#false} ~cond := #in~cond; {7018#false} is VALID [2022-04-08 12:36:07,839 INFO L290 TraceCheckUtils]: 55: Hoare triple {7018#false} assume 0 == ~cond; {7018#false} is VALID [2022-04-08 12:36:07,839 INFO L290 TraceCheckUtils]: 56: Hoare triple {7018#false} assume !false; {7018#false} is VALID [2022-04-08 12:36:07,839 INFO L134 CoverageAnalysis]: Checked inductivity of 46 backedges. 10 proven. 32 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 12:36:07,839 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:36:08,111 INFO L290 TraceCheckUtils]: 56: Hoare triple {7018#false} assume !false; {7018#false} is VALID [2022-04-08 12:36:08,112 INFO L290 TraceCheckUtils]: 55: Hoare triple {7018#false} assume 0 == ~cond; {7018#false} is VALID [2022-04-08 12:36:08,112 INFO L290 TraceCheckUtils]: 54: Hoare triple {7018#false} ~cond := #in~cond; {7018#false} is VALID [2022-04-08 12:36:08,112 INFO L272 TraceCheckUtils]: 53: Hoare triple {7018#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)); {7018#false} is VALID [2022-04-08 12:36:08,112 INFO L290 TraceCheckUtils]: 52: Hoare triple {7018#false} assume !(#t~post6 < 10);havoc #t~post6; {7018#false} is VALID [2022-04-08 12:36:08,112 INFO L290 TraceCheckUtils]: 51: Hoare triple {7018#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7018#false} is VALID [2022-04-08 12:36:08,113 INFO L290 TraceCheckUtils]: 50: Hoare triple {7214#(< |main_#t~post8| 10)} assume !(#t~post8 < 10);havoc #t~post8; {7018#false} is VALID [2022-04-08 12:36:08,113 INFO L290 TraceCheckUtils]: 49: Hoare triple {7218#(< ~counter~0 10)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {7214#(< |main_#t~post8| 10)} is VALID [2022-04-08 12:36:08,113 INFO L290 TraceCheckUtils]: 48: Hoare triple {7218#(< ~counter~0 10)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {7218#(< ~counter~0 10)} is VALID [2022-04-08 12:36:08,114 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {7017#true} {7218#(< ~counter~0 10)} #98#return; {7218#(< ~counter~0 10)} is VALID [2022-04-08 12:36:08,114 INFO L290 TraceCheckUtils]: 46: Hoare triple {7017#true} assume true; {7017#true} is VALID [2022-04-08 12:36:08,114 INFO L290 TraceCheckUtils]: 45: Hoare triple {7017#true} assume !(0 == ~cond); {7017#true} is VALID [2022-04-08 12:36:08,114 INFO L290 TraceCheckUtils]: 44: Hoare triple {7017#true} ~cond := #in~cond; {7017#true} is VALID [2022-04-08 12:36:08,114 INFO L272 TraceCheckUtils]: 43: Hoare triple {7218#(< ~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)); {7017#true} is VALID [2022-04-08 12:36:08,114 INFO L290 TraceCheckUtils]: 42: Hoare triple {7218#(< ~counter~0 10)} assume !!(#t~post8 < 10);havoc #t~post8; {7218#(< ~counter~0 10)} is VALID [2022-04-08 12:36:08,115 INFO L290 TraceCheckUtils]: 41: Hoare triple {7243#(< ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {7218#(< ~counter~0 10)} is VALID [2022-04-08 12:36:08,115 INFO L290 TraceCheckUtils]: 40: Hoare triple {7243#(< ~counter~0 9)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {7243#(< ~counter~0 9)} is VALID [2022-04-08 12:36:08,115 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {7017#true} {7243#(< ~counter~0 9)} #98#return; {7243#(< ~counter~0 9)} is VALID [2022-04-08 12:36:08,116 INFO L290 TraceCheckUtils]: 38: Hoare triple {7017#true} assume true; {7017#true} is VALID [2022-04-08 12:36:08,116 INFO L290 TraceCheckUtils]: 37: Hoare triple {7017#true} assume !(0 == ~cond); {7017#true} is VALID [2022-04-08 12:36:08,116 INFO L290 TraceCheckUtils]: 36: Hoare triple {7017#true} ~cond := #in~cond; {7017#true} is VALID [2022-04-08 12:36:08,116 INFO L272 TraceCheckUtils]: 35: Hoare triple {7243#(< ~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)); {7017#true} is VALID [2022-04-08 12:36:08,127 INFO L290 TraceCheckUtils]: 34: Hoare triple {7243#(< ~counter~0 9)} assume !!(#t~post8 < 10);havoc #t~post8; {7243#(< ~counter~0 9)} is VALID [2022-04-08 12:36:08,128 INFO L290 TraceCheckUtils]: 33: Hoare triple {7268#(< ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {7243#(< ~counter~0 9)} is VALID [2022-04-08 12:36:08,128 INFO L290 TraceCheckUtils]: 32: Hoare triple {7268#(< ~counter~0 8)} assume !(~r~0 > 0); {7268#(< ~counter~0 8)} is VALID [2022-04-08 12:36:08,128 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {7017#true} {7268#(< ~counter~0 8)} #96#return; {7268#(< ~counter~0 8)} is VALID [2022-04-08 12:36:08,129 INFO L290 TraceCheckUtils]: 30: Hoare triple {7017#true} assume true; {7017#true} is VALID [2022-04-08 12:36:08,129 INFO L290 TraceCheckUtils]: 29: Hoare triple {7017#true} assume !(0 == ~cond); {7017#true} is VALID [2022-04-08 12:36:08,129 INFO L290 TraceCheckUtils]: 28: Hoare triple {7017#true} ~cond := #in~cond; {7017#true} is VALID [2022-04-08 12:36:08,129 INFO L272 TraceCheckUtils]: 27: Hoare triple {7268#(< ~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)); {7017#true} is VALID [2022-04-08 12:36:08,129 INFO L290 TraceCheckUtils]: 26: Hoare triple {7268#(< ~counter~0 8)} assume !!(#t~post7 < 10);havoc #t~post7; {7268#(< ~counter~0 8)} is VALID [2022-04-08 12:36:08,129 INFO L290 TraceCheckUtils]: 25: Hoare triple {7293#(< ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7268#(< ~counter~0 8)} is VALID [2022-04-08 12:36:08,130 INFO L290 TraceCheckUtils]: 24: Hoare triple {7293#(< ~counter~0 7)} assume !!(0 != ~r~0); {7293#(< ~counter~0 7)} is VALID [2022-04-08 12:36:08,130 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {7017#true} {7293#(< ~counter~0 7)} #94#return; {7293#(< ~counter~0 7)} is VALID [2022-04-08 12:36:08,130 INFO L290 TraceCheckUtils]: 22: Hoare triple {7017#true} assume true; {7017#true} is VALID [2022-04-08 12:36:08,130 INFO L290 TraceCheckUtils]: 21: Hoare triple {7017#true} assume !(0 == ~cond); {7017#true} is VALID [2022-04-08 12:36:08,130 INFO L290 TraceCheckUtils]: 20: Hoare triple {7017#true} ~cond := #in~cond; {7017#true} is VALID [2022-04-08 12:36:08,131 INFO L272 TraceCheckUtils]: 19: Hoare triple {7293#(< ~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)); {7017#true} is VALID [2022-04-08 12:36:08,131 INFO L290 TraceCheckUtils]: 18: Hoare triple {7293#(< ~counter~0 7)} assume !!(#t~post6 < 10);havoc #t~post6; {7293#(< ~counter~0 7)} is VALID [2022-04-08 12:36:08,131 INFO L290 TraceCheckUtils]: 17: Hoare triple {7318#(< ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7293#(< ~counter~0 7)} is VALID [2022-04-08 12:36:08,132 INFO L290 TraceCheckUtils]: 16: Hoare triple {7318#(< ~counter~0 6)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {7318#(< ~counter~0 6)} is VALID [2022-04-08 12:36:08,132 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7017#true} {7318#(< ~counter~0 6)} #92#return; {7318#(< ~counter~0 6)} is VALID [2022-04-08 12:36:08,132 INFO L290 TraceCheckUtils]: 14: Hoare triple {7017#true} assume true; {7017#true} is VALID [2022-04-08 12:36:08,132 INFO L290 TraceCheckUtils]: 13: Hoare triple {7017#true} assume !(0 == ~cond); {7017#true} is VALID [2022-04-08 12:36:08,132 INFO L290 TraceCheckUtils]: 12: Hoare triple {7017#true} ~cond := #in~cond; {7017#true} is VALID [2022-04-08 12:36:08,132 INFO L272 TraceCheckUtils]: 11: Hoare triple {7318#(< ~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)); {7017#true} is VALID [2022-04-08 12:36:08,133 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7017#true} {7318#(< ~counter~0 6)} #90#return; {7318#(< ~counter~0 6)} is VALID [2022-04-08 12:36:08,133 INFO L290 TraceCheckUtils]: 9: Hoare triple {7017#true} assume true; {7017#true} is VALID [2022-04-08 12:36:08,133 INFO L290 TraceCheckUtils]: 8: Hoare triple {7017#true} assume !(0 == ~cond); {7017#true} is VALID [2022-04-08 12:36:08,133 INFO L290 TraceCheckUtils]: 7: Hoare triple {7017#true} ~cond := #in~cond; {7017#true} is VALID [2022-04-08 12:36:08,133 INFO L272 TraceCheckUtils]: 6: Hoare triple {7318#(< ~counter~0 6)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {7017#true} is VALID [2022-04-08 12:36:08,133 INFO L290 TraceCheckUtils]: 5: Hoare triple {7318#(< ~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; {7318#(< ~counter~0 6)} is VALID [2022-04-08 12:36:08,133 INFO L272 TraceCheckUtils]: 4: Hoare triple {7318#(< ~counter~0 6)} call #t~ret9 := main(); {7318#(< ~counter~0 6)} is VALID [2022-04-08 12:36:08,134 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7318#(< ~counter~0 6)} {7017#true} #102#return; {7318#(< ~counter~0 6)} is VALID [2022-04-08 12:36:08,134 INFO L290 TraceCheckUtils]: 2: Hoare triple {7318#(< ~counter~0 6)} assume true; {7318#(< ~counter~0 6)} is VALID [2022-04-08 12:36:08,135 INFO L290 TraceCheckUtils]: 1: Hoare triple {7017#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; {7318#(< ~counter~0 6)} is VALID [2022-04-08 12:36:08,135 INFO L272 TraceCheckUtils]: 0: Hoare triple {7017#true} call ULTIMATE.init(); {7017#true} is VALID [2022-04-08 12:36:08,135 INFO L134 CoverageAnalysis]: Checked inductivity of 46 backedges. 10 proven. 8 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-08 12:36:08,135 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:36:08,135 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1977123282] [2022-04-08 12:36:08,135 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:36:08,135 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [722466582] [2022-04-08 12:36:08,135 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [722466582] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:36:08,135 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:36:08,135 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-08 12:36:08,135 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:36:08,135 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1520067724] [2022-04-08 12:36:08,136 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1520067724] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:36:08,136 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:36:08,136 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 12:36:08,136 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2030520665] [2022-04-08 12:36:08,136 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:36:08,136 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.75) internal successors, (38), 7 states have internal predecessors, (38), 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 57 [2022-04-08 12:36:08,136 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:36:08,136 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.75) internal successors, (38), 7 states have internal predecessors, (38), 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-08 12:36:08,171 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:08,171 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 12:36:08,171 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:08,171 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 12:36:08,171 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-08 12:36:08,172 INFO L87 Difference]: Start difference. First operand 95 states and 115 transitions. Second operand has 8 states, 8 states have (on average 4.75) internal successors, (38), 7 states have internal predecessors, (38), 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-08 12:36:08,454 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:08,454 INFO L93 Difference]: Finished difference Result 136 states and 173 transitions. [2022-04-08 12:36:08,454 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-08 12:36:08,454 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.75) internal successors, (38), 7 states have internal predecessors, (38), 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 57 [2022-04-08 12:36:08,454 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:36:08,454 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.75) internal successors, (38), 7 states have internal predecessors, (38), 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-08 12:36:08,455 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 117 transitions. [2022-04-08 12:36:08,456 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.75) internal successors, (38), 7 states have internal predecessors, (38), 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-08 12:36:08,457 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 117 transitions. [2022-04-08 12:36:08,457 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 117 transitions. [2022-04-08 12:36:08,529 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 117 edges. 117 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:08,530 INFO L225 Difference]: With dead ends: 136 [2022-04-08 12:36:08,530 INFO L226 Difference]: Without dead ends: 99 [2022-04-08 12:36:08,531 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 115 GetRequests, 101 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=93, Invalid=147, Unknown=0, NotChecked=0, Total=240 [2022-04-08 12:36:08,531 INFO L913 BasicCegarLoop]: 42 mSDtfsCounter, 42 mSDsluCounter, 94 mSDsCounter, 0 mSdLazyCounter, 38 mSolverCounterSat, 38 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 42 SdHoareTripleChecker+Valid, 136 SdHoareTripleChecker+Invalid, 76 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 38 IncrementalHoareTripleChecker+Valid, 38 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 12:36:08,531 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [42 Valid, 136 Invalid, 76 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [38 Valid, 38 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 12:36:08,532 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 99 states. [2022-04-08 12:36:08,604 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 99 to 98. [2022-04-08 12:36:08,604 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:36:08,604 INFO L82 GeneralOperation]: Start isEquivalent. First operand 99 states. Second operand has 98 states, 71 states have (on average 1.1971830985915493) internal successors, (85), 71 states have internal predecessors, (85), 18 states have call successors, (18), 10 states have call predecessors, (18), 8 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 12:36:08,604 INFO L74 IsIncluded]: Start isIncluded. First operand 99 states. Second operand has 98 states, 71 states have (on average 1.1971830985915493) internal successors, (85), 71 states have internal predecessors, (85), 18 states have call successors, (18), 10 states have call predecessors, (18), 8 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 12:36:08,604 INFO L87 Difference]: Start difference. First operand 99 states. Second operand has 98 states, 71 states have (on average 1.1971830985915493) internal successors, (85), 71 states have internal predecessors, (85), 18 states have call successors, (18), 10 states have call predecessors, (18), 8 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 12:36:08,606 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:08,606 INFO L93 Difference]: Finished difference Result 99 states and 120 transitions. [2022-04-08 12:36:08,606 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 120 transitions. [2022-04-08 12:36:08,606 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:08,606 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:08,606 INFO L74 IsIncluded]: Start isIncluded. First operand has 98 states, 71 states have (on average 1.1971830985915493) internal successors, (85), 71 states have internal predecessors, (85), 18 states have call successors, (18), 10 states have call predecessors, (18), 8 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 99 states. [2022-04-08 12:36:08,606 INFO L87 Difference]: Start difference. First operand has 98 states, 71 states have (on average 1.1971830985915493) internal successors, (85), 71 states have internal predecessors, (85), 18 states have call successors, (18), 10 states have call predecessors, (18), 8 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 99 states. [2022-04-08 12:36:08,608 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:08,608 INFO L93 Difference]: Finished difference Result 99 states and 120 transitions. [2022-04-08 12:36:08,608 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 120 transitions. [2022-04-08 12:36:08,608 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:08,608 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:08,608 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:36:08,608 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:36:08,608 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 98 states, 71 states have (on average 1.1971830985915493) internal successors, (85), 71 states have internal predecessors, (85), 18 states have call successors, (18), 10 states have call predecessors, (18), 8 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 12:36:08,610 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 98 states to 98 states and 119 transitions. [2022-04-08 12:36:08,610 INFO L78 Accepts]: Start accepts. Automaton has 98 states and 119 transitions. Word has length 57 [2022-04-08 12:36:08,610 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:36:08,610 INFO L478 AbstractCegarLoop]: Abstraction has 98 states and 119 transitions. [2022-04-08 12:36:08,610 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.75) internal successors, (38), 7 states have internal predecessors, (38), 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-08 12:36:08,610 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 98 states and 119 transitions. [2022-04-08 12:36:09,609 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 119 edges. 119 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:09,609 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 119 transitions. [2022-04-08 12:36:09,610 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 60 [2022-04-08 12:36:09,610 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:36:09,610 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 3, 3, 3, 3, 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-08 12:36:09,625 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-08 12:36:09,822 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-08 12:36:09,822 INFO L403 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:36:09,822 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:36:09,822 INFO L85 PathProgramCache]: Analyzing trace with hash -659642693, now seen corresponding path program 5 times [2022-04-08 12:36:09,822 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:09,823 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1539865998] [2022-04-08 12:36:09,823 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:36:09,823 INFO L85 PathProgramCache]: Analyzing trace with hash -659642693, now seen corresponding path program 6 times [2022-04-08 12:36:09,823 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:36:09,823 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [901463081] [2022-04-08 12:36:09,823 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:36:09,823 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:36:09,836 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:36:09,836 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [360898834] [2022-04-08 12:36:09,836 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 12:36:09,836 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:36:09,837 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:36:09,837 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-08 12:36:09,838 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-08 12:36:09,910 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-08 12:36:09,911 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:36:09,911 INFO L263 TraceCheckSpWp]: Trace formula consists of 175 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-08 12:36:09,922 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:36:09,935 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:36:10,194 INFO L272 TraceCheckUtils]: 0: Hoare triple {8042#true} call ULTIMATE.init(); {8042#true} is VALID [2022-04-08 12:36:10,195 INFO L290 TraceCheckUtils]: 1: Hoare triple {8042#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; {8050#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:10,195 INFO L290 TraceCheckUtils]: 2: Hoare triple {8050#(<= ~counter~0 0)} assume true; {8050#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:10,196 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8050#(<= ~counter~0 0)} {8042#true} #102#return; {8050#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:10,196 INFO L272 TraceCheckUtils]: 4: Hoare triple {8050#(<= ~counter~0 0)} call #t~ret9 := main(); {8050#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:10,196 INFO L290 TraceCheckUtils]: 5: Hoare triple {8050#(<= ~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; {8050#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:10,196 INFO L272 TraceCheckUtils]: 6: Hoare triple {8050#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {8050#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:10,197 INFO L290 TraceCheckUtils]: 7: Hoare triple {8050#(<= ~counter~0 0)} ~cond := #in~cond; {8050#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:10,197 INFO L290 TraceCheckUtils]: 8: Hoare triple {8050#(<= ~counter~0 0)} assume !(0 == ~cond); {8050#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:10,197 INFO L290 TraceCheckUtils]: 9: Hoare triple {8050#(<= ~counter~0 0)} assume true; {8050#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:10,198 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8050#(<= ~counter~0 0)} {8050#(<= ~counter~0 0)} #90#return; {8050#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:10,198 INFO L272 TraceCheckUtils]: 11: Hoare triple {8050#(<= ~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)); {8050#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:10,198 INFO L290 TraceCheckUtils]: 12: Hoare triple {8050#(<= ~counter~0 0)} ~cond := #in~cond; {8050#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:10,198 INFO L290 TraceCheckUtils]: 13: Hoare triple {8050#(<= ~counter~0 0)} assume !(0 == ~cond); {8050#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:10,199 INFO L290 TraceCheckUtils]: 14: Hoare triple {8050#(<= ~counter~0 0)} assume true; {8050#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:10,199 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8050#(<= ~counter~0 0)} {8050#(<= ~counter~0 0)} #92#return; {8050#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:10,199 INFO L290 TraceCheckUtils]: 16: Hoare triple {8050#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {8050#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:10,200 INFO L290 TraceCheckUtils]: 17: Hoare triple {8050#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8099#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:10,200 INFO L290 TraceCheckUtils]: 18: Hoare triple {8099#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {8099#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:10,201 INFO L272 TraceCheckUtils]: 19: Hoare triple {8099#(<= ~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)); {8099#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:10,201 INFO L290 TraceCheckUtils]: 20: Hoare triple {8099#(<= ~counter~0 1)} ~cond := #in~cond; {8099#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:10,201 INFO L290 TraceCheckUtils]: 21: Hoare triple {8099#(<= ~counter~0 1)} assume !(0 == ~cond); {8099#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:10,201 INFO L290 TraceCheckUtils]: 22: Hoare triple {8099#(<= ~counter~0 1)} assume true; {8099#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:10,202 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {8099#(<= ~counter~0 1)} {8099#(<= ~counter~0 1)} #94#return; {8099#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:10,202 INFO L290 TraceCheckUtils]: 24: Hoare triple {8099#(<= ~counter~0 1)} assume !!(0 != ~r~0); {8099#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:10,202 INFO L290 TraceCheckUtils]: 25: Hoare triple {8099#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8124#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:10,203 INFO L290 TraceCheckUtils]: 26: Hoare triple {8124#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {8124#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:10,203 INFO L272 TraceCheckUtils]: 27: Hoare triple {8124#(<= ~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)); {8124#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:10,203 INFO L290 TraceCheckUtils]: 28: Hoare triple {8124#(<= ~counter~0 2)} ~cond := #in~cond; {8124#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:10,204 INFO L290 TraceCheckUtils]: 29: Hoare triple {8124#(<= ~counter~0 2)} assume !(0 == ~cond); {8124#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:10,204 INFO L290 TraceCheckUtils]: 30: Hoare triple {8124#(<= ~counter~0 2)} assume true; {8124#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:10,204 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {8124#(<= ~counter~0 2)} {8124#(<= ~counter~0 2)} #96#return; {8124#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:10,205 INFO L290 TraceCheckUtils]: 32: Hoare triple {8124#(<= ~counter~0 2)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {8124#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:10,205 INFO L290 TraceCheckUtils]: 33: Hoare triple {8124#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8149#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:10,205 INFO L290 TraceCheckUtils]: 34: Hoare triple {8149#(<= ~counter~0 3)} assume !!(#t~post7 < 10);havoc #t~post7; {8149#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:10,206 INFO L272 TraceCheckUtils]: 35: Hoare triple {8149#(<= ~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)); {8149#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:10,206 INFO L290 TraceCheckUtils]: 36: Hoare triple {8149#(<= ~counter~0 3)} ~cond := #in~cond; {8149#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:10,206 INFO L290 TraceCheckUtils]: 37: Hoare triple {8149#(<= ~counter~0 3)} assume !(0 == ~cond); {8149#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:10,206 INFO L290 TraceCheckUtils]: 38: Hoare triple {8149#(<= ~counter~0 3)} assume true; {8149#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:10,215 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {8149#(<= ~counter~0 3)} {8149#(<= ~counter~0 3)} #96#return; {8149#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:10,216 INFO L290 TraceCheckUtils]: 40: Hoare triple {8149#(<= ~counter~0 3)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {8149#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:10,216 INFO L290 TraceCheckUtils]: 41: Hoare triple {8149#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8174#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:10,216 INFO L290 TraceCheckUtils]: 42: Hoare triple {8174#(<= ~counter~0 4)} assume !!(#t~post7 < 10);havoc #t~post7; {8174#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:10,217 INFO L272 TraceCheckUtils]: 43: Hoare triple {8174#(<= ~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)); {8174#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:10,217 INFO L290 TraceCheckUtils]: 44: Hoare triple {8174#(<= ~counter~0 4)} ~cond := #in~cond; {8174#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:10,218 INFO L290 TraceCheckUtils]: 45: Hoare triple {8174#(<= ~counter~0 4)} assume !(0 == ~cond); {8174#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:10,218 INFO L290 TraceCheckUtils]: 46: Hoare triple {8174#(<= ~counter~0 4)} assume true; {8174#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:10,218 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {8174#(<= ~counter~0 4)} {8174#(<= ~counter~0 4)} #96#return; {8174#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:10,219 INFO L290 TraceCheckUtils]: 48: Hoare triple {8174#(<= ~counter~0 4)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {8174#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:10,219 INFO L290 TraceCheckUtils]: 49: Hoare triple {8174#(<= ~counter~0 4)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8199#(<= |main_#t~post7| 4)} is VALID [2022-04-08 12:36:10,219 INFO L290 TraceCheckUtils]: 50: Hoare triple {8199#(<= |main_#t~post7| 4)} assume !(#t~post7 < 10);havoc #t~post7; {8043#false} is VALID [2022-04-08 12:36:10,219 INFO L290 TraceCheckUtils]: 51: Hoare triple {8043#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {8043#false} is VALID [2022-04-08 12:36:10,219 INFO L290 TraceCheckUtils]: 52: Hoare triple {8043#false} assume !(#t~post8 < 10);havoc #t~post8; {8043#false} is VALID [2022-04-08 12:36:10,219 INFO L290 TraceCheckUtils]: 53: Hoare triple {8043#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8043#false} is VALID [2022-04-08 12:36:10,219 INFO L290 TraceCheckUtils]: 54: Hoare triple {8043#false} assume !(#t~post6 < 10);havoc #t~post6; {8043#false} is VALID [2022-04-08 12:36:10,220 INFO L272 TraceCheckUtils]: 55: Hoare triple {8043#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)); {8043#false} is VALID [2022-04-08 12:36:10,220 INFO L290 TraceCheckUtils]: 56: Hoare triple {8043#false} ~cond := #in~cond; {8043#false} is VALID [2022-04-08 12:36:10,220 INFO L290 TraceCheckUtils]: 57: Hoare triple {8043#false} assume 0 == ~cond; {8043#false} is VALID [2022-04-08 12:36:10,220 INFO L290 TraceCheckUtils]: 58: Hoare triple {8043#false} assume !false; {8043#false} is VALID [2022-04-08 12:36:10,220 INFO L134 CoverageAnalysis]: Checked inductivity of 56 backedges. 10 proven. 42 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 12:36:10,220 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:36:10,510 INFO L290 TraceCheckUtils]: 58: Hoare triple {8043#false} assume !false; {8043#false} is VALID [2022-04-08 12:36:10,510 INFO L290 TraceCheckUtils]: 57: Hoare triple {8043#false} assume 0 == ~cond; {8043#false} is VALID [2022-04-08 12:36:10,510 INFO L290 TraceCheckUtils]: 56: Hoare triple {8043#false} ~cond := #in~cond; {8043#false} is VALID [2022-04-08 12:36:10,510 INFO L272 TraceCheckUtils]: 55: Hoare triple {8043#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)); {8043#false} is VALID [2022-04-08 12:36:10,510 INFO L290 TraceCheckUtils]: 54: Hoare triple {8043#false} assume !(#t~post6 < 10);havoc #t~post6; {8043#false} is VALID [2022-04-08 12:36:10,511 INFO L290 TraceCheckUtils]: 53: Hoare triple {8043#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8043#false} is VALID [2022-04-08 12:36:10,511 INFO L290 TraceCheckUtils]: 52: Hoare triple {8043#false} assume !(#t~post8 < 10);havoc #t~post8; {8043#false} is VALID [2022-04-08 12:36:10,511 INFO L290 TraceCheckUtils]: 51: Hoare triple {8043#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {8043#false} is VALID [2022-04-08 12:36:10,511 INFO L290 TraceCheckUtils]: 50: Hoare triple {8251#(< |main_#t~post7| 10)} assume !(#t~post7 < 10);havoc #t~post7; {8043#false} is VALID [2022-04-08 12:36:10,511 INFO L290 TraceCheckUtils]: 49: Hoare triple {8255#(< ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8251#(< |main_#t~post7| 10)} is VALID [2022-04-08 12:36:10,512 INFO L290 TraceCheckUtils]: 48: Hoare triple {8255#(< ~counter~0 10)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {8255#(< ~counter~0 10)} is VALID [2022-04-08 12:36:10,512 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {8042#true} {8255#(< ~counter~0 10)} #96#return; {8255#(< ~counter~0 10)} is VALID [2022-04-08 12:36:10,512 INFO L290 TraceCheckUtils]: 46: Hoare triple {8042#true} assume true; {8042#true} is VALID [2022-04-08 12:36:10,512 INFO L290 TraceCheckUtils]: 45: Hoare triple {8042#true} assume !(0 == ~cond); {8042#true} is VALID [2022-04-08 12:36:10,512 INFO L290 TraceCheckUtils]: 44: Hoare triple {8042#true} ~cond := #in~cond; {8042#true} is VALID [2022-04-08 12:36:10,512 INFO L272 TraceCheckUtils]: 43: Hoare triple {8255#(< ~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)); {8042#true} is VALID [2022-04-08 12:36:10,512 INFO L290 TraceCheckUtils]: 42: Hoare triple {8255#(< ~counter~0 10)} assume !!(#t~post7 < 10);havoc #t~post7; {8255#(< ~counter~0 10)} is VALID [2022-04-08 12:36:10,513 INFO L290 TraceCheckUtils]: 41: Hoare triple {8280#(< ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8255#(< ~counter~0 10)} is VALID [2022-04-08 12:36:10,513 INFO L290 TraceCheckUtils]: 40: Hoare triple {8280#(< ~counter~0 9)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {8280#(< ~counter~0 9)} is VALID [2022-04-08 12:36:10,514 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {8042#true} {8280#(< ~counter~0 9)} #96#return; {8280#(< ~counter~0 9)} is VALID [2022-04-08 12:36:10,514 INFO L290 TraceCheckUtils]: 38: Hoare triple {8042#true} assume true; {8042#true} is VALID [2022-04-08 12:36:10,514 INFO L290 TraceCheckUtils]: 37: Hoare triple {8042#true} assume !(0 == ~cond); {8042#true} is VALID [2022-04-08 12:36:10,514 INFO L290 TraceCheckUtils]: 36: Hoare triple {8042#true} ~cond := #in~cond; {8042#true} is VALID [2022-04-08 12:36:10,514 INFO L272 TraceCheckUtils]: 35: Hoare triple {8280#(< ~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)); {8042#true} is VALID [2022-04-08 12:36:10,514 INFO L290 TraceCheckUtils]: 34: Hoare triple {8280#(< ~counter~0 9)} assume !!(#t~post7 < 10);havoc #t~post7; {8280#(< ~counter~0 9)} is VALID [2022-04-08 12:36:10,515 INFO L290 TraceCheckUtils]: 33: Hoare triple {8305#(< ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8280#(< ~counter~0 9)} is VALID [2022-04-08 12:36:10,515 INFO L290 TraceCheckUtils]: 32: Hoare triple {8305#(< ~counter~0 8)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {8305#(< ~counter~0 8)} is VALID [2022-04-08 12:36:10,515 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {8042#true} {8305#(< ~counter~0 8)} #96#return; {8305#(< ~counter~0 8)} is VALID [2022-04-08 12:36:10,515 INFO L290 TraceCheckUtils]: 30: Hoare triple {8042#true} assume true; {8042#true} is VALID [2022-04-08 12:36:10,515 INFO L290 TraceCheckUtils]: 29: Hoare triple {8042#true} assume !(0 == ~cond); {8042#true} is VALID [2022-04-08 12:36:10,515 INFO L290 TraceCheckUtils]: 28: Hoare triple {8042#true} ~cond := #in~cond; {8042#true} is VALID [2022-04-08 12:36:10,515 INFO L272 TraceCheckUtils]: 27: Hoare triple {8305#(< ~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)); {8042#true} is VALID [2022-04-08 12:36:10,516 INFO L290 TraceCheckUtils]: 26: Hoare triple {8305#(< ~counter~0 8)} assume !!(#t~post7 < 10);havoc #t~post7; {8305#(< ~counter~0 8)} is VALID [2022-04-08 12:36:10,516 INFO L290 TraceCheckUtils]: 25: Hoare triple {8330#(< ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8305#(< ~counter~0 8)} is VALID [2022-04-08 12:36:10,516 INFO L290 TraceCheckUtils]: 24: Hoare triple {8330#(< ~counter~0 7)} assume !!(0 != ~r~0); {8330#(< ~counter~0 7)} is VALID [2022-04-08 12:36:10,517 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {8042#true} {8330#(< ~counter~0 7)} #94#return; {8330#(< ~counter~0 7)} is VALID [2022-04-08 12:36:10,517 INFO L290 TraceCheckUtils]: 22: Hoare triple {8042#true} assume true; {8042#true} is VALID [2022-04-08 12:36:10,517 INFO L290 TraceCheckUtils]: 21: Hoare triple {8042#true} assume !(0 == ~cond); {8042#true} is VALID [2022-04-08 12:36:10,517 INFO L290 TraceCheckUtils]: 20: Hoare triple {8042#true} ~cond := #in~cond; {8042#true} is VALID [2022-04-08 12:36:10,517 INFO L272 TraceCheckUtils]: 19: Hoare triple {8330#(< ~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)); {8042#true} is VALID [2022-04-08 12:36:10,517 INFO L290 TraceCheckUtils]: 18: Hoare triple {8330#(< ~counter~0 7)} assume !!(#t~post6 < 10);havoc #t~post6; {8330#(< ~counter~0 7)} is VALID [2022-04-08 12:36:10,518 INFO L290 TraceCheckUtils]: 17: Hoare triple {8355#(< ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8330#(< ~counter~0 7)} is VALID [2022-04-08 12:36:10,518 INFO L290 TraceCheckUtils]: 16: Hoare triple {8355#(< ~counter~0 6)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {8355#(< ~counter~0 6)} is VALID [2022-04-08 12:36:10,518 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8042#true} {8355#(< ~counter~0 6)} #92#return; {8355#(< ~counter~0 6)} is VALID [2022-04-08 12:36:10,518 INFO L290 TraceCheckUtils]: 14: Hoare triple {8042#true} assume true; {8042#true} is VALID [2022-04-08 12:36:10,518 INFO L290 TraceCheckUtils]: 13: Hoare triple {8042#true} assume !(0 == ~cond); {8042#true} is VALID [2022-04-08 12:36:10,518 INFO L290 TraceCheckUtils]: 12: Hoare triple {8042#true} ~cond := #in~cond; {8042#true} is VALID [2022-04-08 12:36:10,519 INFO L272 TraceCheckUtils]: 11: Hoare triple {8355#(< ~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)); {8042#true} is VALID [2022-04-08 12:36:10,519 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8042#true} {8355#(< ~counter~0 6)} #90#return; {8355#(< ~counter~0 6)} is VALID [2022-04-08 12:36:10,519 INFO L290 TraceCheckUtils]: 9: Hoare triple {8042#true} assume true; {8042#true} is VALID [2022-04-08 12:36:10,519 INFO L290 TraceCheckUtils]: 8: Hoare triple {8042#true} assume !(0 == ~cond); {8042#true} is VALID [2022-04-08 12:36:10,519 INFO L290 TraceCheckUtils]: 7: Hoare triple {8042#true} ~cond := #in~cond; {8042#true} is VALID [2022-04-08 12:36:10,519 INFO L272 TraceCheckUtils]: 6: Hoare triple {8355#(< ~counter~0 6)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {8042#true} is VALID [2022-04-08 12:36:10,519 INFO L290 TraceCheckUtils]: 5: Hoare triple {8355#(< ~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; {8355#(< ~counter~0 6)} is VALID [2022-04-08 12:36:10,520 INFO L272 TraceCheckUtils]: 4: Hoare triple {8355#(< ~counter~0 6)} call #t~ret9 := main(); {8355#(< ~counter~0 6)} is VALID [2022-04-08 12:36:10,520 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8355#(< ~counter~0 6)} {8042#true} #102#return; {8355#(< ~counter~0 6)} is VALID [2022-04-08 12:36:10,523 INFO L290 TraceCheckUtils]: 2: Hoare triple {8355#(< ~counter~0 6)} assume true; {8355#(< ~counter~0 6)} is VALID [2022-04-08 12:36:10,523 INFO L290 TraceCheckUtils]: 1: Hoare triple {8042#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; {8355#(< ~counter~0 6)} is VALID [2022-04-08 12:36:10,523 INFO L272 TraceCheckUtils]: 0: Hoare triple {8042#true} call ULTIMATE.init(); {8042#true} is VALID [2022-04-08 12:36:10,524 INFO L134 CoverageAnalysis]: Checked inductivity of 56 backedges. 10 proven. 18 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-08 12:36:10,524 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:36:10,524 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [901463081] [2022-04-08 12:36:10,524 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:36:10,524 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [360898834] [2022-04-08 12:36:10,524 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [360898834] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:36:10,524 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:36:10,524 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-08 12:36:10,524 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:36:10,524 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1539865998] [2022-04-08 12:36:10,524 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1539865998] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:36:10,524 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:36:10,524 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 12:36:10,524 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [567256182] [2022-04-08 12:36:10,524 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:36:10,525 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-08 12:36:10,525 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:36:10,525 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-08 12:36:10,563 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-08 12:36:10,563 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 12:36:10,563 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:10,563 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 12:36:10,563 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-08 12:36:10,564 INFO L87 Difference]: Start difference. First operand 98 states and 119 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-08 12:36:10,861 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:10,861 INFO L93 Difference]: Finished difference Result 137 states and 174 transitions. [2022-04-08 12:36:10,861 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-08 12:36:10,861 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-08 12:36:10,862 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:36:10,862 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-08 12:36:10,863 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 117 transitions. [2022-04-08 12:36:10,863 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-08 12:36:10,864 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 117 transitions. [2022-04-08 12:36:10,864 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 117 transitions. [2022-04-08 12:36:10,945 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 117 edges. 117 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:10,947 INFO L225 Difference]: With dead ends: 137 [2022-04-08 12:36:10,947 INFO L226 Difference]: Without dead ends: 100 [2022-04-08 12:36:10,947 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 120 GetRequests, 105 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 16 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=107, Invalid=165, Unknown=0, NotChecked=0, Total=272 [2022-04-08 12:36:10,947 INFO L913 BasicCegarLoop]: 42 mSDtfsCounter, 32 mSDsluCounter, 108 mSDsCounter, 0 mSdLazyCounter, 52 mSolverCounterSat, 25 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 32 SdHoareTripleChecker+Valid, 150 SdHoareTripleChecker+Invalid, 77 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 25 IncrementalHoareTripleChecker+Valid, 52 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 12:36:10,948 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [32 Valid, 150 Invalid, 77 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [25 Valid, 52 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 12:36:10,948 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 100 states. [2022-04-08 12:36:11,022 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 100 to 100. [2022-04-08 12:36:11,022 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:36:11,022 INFO L82 GeneralOperation]: Start isEquivalent. First operand 100 states. Second operand has 100 states, 73 states have (on average 1.1917808219178083) internal successors, (87), 73 states have internal predecessors, (87), 18 states have call successors, (18), 10 states have call predecessors, (18), 8 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 12:36:11,022 INFO L74 IsIncluded]: Start isIncluded. First operand 100 states. Second operand has 100 states, 73 states have (on average 1.1917808219178083) internal successors, (87), 73 states have internal predecessors, (87), 18 states have call successors, (18), 10 states have call predecessors, (18), 8 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 12:36:11,022 INFO L87 Difference]: Start difference. First operand 100 states. Second operand has 100 states, 73 states have (on average 1.1917808219178083) internal successors, (87), 73 states have internal predecessors, (87), 18 states have call successors, (18), 10 states have call predecessors, (18), 8 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 12:36:11,024 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:11,024 INFO L93 Difference]: Finished difference Result 100 states and 121 transitions. [2022-04-08 12:36:11,024 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 121 transitions. [2022-04-08 12:36:11,024 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:11,024 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:11,024 INFO L74 IsIncluded]: Start isIncluded. First operand has 100 states, 73 states have (on average 1.1917808219178083) internal successors, (87), 73 states have internal predecessors, (87), 18 states have call successors, (18), 10 states have call predecessors, (18), 8 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 100 states. [2022-04-08 12:36:11,024 INFO L87 Difference]: Start difference. First operand has 100 states, 73 states have (on average 1.1917808219178083) internal successors, (87), 73 states have internal predecessors, (87), 18 states have call successors, (18), 10 states have call predecessors, (18), 8 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 100 states. [2022-04-08 12:36:11,026 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:11,026 INFO L93 Difference]: Finished difference Result 100 states and 121 transitions. [2022-04-08 12:36:11,026 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 121 transitions. [2022-04-08 12:36:11,026 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:11,026 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:11,026 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:36:11,026 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:36:11,026 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 100 states, 73 states have (on average 1.1917808219178083) internal successors, (87), 73 states have internal predecessors, (87), 18 states have call successors, (18), 10 states have call predecessors, (18), 8 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-08 12:36:11,028 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 100 states to 100 states and 121 transitions. [2022-04-08 12:36:11,028 INFO L78 Accepts]: Start accepts. Automaton has 100 states and 121 transitions. Word has length 59 [2022-04-08 12:36:11,028 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:36:11,028 INFO L478 AbstractCegarLoop]: Abstraction has 100 states and 121 transitions. [2022-04-08 12:36:11,028 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-08 12:36:11,028 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 100 states and 121 transitions. [2022-04-08 12:36:12,294 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-08 12:36:12,295 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 121 transitions. [2022-04-08 12:36:12,295 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-08 12:36:12,295 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:36:12,295 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 12:36:12,303 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Ended with exit code 0 [2022-04-08 12:36:12,499 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-08 12:36:12,499 INFO L403 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:36:12,499 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:36:12,499 INFO L85 PathProgramCache]: Analyzing trace with hash -1402694082, now seen corresponding path program 3 times [2022-04-08 12:36:12,500 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:12,500 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1498297703] [2022-04-08 12:36:12,500 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:36:12,500 INFO L85 PathProgramCache]: Analyzing trace with hash -1402694082, now seen corresponding path program 4 times [2022-04-08 12:36:12,500 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:36:12,500 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1629332211] [2022-04-08 12:36:12,500 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:36:12,500 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:36:12,509 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:36:12,509 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [55085802] [2022-04-08 12:36:12,509 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 12:36:12,509 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:36:12,509 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:36:12,512 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-08 12:36:12,512 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-08 12:36:12,564 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 12:36:12,564 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:36:12,564 INFO L263 TraceCheckSpWp]: Trace formula consists of 176 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-08 12:36:12,577 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:36:12,578 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:36:12,858 INFO L272 TraceCheckUtils]: 0: Hoare triple {9089#true} call ULTIMATE.init(); {9089#true} is VALID [2022-04-08 12:36:12,859 INFO L290 TraceCheckUtils]: 1: Hoare triple {9089#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; {9097#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:12,859 INFO L290 TraceCheckUtils]: 2: Hoare triple {9097#(<= ~counter~0 0)} assume true; {9097#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:12,859 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9097#(<= ~counter~0 0)} {9089#true} #102#return; {9097#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:12,859 INFO L272 TraceCheckUtils]: 4: Hoare triple {9097#(<= ~counter~0 0)} call #t~ret9 := main(); {9097#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:12,860 INFO L290 TraceCheckUtils]: 5: Hoare triple {9097#(<= ~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; {9097#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:12,860 INFO L272 TraceCheckUtils]: 6: Hoare triple {9097#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {9097#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:12,860 INFO L290 TraceCheckUtils]: 7: Hoare triple {9097#(<= ~counter~0 0)} ~cond := #in~cond; {9097#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:12,861 INFO L290 TraceCheckUtils]: 8: Hoare triple {9097#(<= ~counter~0 0)} assume !(0 == ~cond); {9097#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:12,861 INFO L290 TraceCheckUtils]: 9: Hoare triple {9097#(<= ~counter~0 0)} assume true; {9097#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:12,861 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {9097#(<= ~counter~0 0)} {9097#(<= ~counter~0 0)} #90#return; {9097#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:12,862 INFO L272 TraceCheckUtils]: 11: Hoare triple {9097#(<= ~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)); {9097#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:12,862 INFO L290 TraceCheckUtils]: 12: Hoare triple {9097#(<= ~counter~0 0)} ~cond := #in~cond; {9097#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:12,862 INFO L290 TraceCheckUtils]: 13: Hoare triple {9097#(<= ~counter~0 0)} assume !(0 == ~cond); {9097#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:12,862 INFO L290 TraceCheckUtils]: 14: Hoare triple {9097#(<= ~counter~0 0)} assume true; {9097#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:12,863 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {9097#(<= ~counter~0 0)} {9097#(<= ~counter~0 0)} #92#return; {9097#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:12,863 INFO L290 TraceCheckUtils]: 16: Hoare triple {9097#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {9097#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:12,863 INFO L290 TraceCheckUtils]: 17: Hoare triple {9097#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9146#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:12,864 INFO L290 TraceCheckUtils]: 18: Hoare triple {9146#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {9146#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:12,864 INFO L272 TraceCheckUtils]: 19: Hoare triple {9146#(<= ~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)); {9146#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:12,864 INFO L290 TraceCheckUtils]: 20: Hoare triple {9146#(<= ~counter~0 1)} ~cond := #in~cond; {9146#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:12,865 INFO L290 TraceCheckUtils]: 21: Hoare triple {9146#(<= ~counter~0 1)} assume !(0 == ~cond); {9146#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:12,865 INFO L290 TraceCheckUtils]: 22: Hoare triple {9146#(<= ~counter~0 1)} assume true; {9146#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:12,865 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {9146#(<= ~counter~0 1)} {9146#(<= ~counter~0 1)} #94#return; {9146#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:12,866 INFO L290 TraceCheckUtils]: 24: Hoare triple {9146#(<= ~counter~0 1)} assume !!(0 != ~r~0); {9146#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:12,866 INFO L290 TraceCheckUtils]: 25: Hoare triple {9146#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9171#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:12,866 INFO L290 TraceCheckUtils]: 26: Hoare triple {9171#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {9171#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:12,867 INFO L272 TraceCheckUtils]: 27: Hoare triple {9171#(<= ~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)); {9171#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:12,867 INFO L290 TraceCheckUtils]: 28: Hoare triple {9171#(<= ~counter~0 2)} ~cond := #in~cond; {9171#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:12,867 INFO L290 TraceCheckUtils]: 29: Hoare triple {9171#(<= ~counter~0 2)} assume !(0 == ~cond); {9171#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:12,867 INFO L290 TraceCheckUtils]: 30: Hoare triple {9171#(<= ~counter~0 2)} assume true; {9171#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:12,868 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {9171#(<= ~counter~0 2)} {9171#(<= ~counter~0 2)} #96#return; {9171#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:12,868 INFO L290 TraceCheckUtils]: 32: Hoare triple {9171#(<= ~counter~0 2)} assume !(~r~0 > 0); {9171#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:12,868 INFO L290 TraceCheckUtils]: 33: Hoare triple {9171#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {9196#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:12,869 INFO L290 TraceCheckUtils]: 34: Hoare triple {9196#(<= ~counter~0 3)} assume !!(#t~post8 < 10);havoc #t~post8; {9196#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:12,869 INFO L272 TraceCheckUtils]: 35: Hoare triple {9196#(<= ~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)); {9196#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:12,869 INFO L290 TraceCheckUtils]: 36: Hoare triple {9196#(<= ~counter~0 3)} ~cond := #in~cond; {9196#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:12,870 INFO L290 TraceCheckUtils]: 37: Hoare triple {9196#(<= ~counter~0 3)} assume !(0 == ~cond); {9196#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:12,870 INFO L290 TraceCheckUtils]: 38: Hoare triple {9196#(<= ~counter~0 3)} assume true; {9196#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:12,870 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {9196#(<= ~counter~0 3)} {9196#(<= ~counter~0 3)} #98#return; {9196#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:12,870 INFO L290 TraceCheckUtils]: 40: Hoare triple {9196#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {9196#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:12,871 INFO L290 TraceCheckUtils]: 41: Hoare triple {9196#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {9221#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:12,871 INFO L290 TraceCheckUtils]: 42: Hoare triple {9221#(<= ~counter~0 4)} assume !!(#t~post8 < 10);havoc #t~post8; {9221#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:12,872 INFO L272 TraceCheckUtils]: 43: Hoare triple {9221#(<= ~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)); {9221#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:12,872 INFO L290 TraceCheckUtils]: 44: Hoare triple {9221#(<= ~counter~0 4)} ~cond := #in~cond; {9221#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:12,872 INFO L290 TraceCheckUtils]: 45: Hoare triple {9221#(<= ~counter~0 4)} assume !(0 == ~cond); {9221#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:12,872 INFO L290 TraceCheckUtils]: 46: Hoare triple {9221#(<= ~counter~0 4)} assume true; {9221#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:12,873 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {9221#(<= ~counter~0 4)} {9221#(<= ~counter~0 4)} #98#return; {9221#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:12,873 INFO L290 TraceCheckUtils]: 48: Hoare triple {9221#(<= ~counter~0 4)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {9221#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:12,873 INFO L290 TraceCheckUtils]: 49: Hoare triple {9221#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {9246#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:12,874 INFO L290 TraceCheckUtils]: 50: Hoare triple {9246#(<= ~counter~0 5)} assume !!(#t~post8 < 10);havoc #t~post8; {9246#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:12,874 INFO L272 TraceCheckUtils]: 51: Hoare triple {9246#(<= ~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)); {9246#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:12,874 INFO L290 TraceCheckUtils]: 52: Hoare triple {9246#(<= ~counter~0 5)} ~cond := #in~cond; {9246#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:12,875 INFO L290 TraceCheckUtils]: 53: Hoare triple {9246#(<= ~counter~0 5)} assume !(0 == ~cond); {9246#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:12,875 INFO L290 TraceCheckUtils]: 54: Hoare triple {9246#(<= ~counter~0 5)} assume true; {9246#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:12,875 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {9246#(<= ~counter~0 5)} {9246#(<= ~counter~0 5)} #98#return; {9246#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:12,875 INFO L290 TraceCheckUtils]: 56: Hoare triple {9246#(<= ~counter~0 5)} assume !(~r~0 < 0); {9246#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:12,876 INFO L290 TraceCheckUtils]: 57: Hoare triple {9246#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9271#(<= |main_#t~post6| 5)} is VALID [2022-04-08 12:36:12,876 INFO L290 TraceCheckUtils]: 58: Hoare triple {9271#(<= |main_#t~post6| 5)} assume !(#t~post6 < 10);havoc #t~post6; {9090#false} is VALID [2022-04-08 12:36:12,876 INFO L272 TraceCheckUtils]: 59: Hoare triple {9090#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)); {9090#false} is VALID [2022-04-08 12:36:12,876 INFO L290 TraceCheckUtils]: 60: Hoare triple {9090#false} ~cond := #in~cond; {9090#false} is VALID [2022-04-08 12:36:12,876 INFO L290 TraceCheckUtils]: 61: Hoare triple {9090#false} assume 0 == ~cond; {9090#false} is VALID [2022-04-08 12:36:12,876 INFO L290 TraceCheckUtils]: 62: Hoare triple {9090#false} assume !false; {9090#false} is VALID [2022-04-08 12:36:12,877 INFO L134 CoverageAnalysis]: Checked inductivity of 68 backedges. 10 proven. 54 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 12:36:12,877 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:36:13,169 INFO L290 TraceCheckUtils]: 62: Hoare triple {9090#false} assume !false; {9090#false} is VALID [2022-04-08 12:36:13,169 INFO L290 TraceCheckUtils]: 61: Hoare triple {9090#false} assume 0 == ~cond; {9090#false} is VALID [2022-04-08 12:36:13,169 INFO L290 TraceCheckUtils]: 60: Hoare triple {9090#false} ~cond := #in~cond; {9090#false} is VALID [2022-04-08 12:36:13,169 INFO L272 TraceCheckUtils]: 59: Hoare triple {9090#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)); {9090#false} is VALID [2022-04-08 12:36:13,170 INFO L290 TraceCheckUtils]: 58: Hoare triple {9299#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {9090#false} is VALID [2022-04-08 12:36:13,170 INFO L290 TraceCheckUtils]: 57: Hoare triple {9303#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9299#(< |main_#t~post6| 10)} is VALID [2022-04-08 12:36:13,170 INFO L290 TraceCheckUtils]: 56: Hoare triple {9303#(< ~counter~0 10)} assume !(~r~0 < 0); {9303#(< ~counter~0 10)} is VALID [2022-04-08 12:36:13,171 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {9089#true} {9303#(< ~counter~0 10)} #98#return; {9303#(< ~counter~0 10)} is VALID [2022-04-08 12:36:13,171 INFO L290 TraceCheckUtils]: 54: Hoare triple {9089#true} assume true; {9089#true} is VALID [2022-04-08 12:36:13,171 INFO L290 TraceCheckUtils]: 53: Hoare triple {9089#true} assume !(0 == ~cond); {9089#true} is VALID [2022-04-08 12:36:13,171 INFO L290 TraceCheckUtils]: 52: Hoare triple {9089#true} ~cond := #in~cond; {9089#true} is VALID [2022-04-08 12:36:13,171 INFO L272 TraceCheckUtils]: 51: Hoare triple {9303#(< ~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)); {9089#true} is VALID [2022-04-08 12:36:13,172 INFO L290 TraceCheckUtils]: 50: Hoare triple {9303#(< ~counter~0 10)} assume !!(#t~post8 < 10);havoc #t~post8; {9303#(< ~counter~0 10)} is VALID [2022-04-08 12:36:13,172 INFO L290 TraceCheckUtils]: 49: Hoare triple {9328#(< ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {9303#(< ~counter~0 10)} is VALID [2022-04-08 12:36:13,173 INFO L290 TraceCheckUtils]: 48: Hoare triple {9328#(< ~counter~0 9)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {9328#(< ~counter~0 9)} is VALID [2022-04-08 12:36:13,173 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {9089#true} {9328#(< ~counter~0 9)} #98#return; {9328#(< ~counter~0 9)} is VALID [2022-04-08 12:36:13,173 INFO L290 TraceCheckUtils]: 46: Hoare triple {9089#true} assume true; {9089#true} is VALID [2022-04-08 12:36:13,174 INFO L290 TraceCheckUtils]: 45: Hoare triple {9089#true} assume !(0 == ~cond); {9089#true} is VALID [2022-04-08 12:36:13,174 INFO L290 TraceCheckUtils]: 44: Hoare triple {9089#true} ~cond := #in~cond; {9089#true} is VALID [2022-04-08 12:36:13,174 INFO L272 TraceCheckUtils]: 43: Hoare triple {9328#(< ~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)); {9089#true} is VALID [2022-04-08 12:36:13,174 INFO L290 TraceCheckUtils]: 42: Hoare triple {9328#(< ~counter~0 9)} assume !!(#t~post8 < 10);havoc #t~post8; {9328#(< ~counter~0 9)} is VALID [2022-04-08 12:36:13,174 INFO L290 TraceCheckUtils]: 41: Hoare triple {9353#(< ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {9328#(< ~counter~0 9)} is VALID [2022-04-08 12:36:13,175 INFO L290 TraceCheckUtils]: 40: Hoare triple {9353#(< ~counter~0 8)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {9353#(< ~counter~0 8)} is VALID [2022-04-08 12:36:13,176 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {9089#true} {9353#(< ~counter~0 8)} #98#return; {9353#(< ~counter~0 8)} is VALID [2022-04-08 12:36:13,176 INFO L290 TraceCheckUtils]: 38: Hoare triple {9089#true} assume true; {9089#true} is VALID [2022-04-08 12:36:13,176 INFO L290 TraceCheckUtils]: 37: Hoare triple {9089#true} assume !(0 == ~cond); {9089#true} is VALID [2022-04-08 12:36:13,176 INFO L290 TraceCheckUtils]: 36: Hoare triple {9089#true} ~cond := #in~cond; {9089#true} is VALID [2022-04-08 12:36:13,176 INFO L272 TraceCheckUtils]: 35: Hoare triple {9353#(< ~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)); {9089#true} is VALID [2022-04-08 12:36:13,176 INFO L290 TraceCheckUtils]: 34: Hoare triple {9353#(< ~counter~0 8)} assume !!(#t~post8 < 10);havoc #t~post8; {9353#(< ~counter~0 8)} is VALID [2022-04-08 12:36:13,177 INFO L290 TraceCheckUtils]: 33: Hoare triple {9378#(< ~counter~0 7)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {9353#(< ~counter~0 8)} is VALID [2022-04-08 12:36:13,177 INFO L290 TraceCheckUtils]: 32: Hoare triple {9378#(< ~counter~0 7)} assume !(~r~0 > 0); {9378#(< ~counter~0 7)} is VALID [2022-04-08 12:36:13,178 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {9089#true} {9378#(< ~counter~0 7)} #96#return; {9378#(< ~counter~0 7)} is VALID [2022-04-08 12:36:13,178 INFO L290 TraceCheckUtils]: 30: Hoare triple {9089#true} assume true; {9089#true} is VALID [2022-04-08 12:36:13,178 INFO L290 TraceCheckUtils]: 29: Hoare triple {9089#true} assume !(0 == ~cond); {9089#true} is VALID [2022-04-08 12:36:13,178 INFO L290 TraceCheckUtils]: 28: Hoare triple {9089#true} ~cond := #in~cond; {9089#true} is VALID [2022-04-08 12:36:13,178 INFO L272 TraceCheckUtils]: 27: Hoare triple {9378#(< ~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)); {9089#true} is VALID [2022-04-08 12:36:13,178 INFO L290 TraceCheckUtils]: 26: Hoare triple {9378#(< ~counter~0 7)} assume !!(#t~post7 < 10);havoc #t~post7; {9378#(< ~counter~0 7)} is VALID [2022-04-08 12:36:13,179 INFO L290 TraceCheckUtils]: 25: Hoare triple {9246#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9378#(< ~counter~0 7)} is VALID [2022-04-08 12:36:13,179 INFO L290 TraceCheckUtils]: 24: Hoare triple {9246#(<= ~counter~0 5)} assume !!(0 != ~r~0); {9246#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:13,180 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {9089#true} {9246#(<= ~counter~0 5)} #94#return; {9246#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:13,180 INFO L290 TraceCheckUtils]: 22: Hoare triple {9089#true} assume true; {9089#true} is VALID [2022-04-08 12:36:13,180 INFO L290 TraceCheckUtils]: 21: Hoare triple {9089#true} assume !(0 == ~cond); {9089#true} is VALID [2022-04-08 12:36:13,180 INFO L290 TraceCheckUtils]: 20: Hoare triple {9089#true} ~cond := #in~cond; {9089#true} is VALID [2022-04-08 12:36:13,180 INFO L272 TraceCheckUtils]: 19: Hoare triple {9246#(<= ~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)); {9089#true} is VALID [2022-04-08 12:36:13,181 INFO L290 TraceCheckUtils]: 18: Hoare triple {9246#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {9246#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:13,181 INFO L290 TraceCheckUtils]: 17: Hoare triple {9221#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9246#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:13,181 INFO L290 TraceCheckUtils]: 16: Hoare triple {9221#(<= ~counter~0 4)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {9221#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:13,182 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {9089#true} {9221#(<= ~counter~0 4)} #92#return; {9221#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:13,182 INFO L290 TraceCheckUtils]: 14: Hoare triple {9089#true} assume true; {9089#true} is VALID [2022-04-08 12:36:13,182 INFO L290 TraceCheckUtils]: 13: Hoare triple {9089#true} assume !(0 == ~cond); {9089#true} is VALID [2022-04-08 12:36:13,182 INFO L290 TraceCheckUtils]: 12: Hoare triple {9089#true} ~cond := #in~cond; {9089#true} is VALID [2022-04-08 12:36:13,182 INFO L272 TraceCheckUtils]: 11: Hoare triple {9221#(<= ~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)); {9089#true} is VALID [2022-04-08 12:36:13,183 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {9089#true} {9221#(<= ~counter~0 4)} #90#return; {9221#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:13,183 INFO L290 TraceCheckUtils]: 9: Hoare triple {9089#true} assume true; {9089#true} is VALID [2022-04-08 12:36:13,183 INFO L290 TraceCheckUtils]: 8: Hoare triple {9089#true} assume !(0 == ~cond); {9089#true} is VALID [2022-04-08 12:36:13,183 INFO L290 TraceCheckUtils]: 7: Hoare triple {9089#true} ~cond := #in~cond; {9089#true} is VALID [2022-04-08 12:36:13,183 INFO L272 TraceCheckUtils]: 6: Hoare triple {9221#(<= ~counter~0 4)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {9089#true} is VALID [2022-04-08 12:36:13,183 INFO L290 TraceCheckUtils]: 5: Hoare triple {9221#(<= ~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; {9221#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:13,184 INFO L272 TraceCheckUtils]: 4: Hoare triple {9221#(<= ~counter~0 4)} call #t~ret9 := main(); {9221#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:13,184 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9221#(<= ~counter~0 4)} {9089#true} #102#return; {9221#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:13,185 INFO L290 TraceCheckUtils]: 2: Hoare triple {9221#(<= ~counter~0 4)} assume true; {9221#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:13,185 INFO L290 TraceCheckUtils]: 1: Hoare triple {9089#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; {9221#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:13,185 INFO L272 TraceCheckUtils]: 0: Hoare triple {9089#true} call ULTIMATE.init(); {9089#true} is VALID [2022-04-08 12:36:13,185 INFO L134 CoverageAnalysis]: Checked inductivity of 68 backedges. 10 proven. 14 refuted. 0 times theorem prover too weak. 44 trivial. 0 not checked. [2022-04-08 12:36:13,185 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:36:13,186 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1629332211] [2022-04-08 12:36:13,186 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:36:13,186 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [55085802] [2022-04-08 12:36:13,186 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [55085802] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:36:13,186 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:36:13,186 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 14 [2022-04-08 12:36:13,186 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:36:13,186 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1498297703] [2022-04-08 12:36:13,186 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1498297703] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:36:13,186 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:36:13,186 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 12:36:13,186 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1529512541] [2022-04-08 12:36:13,186 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:36:13,188 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.666666666666667) internal successors, (42), 8 states have internal predecessors, (42), 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 63 [2022-04-08 12:36:13,188 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:36:13,188 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 4.666666666666667) internal successors, (42), 8 states have internal predecessors, (42), 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-08 12:36:13,227 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:13,228 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-08 12:36:13,228 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:13,228 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-08 12:36:13,228 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-08 12:36:13,228 INFO L87 Difference]: Start difference. First operand 100 states and 121 transitions. Second operand has 9 states, 9 states have (on average 4.666666666666667) internal successors, (42), 8 states have internal predecessors, (42), 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-08 12:36:13,536 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:13,536 INFO L93 Difference]: Finished difference Result 120 states and 145 transitions. [2022-04-08 12:36:13,536 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-08 12:36:13,536 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.666666666666667) internal successors, (42), 8 states have internal predecessors, (42), 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 63 [2022-04-08 12:36:13,537 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:36:13,537 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.666666666666667) internal successors, (42), 8 states have internal predecessors, (42), 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-08 12:36:13,538 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 115 transitions. [2022-04-08 12:36:13,538 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.666666666666667) internal successors, (42), 8 states have internal predecessors, (42), 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-08 12:36:13,539 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 115 transitions. [2022-04-08 12:36:13,539 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 115 transitions. [2022-04-08 12:36:13,620 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-08 12:36:13,622 INFO L225 Difference]: With dead ends: 120 [2022-04-08 12:36:13,622 INFO L226 Difference]: Without dead ends: 115 [2022-04-08 12:36:13,622 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 127 GetRequests, 112 SyntacticMatches, 1 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 19 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=94, Invalid=146, Unknown=0, NotChecked=0, Total=240 [2022-04-08 12:36:13,622 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 41 mSDsluCounter, 128 mSDsCounter, 0 mSdLazyCounter, 54 mSolverCounterSat, 33 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 41 SdHoareTripleChecker+Valid, 173 SdHoareTripleChecker+Invalid, 87 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 33 IncrementalHoareTripleChecker+Valid, 54 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 12:36:13,623 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [41 Valid, 173 Invalid, 87 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [33 Valid, 54 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 12:36:13,623 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 115 states. [2022-04-08 12:36:13,716 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 115 to 110. [2022-04-08 12:36:13,716 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:36:13,717 INFO L82 GeneralOperation]: Start isEquivalent. First operand 115 states. Second operand has 110 states, 79 states have (on average 1.1898734177215189) internal successors, (94), 81 states have internal predecessors, (94), 21 states have call successors, (21), 11 states have call predecessors, (21), 9 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-08 12:36:13,717 INFO L74 IsIncluded]: Start isIncluded. First operand 115 states. Second operand has 110 states, 79 states have (on average 1.1898734177215189) internal successors, (94), 81 states have internal predecessors, (94), 21 states have call successors, (21), 11 states have call predecessors, (21), 9 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-08 12:36:13,717 INFO L87 Difference]: Start difference. First operand 115 states. Second operand has 110 states, 79 states have (on average 1.1898734177215189) internal successors, (94), 81 states have internal predecessors, (94), 21 states have call successors, (21), 11 states have call predecessors, (21), 9 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-08 12:36:13,719 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:13,719 INFO L93 Difference]: Finished difference Result 115 states and 140 transitions. [2022-04-08 12:36:13,719 INFO L276 IsEmpty]: Start isEmpty. Operand 115 states and 140 transitions. [2022-04-08 12:36:13,719 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:13,719 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:13,719 INFO L74 IsIncluded]: Start isIncluded. First operand has 110 states, 79 states have (on average 1.1898734177215189) internal successors, (94), 81 states have internal predecessors, (94), 21 states have call successors, (21), 11 states have call predecessors, (21), 9 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) Second operand 115 states. [2022-04-08 12:36:13,719 INFO L87 Difference]: Start difference. First operand has 110 states, 79 states have (on average 1.1898734177215189) internal successors, (94), 81 states have internal predecessors, (94), 21 states have call successors, (21), 11 states have call predecessors, (21), 9 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) Second operand 115 states. [2022-04-08 12:36:13,721 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:13,721 INFO L93 Difference]: Finished difference Result 115 states and 140 transitions. [2022-04-08 12:36:13,721 INFO L276 IsEmpty]: Start isEmpty. Operand 115 states and 140 transitions. [2022-04-08 12:36:13,721 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:13,721 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:13,721 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:36:13,721 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:36:13,722 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 110 states, 79 states have (on average 1.1898734177215189) internal successors, (94), 81 states have internal predecessors, (94), 21 states have call successors, (21), 11 states have call predecessors, (21), 9 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-08 12:36:13,723 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 110 states to 110 states and 134 transitions. [2022-04-08 12:36:13,723 INFO L78 Accepts]: Start accepts. Automaton has 110 states and 134 transitions. Word has length 63 [2022-04-08 12:36:13,723 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:36:13,723 INFO L478 AbstractCegarLoop]: Abstraction has 110 states and 134 transitions. [2022-04-08 12:36:13,724 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 4.666666666666667) internal successors, (42), 8 states have internal predecessors, (42), 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-08 12:36:13,724 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 110 states and 134 transitions. [2022-04-08 12:36:14,053 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 134 edges. 134 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:14,054 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 134 transitions. [2022-04-08 12:36:14,054 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 66 [2022-04-08 12:36:14,054 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:36:14,054 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 4, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 12:36:14,070 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-08 12:36:14,254 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-08 12:36:14,255 INFO L403 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:36:14,255 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:36:14,255 INFO L85 PathProgramCache]: Analyzing trace with hash -1823928061, now seen corresponding path program 5 times [2022-04-08 12:36:14,255 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:14,255 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1105550026] [2022-04-08 12:36:14,256 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:36:14,256 INFO L85 PathProgramCache]: Analyzing trace with hash -1823928061, now seen corresponding path program 6 times [2022-04-08 12:36:14,256 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:36:14,256 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1429081228] [2022-04-08 12:36:14,256 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:36:14,256 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:36:14,266 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:36:14,266 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1160713017] [2022-04-08 12:36:14,266 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 12:36:14,266 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:36:14,267 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:36:14,267 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 12:36:14,269 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Waiting until timeout for monitored process [2022-04-08 12:36:14,323 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 6 check-sat command(s) [2022-04-08 12:36:14,324 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:36:14,324 INFO L263 TraceCheckSpWp]: Trace formula consists of 185 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-08 12:36:14,335 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:36:14,336 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:36:14,615 INFO L272 TraceCheckUtils]: 0: Hoare triple {10174#true} call ULTIMATE.init(); {10174#true} is VALID [2022-04-08 12:36:14,615 INFO L290 TraceCheckUtils]: 1: Hoare triple {10174#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; {10182#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:14,615 INFO L290 TraceCheckUtils]: 2: Hoare triple {10182#(<= ~counter~0 0)} assume true; {10182#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:14,616 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10182#(<= ~counter~0 0)} {10174#true} #102#return; {10182#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:14,616 INFO L272 TraceCheckUtils]: 4: Hoare triple {10182#(<= ~counter~0 0)} call #t~ret9 := main(); {10182#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:14,616 INFO L290 TraceCheckUtils]: 5: Hoare triple {10182#(<= ~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; {10182#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:14,617 INFO L272 TraceCheckUtils]: 6: Hoare triple {10182#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {10182#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:14,617 INFO L290 TraceCheckUtils]: 7: Hoare triple {10182#(<= ~counter~0 0)} ~cond := #in~cond; {10182#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:14,617 INFO L290 TraceCheckUtils]: 8: Hoare triple {10182#(<= ~counter~0 0)} assume !(0 == ~cond); {10182#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:14,617 INFO L290 TraceCheckUtils]: 9: Hoare triple {10182#(<= ~counter~0 0)} assume true; {10182#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:14,618 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10182#(<= ~counter~0 0)} {10182#(<= ~counter~0 0)} #90#return; {10182#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:14,618 INFO L272 TraceCheckUtils]: 11: Hoare triple {10182#(<= ~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)); {10182#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:14,618 INFO L290 TraceCheckUtils]: 12: Hoare triple {10182#(<= ~counter~0 0)} ~cond := #in~cond; {10182#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:14,619 INFO L290 TraceCheckUtils]: 13: Hoare triple {10182#(<= ~counter~0 0)} assume !(0 == ~cond); {10182#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:14,619 INFO L290 TraceCheckUtils]: 14: Hoare triple {10182#(<= ~counter~0 0)} assume true; {10182#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:14,619 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {10182#(<= ~counter~0 0)} {10182#(<= ~counter~0 0)} #92#return; {10182#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:14,619 INFO L290 TraceCheckUtils]: 16: Hoare triple {10182#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {10182#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:14,620 INFO L290 TraceCheckUtils]: 17: Hoare triple {10182#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10231#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:14,620 INFO L290 TraceCheckUtils]: 18: Hoare triple {10231#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {10231#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:14,621 INFO L272 TraceCheckUtils]: 19: Hoare triple {10231#(<= ~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)); {10231#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:14,621 INFO L290 TraceCheckUtils]: 20: Hoare triple {10231#(<= ~counter~0 1)} ~cond := #in~cond; {10231#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:14,621 INFO L290 TraceCheckUtils]: 21: Hoare triple {10231#(<= ~counter~0 1)} assume !(0 == ~cond); {10231#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:14,621 INFO L290 TraceCheckUtils]: 22: Hoare triple {10231#(<= ~counter~0 1)} assume true; {10231#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:14,622 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {10231#(<= ~counter~0 1)} {10231#(<= ~counter~0 1)} #94#return; {10231#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:14,622 INFO L290 TraceCheckUtils]: 24: Hoare triple {10231#(<= ~counter~0 1)} assume !!(0 != ~r~0); {10231#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:14,622 INFO L290 TraceCheckUtils]: 25: Hoare triple {10231#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10256#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:14,623 INFO L290 TraceCheckUtils]: 26: Hoare triple {10256#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {10256#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:14,623 INFO L272 TraceCheckUtils]: 27: Hoare triple {10256#(<= ~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)); {10256#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:14,623 INFO L290 TraceCheckUtils]: 28: Hoare triple {10256#(<= ~counter~0 2)} ~cond := #in~cond; {10256#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:14,624 INFO L290 TraceCheckUtils]: 29: Hoare triple {10256#(<= ~counter~0 2)} assume !(0 == ~cond); {10256#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:14,624 INFO L290 TraceCheckUtils]: 30: Hoare triple {10256#(<= ~counter~0 2)} assume true; {10256#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:14,624 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {10256#(<= ~counter~0 2)} {10256#(<= ~counter~0 2)} #96#return; {10256#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:14,624 INFO L290 TraceCheckUtils]: 32: Hoare triple {10256#(<= ~counter~0 2)} assume !(~r~0 > 0); {10256#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:14,625 INFO L290 TraceCheckUtils]: 33: Hoare triple {10256#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {10281#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:14,625 INFO L290 TraceCheckUtils]: 34: Hoare triple {10281#(<= ~counter~0 3)} assume !!(#t~post8 < 10);havoc #t~post8; {10281#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:14,626 INFO L272 TraceCheckUtils]: 35: Hoare triple {10281#(<= ~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)); {10281#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:14,626 INFO L290 TraceCheckUtils]: 36: Hoare triple {10281#(<= ~counter~0 3)} ~cond := #in~cond; {10281#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:14,626 INFO L290 TraceCheckUtils]: 37: Hoare triple {10281#(<= ~counter~0 3)} assume !(0 == ~cond); {10281#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:14,626 INFO L290 TraceCheckUtils]: 38: Hoare triple {10281#(<= ~counter~0 3)} assume true; {10281#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:14,627 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {10281#(<= ~counter~0 3)} {10281#(<= ~counter~0 3)} #98#return; {10281#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:14,627 INFO L290 TraceCheckUtils]: 40: Hoare triple {10281#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {10281#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:14,627 INFO L290 TraceCheckUtils]: 41: Hoare triple {10281#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {10306#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:14,628 INFO L290 TraceCheckUtils]: 42: Hoare triple {10306#(<= ~counter~0 4)} assume !!(#t~post8 < 10);havoc #t~post8; {10306#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:14,628 INFO L272 TraceCheckUtils]: 43: Hoare triple {10306#(<= ~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)); {10306#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:14,628 INFO L290 TraceCheckUtils]: 44: Hoare triple {10306#(<= ~counter~0 4)} ~cond := #in~cond; {10306#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:14,629 INFO L290 TraceCheckUtils]: 45: Hoare triple {10306#(<= ~counter~0 4)} assume !(0 == ~cond); {10306#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:14,629 INFO L290 TraceCheckUtils]: 46: Hoare triple {10306#(<= ~counter~0 4)} assume true; {10306#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:14,629 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {10306#(<= ~counter~0 4)} {10306#(<= ~counter~0 4)} #98#return; {10306#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:14,629 INFO L290 TraceCheckUtils]: 48: Hoare triple {10306#(<= ~counter~0 4)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {10306#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:14,630 INFO L290 TraceCheckUtils]: 49: Hoare triple {10306#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {10331#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:14,630 INFO L290 TraceCheckUtils]: 50: Hoare triple {10331#(<= ~counter~0 5)} assume !!(#t~post8 < 10);havoc #t~post8; {10331#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:14,631 INFO L272 TraceCheckUtils]: 51: Hoare triple {10331#(<= ~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)); {10331#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:14,631 INFO L290 TraceCheckUtils]: 52: Hoare triple {10331#(<= ~counter~0 5)} ~cond := #in~cond; {10331#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:14,631 INFO L290 TraceCheckUtils]: 53: Hoare triple {10331#(<= ~counter~0 5)} assume !(0 == ~cond); {10331#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:14,631 INFO L290 TraceCheckUtils]: 54: Hoare triple {10331#(<= ~counter~0 5)} assume true; {10331#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:14,632 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {10331#(<= ~counter~0 5)} {10331#(<= ~counter~0 5)} #98#return; {10331#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:14,632 INFO L290 TraceCheckUtils]: 56: Hoare triple {10331#(<= ~counter~0 5)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {10331#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:14,632 INFO L290 TraceCheckUtils]: 57: Hoare triple {10331#(<= ~counter~0 5)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {10356#(<= |main_#t~post8| 5)} is VALID [2022-04-08 12:36:14,633 INFO L290 TraceCheckUtils]: 58: Hoare triple {10356#(<= |main_#t~post8| 5)} assume !(#t~post8 < 10);havoc #t~post8; {10175#false} is VALID [2022-04-08 12:36:14,633 INFO L290 TraceCheckUtils]: 59: Hoare triple {10175#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10175#false} is VALID [2022-04-08 12:36:14,633 INFO L290 TraceCheckUtils]: 60: Hoare triple {10175#false} assume !(#t~post6 < 10);havoc #t~post6; {10175#false} is VALID [2022-04-08 12:36:14,633 INFO L272 TraceCheckUtils]: 61: Hoare triple {10175#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)); {10175#false} is VALID [2022-04-08 12:36:14,633 INFO L290 TraceCheckUtils]: 62: Hoare triple {10175#false} ~cond := #in~cond; {10175#false} is VALID [2022-04-08 12:36:14,633 INFO L290 TraceCheckUtils]: 63: Hoare triple {10175#false} assume 0 == ~cond; {10175#false} is VALID [2022-04-08 12:36:14,633 INFO L290 TraceCheckUtils]: 64: Hoare triple {10175#false} assume !false; {10175#false} is VALID [2022-04-08 12:36:14,633 INFO L134 CoverageAnalysis]: Checked inductivity of 74 backedges. 12 proven. 58 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 12:36:14,633 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:36:14,920 INFO L290 TraceCheckUtils]: 64: Hoare triple {10175#false} assume !false; {10175#false} is VALID [2022-04-08 12:36:14,920 INFO L290 TraceCheckUtils]: 63: Hoare triple {10175#false} assume 0 == ~cond; {10175#false} is VALID [2022-04-08 12:36:14,920 INFO L290 TraceCheckUtils]: 62: Hoare triple {10175#false} ~cond := #in~cond; {10175#false} is VALID [2022-04-08 12:36:14,920 INFO L272 TraceCheckUtils]: 61: Hoare triple {10175#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)); {10175#false} is VALID [2022-04-08 12:36:14,920 INFO L290 TraceCheckUtils]: 60: Hoare triple {10175#false} assume !(#t~post6 < 10);havoc #t~post6; {10175#false} is VALID [2022-04-08 12:36:14,920 INFO L290 TraceCheckUtils]: 59: Hoare triple {10175#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10175#false} is VALID [2022-04-08 12:36:14,921 INFO L290 TraceCheckUtils]: 58: Hoare triple {10396#(< |main_#t~post8| 10)} assume !(#t~post8 < 10);havoc #t~post8; {10175#false} is VALID [2022-04-08 12:36:14,921 INFO L290 TraceCheckUtils]: 57: Hoare triple {10400#(< ~counter~0 10)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {10396#(< |main_#t~post8| 10)} is VALID [2022-04-08 12:36:14,921 INFO L290 TraceCheckUtils]: 56: Hoare triple {10400#(< ~counter~0 10)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {10400#(< ~counter~0 10)} is VALID [2022-04-08 12:36:14,922 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {10174#true} {10400#(< ~counter~0 10)} #98#return; {10400#(< ~counter~0 10)} is VALID [2022-04-08 12:36:14,922 INFO L290 TraceCheckUtils]: 54: Hoare triple {10174#true} assume true; {10174#true} is VALID [2022-04-08 12:36:14,922 INFO L290 TraceCheckUtils]: 53: Hoare triple {10174#true} assume !(0 == ~cond); {10174#true} is VALID [2022-04-08 12:36:14,922 INFO L290 TraceCheckUtils]: 52: Hoare triple {10174#true} ~cond := #in~cond; {10174#true} is VALID [2022-04-08 12:36:14,922 INFO L272 TraceCheckUtils]: 51: Hoare triple {10400#(< ~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)); {10174#true} is VALID [2022-04-08 12:36:14,924 INFO L290 TraceCheckUtils]: 50: Hoare triple {10400#(< ~counter~0 10)} assume !!(#t~post8 < 10);havoc #t~post8; {10400#(< ~counter~0 10)} is VALID [2022-04-08 12:36:14,924 INFO L290 TraceCheckUtils]: 49: Hoare triple {10425#(< ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {10400#(< ~counter~0 10)} is VALID [2022-04-08 12:36:14,924 INFO L290 TraceCheckUtils]: 48: Hoare triple {10425#(< ~counter~0 9)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {10425#(< ~counter~0 9)} is VALID [2022-04-08 12:36:14,925 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {10174#true} {10425#(< ~counter~0 9)} #98#return; {10425#(< ~counter~0 9)} is VALID [2022-04-08 12:36:14,925 INFO L290 TraceCheckUtils]: 46: Hoare triple {10174#true} assume true; {10174#true} is VALID [2022-04-08 12:36:14,925 INFO L290 TraceCheckUtils]: 45: Hoare triple {10174#true} assume !(0 == ~cond); {10174#true} is VALID [2022-04-08 12:36:14,925 INFO L290 TraceCheckUtils]: 44: Hoare triple {10174#true} ~cond := #in~cond; {10174#true} is VALID [2022-04-08 12:36:14,925 INFO L272 TraceCheckUtils]: 43: Hoare triple {10425#(< ~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)); {10174#true} is VALID [2022-04-08 12:36:14,925 INFO L290 TraceCheckUtils]: 42: Hoare triple {10425#(< ~counter~0 9)} assume !!(#t~post8 < 10);havoc #t~post8; {10425#(< ~counter~0 9)} is VALID [2022-04-08 12:36:14,926 INFO L290 TraceCheckUtils]: 41: Hoare triple {10450#(< ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {10425#(< ~counter~0 9)} is VALID [2022-04-08 12:36:14,926 INFO L290 TraceCheckUtils]: 40: Hoare triple {10450#(< ~counter~0 8)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {10450#(< ~counter~0 8)} is VALID [2022-04-08 12:36:14,926 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {10174#true} {10450#(< ~counter~0 8)} #98#return; {10450#(< ~counter~0 8)} is VALID [2022-04-08 12:36:14,926 INFO L290 TraceCheckUtils]: 38: Hoare triple {10174#true} assume true; {10174#true} is VALID [2022-04-08 12:36:14,926 INFO L290 TraceCheckUtils]: 37: Hoare triple {10174#true} assume !(0 == ~cond); {10174#true} is VALID [2022-04-08 12:36:14,927 INFO L290 TraceCheckUtils]: 36: Hoare triple {10174#true} ~cond := #in~cond; {10174#true} is VALID [2022-04-08 12:36:14,927 INFO L272 TraceCheckUtils]: 35: Hoare triple {10450#(< ~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)); {10174#true} is VALID [2022-04-08 12:36:14,927 INFO L290 TraceCheckUtils]: 34: Hoare triple {10450#(< ~counter~0 8)} assume !!(#t~post8 < 10);havoc #t~post8; {10450#(< ~counter~0 8)} is VALID [2022-04-08 12:36:14,927 INFO L290 TraceCheckUtils]: 33: Hoare triple {10475#(< ~counter~0 7)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {10450#(< ~counter~0 8)} is VALID [2022-04-08 12:36:14,927 INFO L290 TraceCheckUtils]: 32: Hoare triple {10475#(< ~counter~0 7)} assume !(~r~0 > 0); {10475#(< ~counter~0 7)} is VALID [2022-04-08 12:36:14,928 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {10174#true} {10475#(< ~counter~0 7)} #96#return; {10475#(< ~counter~0 7)} is VALID [2022-04-08 12:36:14,928 INFO L290 TraceCheckUtils]: 30: Hoare triple {10174#true} assume true; {10174#true} is VALID [2022-04-08 12:36:14,928 INFO L290 TraceCheckUtils]: 29: Hoare triple {10174#true} assume !(0 == ~cond); {10174#true} is VALID [2022-04-08 12:36:14,928 INFO L290 TraceCheckUtils]: 28: Hoare triple {10174#true} ~cond := #in~cond; {10174#true} is VALID [2022-04-08 12:36:14,928 INFO L272 TraceCheckUtils]: 27: Hoare triple {10475#(< ~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)); {10174#true} is VALID [2022-04-08 12:36:14,928 INFO L290 TraceCheckUtils]: 26: Hoare triple {10475#(< ~counter~0 7)} assume !!(#t~post7 < 10);havoc #t~post7; {10475#(< ~counter~0 7)} is VALID [2022-04-08 12:36:14,929 INFO L290 TraceCheckUtils]: 25: Hoare triple {10331#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10475#(< ~counter~0 7)} is VALID [2022-04-08 12:36:14,929 INFO L290 TraceCheckUtils]: 24: Hoare triple {10331#(<= ~counter~0 5)} assume !!(0 != ~r~0); {10331#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:14,929 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {10174#true} {10331#(<= ~counter~0 5)} #94#return; {10331#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:14,930 INFO L290 TraceCheckUtils]: 22: Hoare triple {10174#true} assume true; {10174#true} is VALID [2022-04-08 12:36:14,930 INFO L290 TraceCheckUtils]: 21: Hoare triple {10174#true} assume !(0 == ~cond); {10174#true} is VALID [2022-04-08 12:36:14,930 INFO L290 TraceCheckUtils]: 20: Hoare triple {10174#true} ~cond := #in~cond; {10174#true} is VALID [2022-04-08 12:36:14,930 INFO L272 TraceCheckUtils]: 19: Hoare triple {10331#(<= ~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)); {10174#true} is VALID [2022-04-08 12:36:14,930 INFO L290 TraceCheckUtils]: 18: Hoare triple {10331#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {10331#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:14,930 INFO L290 TraceCheckUtils]: 17: Hoare triple {10306#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10331#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:14,931 INFO L290 TraceCheckUtils]: 16: Hoare triple {10306#(<= ~counter~0 4)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {10306#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:14,931 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {10174#true} {10306#(<= ~counter~0 4)} #92#return; {10306#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:14,931 INFO L290 TraceCheckUtils]: 14: Hoare triple {10174#true} assume true; {10174#true} is VALID [2022-04-08 12:36:14,931 INFO L290 TraceCheckUtils]: 13: Hoare triple {10174#true} assume !(0 == ~cond); {10174#true} is VALID [2022-04-08 12:36:14,931 INFO L290 TraceCheckUtils]: 12: Hoare triple {10174#true} ~cond := #in~cond; {10174#true} is VALID [2022-04-08 12:36:14,931 INFO L272 TraceCheckUtils]: 11: Hoare triple {10306#(<= ~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)); {10174#true} is VALID [2022-04-08 12:36:14,932 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10174#true} {10306#(<= ~counter~0 4)} #90#return; {10306#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:14,932 INFO L290 TraceCheckUtils]: 9: Hoare triple {10174#true} assume true; {10174#true} is VALID [2022-04-08 12:36:14,932 INFO L290 TraceCheckUtils]: 8: Hoare triple {10174#true} assume !(0 == ~cond); {10174#true} is VALID [2022-04-08 12:36:14,932 INFO L290 TraceCheckUtils]: 7: Hoare triple {10174#true} ~cond := #in~cond; {10174#true} is VALID [2022-04-08 12:36:14,932 INFO L272 TraceCheckUtils]: 6: Hoare triple {10306#(<= ~counter~0 4)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {10174#true} is VALID [2022-04-08 12:36:14,932 INFO L290 TraceCheckUtils]: 5: Hoare triple {10306#(<= ~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; {10306#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:14,932 INFO L272 TraceCheckUtils]: 4: Hoare triple {10306#(<= ~counter~0 4)} call #t~ret9 := main(); {10306#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:14,933 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10306#(<= ~counter~0 4)} {10174#true} #102#return; {10306#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:14,933 INFO L290 TraceCheckUtils]: 2: Hoare triple {10306#(<= ~counter~0 4)} assume true; {10306#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:14,933 INFO L290 TraceCheckUtils]: 1: Hoare triple {10174#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; {10306#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:14,933 INFO L272 TraceCheckUtils]: 0: Hoare triple {10174#true} call ULTIMATE.init(); {10174#true} is VALID [2022-04-08 12:36:14,933 INFO L134 CoverageAnalysis]: Checked inductivity of 74 backedges. 12 proven. 18 refuted. 0 times theorem prover too weak. 44 trivial. 0 not checked. [2022-04-08 12:36:14,934 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:36:14,934 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1429081228] [2022-04-08 12:36:14,934 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:36:14,934 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1160713017] [2022-04-08 12:36:14,934 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1160713017] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:36:14,934 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:36:14,934 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 14 [2022-04-08 12:36:14,934 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:36:14,934 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1105550026] [2022-04-08 12:36:14,934 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1105550026] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:36:14,934 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:36:14,934 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 12:36:14,934 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1032432250] [2022-04-08 12:36:14,934 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:36:14,935 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 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 65 [2022-04-08 12:36:14,935 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:36:14,935 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 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-08 12:36:14,978 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 62 edges. 62 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:14,978 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-08 12:36:14,978 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:14,978 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-08 12:36:14,978 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-08 12:36:14,978 INFO L87 Difference]: Start difference. First operand 110 states and 134 transitions. Second operand has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 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-08 12:36:15,310 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:15,310 INFO L93 Difference]: Finished difference Result 153 states and 194 transitions. [2022-04-08 12:36:15,310 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-08 12:36:15,310 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 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 65 [2022-04-08 12:36:15,310 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:36:15,310 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 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-08 12:36:15,311 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 137 transitions. [2022-04-08 12:36:15,311 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 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-08 12:36:15,312 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 137 transitions. [2022-04-08 12:36:15,313 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 137 transitions. [2022-04-08 12:36:15,395 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 137 edges. 137 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:15,397 INFO L225 Difference]: With dead ends: 153 [2022-04-08 12:36:15,397 INFO L226 Difference]: Without dead ends: 116 [2022-04-08 12:36:15,397 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 132 GetRequests, 116 SyntacticMatches, 1 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 21 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=104, Invalid=168, Unknown=0, NotChecked=0, Total=272 [2022-04-08 12:36:15,400 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 43 mSDsluCounter, 127 mSDsCounter, 0 mSdLazyCounter, 55 mSolverCounterSat, 29 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 43 SdHoareTripleChecker+Valid, 172 SdHoareTripleChecker+Invalid, 84 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 29 IncrementalHoareTripleChecker+Valid, 55 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 12:36:15,400 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [43 Valid, 172 Invalid, 84 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [29 Valid, 55 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 12:36:15,401 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 116 states. [2022-04-08 12:36:15,489 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 116 to 113. [2022-04-08 12:36:15,490 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:36:15,490 INFO L82 GeneralOperation]: Start isEquivalent. First operand 116 states. Second operand has 113 states, 82 states have (on average 1.1951219512195121) internal successors, (98), 83 states have internal predecessors, (98), 21 states have call successors, (21), 11 states have call predecessors, (21), 9 states have return successors, (19), 18 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-08 12:36:15,490 INFO L74 IsIncluded]: Start isIncluded. First operand 116 states. Second operand has 113 states, 82 states have (on average 1.1951219512195121) internal successors, (98), 83 states have internal predecessors, (98), 21 states have call successors, (21), 11 states have call predecessors, (21), 9 states have return successors, (19), 18 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-08 12:36:15,490 INFO L87 Difference]: Start difference. First operand 116 states. Second operand has 113 states, 82 states have (on average 1.1951219512195121) internal successors, (98), 83 states have internal predecessors, (98), 21 states have call successors, (21), 11 states have call predecessors, (21), 9 states have return successors, (19), 18 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-08 12:36:15,492 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:15,492 INFO L93 Difference]: Finished difference Result 116 states and 141 transitions. [2022-04-08 12:36:15,492 INFO L276 IsEmpty]: Start isEmpty. Operand 116 states and 141 transitions. [2022-04-08 12:36:15,492 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:15,492 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:15,492 INFO L74 IsIncluded]: Start isIncluded. First operand has 113 states, 82 states have (on average 1.1951219512195121) internal successors, (98), 83 states have internal predecessors, (98), 21 states have call successors, (21), 11 states have call predecessors, (21), 9 states have return successors, (19), 18 states have call predecessors, (19), 19 states have call successors, (19) Second operand 116 states. [2022-04-08 12:36:15,493 INFO L87 Difference]: Start difference. First operand has 113 states, 82 states have (on average 1.1951219512195121) internal successors, (98), 83 states have internal predecessors, (98), 21 states have call successors, (21), 11 states have call predecessors, (21), 9 states have return successors, (19), 18 states have call predecessors, (19), 19 states have call successors, (19) Second operand 116 states. [2022-04-08 12:36:15,494 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:15,494 INFO L93 Difference]: Finished difference Result 116 states and 141 transitions. [2022-04-08 12:36:15,494 INFO L276 IsEmpty]: Start isEmpty. Operand 116 states and 141 transitions. [2022-04-08 12:36:15,494 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:15,494 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:15,494 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:36:15,495 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:36:15,495 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 113 states, 82 states have (on average 1.1951219512195121) internal successors, (98), 83 states have internal predecessors, (98), 21 states have call successors, (21), 11 states have call predecessors, (21), 9 states have return successors, (19), 18 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-08 12:36:15,496 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 113 states to 113 states and 138 transitions. [2022-04-08 12:36:15,496 INFO L78 Accepts]: Start accepts. Automaton has 113 states and 138 transitions. Word has length 65 [2022-04-08 12:36:15,496 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:36:15,496 INFO L478 AbstractCegarLoop]: Abstraction has 113 states and 138 transitions. [2022-04-08 12:36:15,497 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 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-08 12:36:15,497 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 113 states and 138 transitions. [2022-04-08 12:36:17,649 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 138 edges. 137 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:17,650 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 138 transitions. [2022-04-08 12:36:17,650 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 68 [2022-04-08 12:36:17,650 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:36:17,650 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 12:36:17,666 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Forceful destruction successful, exit code 0 [2022-04-08 12:36:17,850 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable14 [2022-04-08 12:36:17,851 INFO L403 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:36:17,851 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:36:17,851 INFO L85 PathProgramCache]: Analyzing trace with hash -1211810838, now seen corresponding path program 1 times [2022-04-08 12:36:17,851 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:17,851 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [369347421] [2022-04-08 12:36:17,852 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:36:17,852 INFO L85 PathProgramCache]: Analyzing trace with hash -1211810838, now seen corresponding path program 2 times [2022-04-08 12:36:17,852 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:36:17,852 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1170248129] [2022-04-08 12:36:17,852 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:36:17,852 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:36:17,864 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:36:17,865 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1667193320] [2022-04-08 12:36:17,865 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:36:17,865 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:36:17,865 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:36:17,865 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 12:36:17,866 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Waiting until timeout for monitored process [2022-04-08 12:36:17,904 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:36:17,904 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:36:17,904 INFO L263 TraceCheckSpWp]: Trace formula consists of 182 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-08 12:36:17,915 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:36:17,916 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:36:18,194 INFO L272 TraceCheckUtils]: 0: Hoare triple {11347#true} call ULTIMATE.init(); {11347#true} is VALID [2022-04-08 12:36:18,195 INFO L290 TraceCheckUtils]: 1: Hoare triple {11347#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; {11355#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:18,195 INFO L290 TraceCheckUtils]: 2: Hoare triple {11355#(<= ~counter~0 0)} assume true; {11355#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:18,196 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11355#(<= ~counter~0 0)} {11347#true} #102#return; {11355#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:18,196 INFO L272 TraceCheckUtils]: 4: Hoare triple {11355#(<= ~counter~0 0)} call #t~ret9 := main(); {11355#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:18,196 INFO L290 TraceCheckUtils]: 5: Hoare triple {11355#(<= ~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; {11355#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:18,196 INFO L272 TraceCheckUtils]: 6: Hoare triple {11355#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {11355#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:18,197 INFO L290 TraceCheckUtils]: 7: Hoare triple {11355#(<= ~counter~0 0)} ~cond := #in~cond; {11355#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:18,197 INFO L290 TraceCheckUtils]: 8: Hoare triple {11355#(<= ~counter~0 0)} assume !(0 == ~cond); {11355#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:18,197 INFO L290 TraceCheckUtils]: 9: Hoare triple {11355#(<= ~counter~0 0)} assume true; {11355#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:18,198 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11355#(<= ~counter~0 0)} {11355#(<= ~counter~0 0)} #90#return; {11355#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:18,198 INFO L272 TraceCheckUtils]: 11: Hoare triple {11355#(<= ~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)); {11355#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:18,198 INFO L290 TraceCheckUtils]: 12: Hoare triple {11355#(<= ~counter~0 0)} ~cond := #in~cond; {11355#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:18,198 INFO L290 TraceCheckUtils]: 13: Hoare triple {11355#(<= ~counter~0 0)} assume !(0 == ~cond); {11355#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:18,199 INFO L290 TraceCheckUtils]: 14: Hoare triple {11355#(<= ~counter~0 0)} assume true; {11355#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:18,199 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {11355#(<= ~counter~0 0)} {11355#(<= ~counter~0 0)} #92#return; {11355#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:18,199 INFO L290 TraceCheckUtils]: 16: Hoare triple {11355#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {11355#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:18,200 INFO L290 TraceCheckUtils]: 17: Hoare triple {11355#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11404#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:18,200 INFO L290 TraceCheckUtils]: 18: Hoare triple {11404#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {11404#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:18,200 INFO L272 TraceCheckUtils]: 19: Hoare triple {11404#(<= ~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)); {11404#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:18,201 INFO L290 TraceCheckUtils]: 20: Hoare triple {11404#(<= ~counter~0 1)} ~cond := #in~cond; {11404#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:18,201 INFO L290 TraceCheckUtils]: 21: Hoare triple {11404#(<= ~counter~0 1)} assume !(0 == ~cond); {11404#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:18,201 INFO L290 TraceCheckUtils]: 22: Hoare triple {11404#(<= ~counter~0 1)} assume true; {11404#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:18,202 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {11404#(<= ~counter~0 1)} {11404#(<= ~counter~0 1)} #94#return; {11404#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:18,202 INFO L290 TraceCheckUtils]: 24: Hoare triple {11404#(<= ~counter~0 1)} assume !!(0 != ~r~0); {11404#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:18,202 INFO L290 TraceCheckUtils]: 25: Hoare triple {11404#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11429#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:18,202 INFO L290 TraceCheckUtils]: 26: Hoare triple {11429#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {11429#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:18,203 INFO L272 TraceCheckUtils]: 27: Hoare triple {11429#(<= ~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)); {11429#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:18,203 INFO L290 TraceCheckUtils]: 28: Hoare triple {11429#(<= ~counter~0 2)} ~cond := #in~cond; {11429#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:18,203 INFO L290 TraceCheckUtils]: 29: Hoare triple {11429#(<= ~counter~0 2)} assume !(0 == ~cond); {11429#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:18,204 INFO L290 TraceCheckUtils]: 30: Hoare triple {11429#(<= ~counter~0 2)} assume true; {11429#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:18,204 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {11429#(<= ~counter~0 2)} {11429#(<= ~counter~0 2)} #96#return; {11429#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:18,204 INFO L290 TraceCheckUtils]: 32: Hoare triple {11429#(<= ~counter~0 2)} assume !(~r~0 > 0); {11429#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:18,205 INFO L290 TraceCheckUtils]: 33: Hoare triple {11429#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {11454#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:18,205 INFO L290 TraceCheckUtils]: 34: Hoare triple {11454#(<= ~counter~0 3)} assume !!(#t~post8 < 10);havoc #t~post8; {11454#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:18,205 INFO L272 TraceCheckUtils]: 35: Hoare triple {11454#(<= ~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)); {11454#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:18,206 INFO L290 TraceCheckUtils]: 36: Hoare triple {11454#(<= ~counter~0 3)} ~cond := #in~cond; {11454#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:18,206 INFO L290 TraceCheckUtils]: 37: Hoare triple {11454#(<= ~counter~0 3)} assume !(0 == ~cond); {11454#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:18,206 INFO L290 TraceCheckUtils]: 38: Hoare triple {11454#(<= ~counter~0 3)} assume true; {11454#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:18,207 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {11454#(<= ~counter~0 3)} {11454#(<= ~counter~0 3)} #98#return; {11454#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:18,207 INFO L290 TraceCheckUtils]: 40: Hoare triple {11454#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {11454#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:18,207 INFO L290 TraceCheckUtils]: 41: Hoare triple {11454#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {11479#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:18,207 INFO L290 TraceCheckUtils]: 42: Hoare triple {11479#(<= ~counter~0 4)} assume !!(#t~post8 < 10);havoc #t~post8; {11479#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:18,208 INFO L272 TraceCheckUtils]: 43: Hoare triple {11479#(<= ~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)); {11479#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:18,208 INFO L290 TraceCheckUtils]: 44: Hoare triple {11479#(<= ~counter~0 4)} ~cond := #in~cond; {11479#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:18,208 INFO L290 TraceCheckUtils]: 45: Hoare triple {11479#(<= ~counter~0 4)} assume !(0 == ~cond); {11479#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:18,209 INFO L290 TraceCheckUtils]: 46: Hoare triple {11479#(<= ~counter~0 4)} assume true; {11479#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:18,209 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {11479#(<= ~counter~0 4)} {11479#(<= ~counter~0 4)} #98#return; {11479#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:18,209 INFO L290 TraceCheckUtils]: 48: Hoare triple {11479#(<= ~counter~0 4)} assume !(~r~0 < 0); {11479#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:18,210 INFO L290 TraceCheckUtils]: 49: Hoare triple {11479#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11504#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:18,210 INFO L290 TraceCheckUtils]: 50: Hoare triple {11504#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {11504#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:18,210 INFO L272 TraceCheckUtils]: 51: Hoare triple {11504#(<= ~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)); {11504#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:18,211 INFO L290 TraceCheckUtils]: 52: Hoare triple {11504#(<= ~counter~0 5)} ~cond := #in~cond; {11504#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:18,211 INFO L290 TraceCheckUtils]: 53: Hoare triple {11504#(<= ~counter~0 5)} assume !(0 == ~cond); {11504#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:18,211 INFO L290 TraceCheckUtils]: 54: Hoare triple {11504#(<= ~counter~0 5)} assume true; {11504#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:18,212 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {11504#(<= ~counter~0 5)} {11504#(<= ~counter~0 5)} #94#return; {11504#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:18,212 INFO L290 TraceCheckUtils]: 56: Hoare triple {11504#(<= ~counter~0 5)} assume !!(0 != ~r~0); {11504#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:18,212 INFO L290 TraceCheckUtils]: 57: Hoare triple {11504#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11529#(<= |main_#t~post7| 5)} is VALID [2022-04-08 12:36:18,212 INFO L290 TraceCheckUtils]: 58: Hoare triple {11529#(<= |main_#t~post7| 5)} assume !(#t~post7 < 10);havoc #t~post7; {11348#false} is VALID [2022-04-08 12:36:18,213 INFO L290 TraceCheckUtils]: 59: Hoare triple {11348#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {11348#false} is VALID [2022-04-08 12:36:18,213 INFO L290 TraceCheckUtils]: 60: Hoare triple {11348#false} assume !(#t~post8 < 10);havoc #t~post8; {11348#false} is VALID [2022-04-08 12:36:18,213 INFO L290 TraceCheckUtils]: 61: Hoare triple {11348#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11348#false} is VALID [2022-04-08 12:36:18,213 INFO L290 TraceCheckUtils]: 62: Hoare triple {11348#false} assume !(#t~post6 < 10);havoc #t~post6; {11348#false} is VALID [2022-04-08 12:36:18,213 INFO L272 TraceCheckUtils]: 63: Hoare triple {11348#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)); {11348#false} is VALID [2022-04-08 12:36:18,213 INFO L290 TraceCheckUtils]: 64: Hoare triple {11348#false} ~cond := #in~cond; {11348#false} is VALID [2022-04-08 12:36:18,213 INFO L290 TraceCheckUtils]: 65: Hoare triple {11348#false} assume 0 == ~cond; {11348#false} is VALID [2022-04-08 12:36:18,213 INFO L290 TraceCheckUtils]: 66: Hoare triple {11348#false} assume !false; {11348#false} is VALID [2022-04-08 12:36:18,213 INFO L134 CoverageAnalysis]: Checked inductivity of 72 backedges. 18 proven. 50 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 12:36:18,213 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:36:18,492 INFO L290 TraceCheckUtils]: 66: Hoare triple {11348#false} assume !false; {11348#false} is VALID [2022-04-08 12:36:18,492 INFO L290 TraceCheckUtils]: 65: Hoare triple {11348#false} assume 0 == ~cond; {11348#false} is VALID [2022-04-08 12:36:18,492 INFO L290 TraceCheckUtils]: 64: Hoare triple {11348#false} ~cond := #in~cond; {11348#false} is VALID [2022-04-08 12:36:18,492 INFO L272 TraceCheckUtils]: 63: Hoare triple {11348#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)); {11348#false} is VALID [2022-04-08 12:36:18,492 INFO L290 TraceCheckUtils]: 62: Hoare triple {11348#false} assume !(#t~post6 < 10);havoc #t~post6; {11348#false} is VALID [2022-04-08 12:36:18,492 INFO L290 TraceCheckUtils]: 61: Hoare triple {11348#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11348#false} is VALID [2022-04-08 12:36:18,492 INFO L290 TraceCheckUtils]: 60: Hoare triple {11348#false} assume !(#t~post8 < 10);havoc #t~post8; {11348#false} is VALID [2022-04-08 12:36:18,492 INFO L290 TraceCheckUtils]: 59: Hoare triple {11348#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {11348#false} is VALID [2022-04-08 12:36:18,492 INFO L290 TraceCheckUtils]: 58: Hoare triple {11581#(< |main_#t~post7| 10)} assume !(#t~post7 < 10);havoc #t~post7; {11348#false} is VALID [2022-04-08 12:36:18,493 INFO L290 TraceCheckUtils]: 57: Hoare triple {11585#(< ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11581#(< |main_#t~post7| 10)} is VALID [2022-04-08 12:36:18,493 INFO L290 TraceCheckUtils]: 56: Hoare triple {11585#(< ~counter~0 10)} assume !!(0 != ~r~0); {11585#(< ~counter~0 10)} is VALID [2022-04-08 12:36:18,494 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {11347#true} {11585#(< ~counter~0 10)} #94#return; {11585#(< ~counter~0 10)} is VALID [2022-04-08 12:36:18,494 INFO L290 TraceCheckUtils]: 54: Hoare triple {11347#true} assume true; {11347#true} is VALID [2022-04-08 12:36:18,494 INFO L290 TraceCheckUtils]: 53: Hoare triple {11347#true} assume !(0 == ~cond); {11347#true} is VALID [2022-04-08 12:36:18,494 INFO L290 TraceCheckUtils]: 52: Hoare triple {11347#true} ~cond := #in~cond; {11347#true} is VALID [2022-04-08 12:36:18,494 INFO L272 TraceCheckUtils]: 51: Hoare triple {11585#(< ~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)); {11347#true} is VALID [2022-04-08 12:36:18,494 INFO L290 TraceCheckUtils]: 50: Hoare triple {11585#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {11585#(< ~counter~0 10)} is VALID [2022-04-08 12:36:18,494 INFO L290 TraceCheckUtils]: 49: Hoare triple {11610#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11585#(< ~counter~0 10)} is VALID [2022-04-08 12:36:18,495 INFO L290 TraceCheckUtils]: 48: Hoare triple {11610#(< ~counter~0 9)} assume !(~r~0 < 0); {11610#(< ~counter~0 9)} is VALID [2022-04-08 12:36:18,495 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {11347#true} {11610#(< ~counter~0 9)} #98#return; {11610#(< ~counter~0 9)} is VALID [2022-04-08 12:36:18,495 INFO L290 TraceCheckUtils]: 46: Hoare triple {11347#true} assume true; {11347#true} is VALID [2022-04-08 12:36:18,495 INFO L290 TraceCheckUtils]: 45: Hoare triple {11347#true} assume !(0 == ~cond); {11347#true} is VALID [2022-04-08 12:36:18,495 INFO L290 TraceCheckUtils]: 44: Hoare triple {11347#true} ~cond := #in~cond; {11347#true} is VALID [2022-04-08 12:36:18,495 INFO L272 TraceCheckUtils]: 43: Hoare triple {11610#(< ~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)); {11347#true} is VALID [2022-04-08 12:36:18,496 INFO L290 TraceCheckUtils]: 42: Hoare triple {11610#(< ~counter~0 9)} assume !!(#t~post8 < 10);havoc #t~post8; {11610#(< ~counter~0 9)} is VALID [2022-04-08 12:36:18,496 INFO L290 TraceCheckUtils]: 41: Hoare triple {11635#(< ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {11610#(< ~counter~0 9)} is VALID [2022-04-08 12:36:18,496 INFO L290 TraceCheckUtils]: 40: Hoare triple {11635#(< ~counter~0 8)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {11635#(< ~counter~0 8)} is VALID [2022-04-08 12:36:18,497 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {11347#true} {11635#(< ~counter~0 8)} #98#return; {11635#(< ~counter~0 8)} is VALID [2022-04-08 12:36:18,497 INFO L290 TraceCheckUtils]: 38: Hoare triple {11347#true} assume true; {11347#true} is VALID [2022-04-08 12:36:18,497 INFO L290 TraceCheckUtils]: 37: Hoare triple {11347#true} assume !(0 == ~cond); {11347#true} is VALID [2022-04-08 12:36:18,497 INFO L290 TraceCheckUtils]: 36: Hoare triple {11347#true} ~cond := #in~cond; {11347#true} is VALID [2022-04-08 12:36:18,497 INFO L272 TraceCheckUtils]: 35: Hoare triple {11635#(< ~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)); {11347#true} is VALID [2022-04-08 12:36:18,497 INFO L290 TraceCheckUtils]: 34: Hoare triple {11635#(< ~counter~0 8)} assume !!(#t~post8 < 10);havoc #t~post8; {11635#(< ~counter~0 8)} is VALID [2022-04-08 12:36:18,498 INFO L290 TraceCheckUtils]: 33: Hoare triple {11660#(< ~counter~0 7)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {11635#(< ~counter~0 8)} is VALID [2022-04-08 12:36:18,498 INFO L290 TraceCheckUtils]: 32: Hoare triple {11660#(< ~counter~0 7)} assume !(~r~0 > 0); {11660#(< ~counter~0 7)} is VALID [2022-04-08 12:36:18,498 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {11347#true} {11660#(< ~counter~0 7)} #96#return; {11660#(< ~counter~0 7)} is VALID [2022-04-08 12:36:18,498 INFO L290 TraceCheckUtils]: 30: Hoare triple {11347#true} assume true; {11347#true} is VALID [2022-04-08 12:36:18,499 INFO L290 TraceCheckUtils]: 29: Hoare triple {11347#true} assume !(0 == ~cond); {11347#true} is VALID [2022-04-08 12:36:18,499 INFO L290 TraceCheckUtils]: 28: Hoare triple {11347#true} ~cond := #in~cond; {11347#true} is VALID [2022-04-08 12:36:18,499 INFO L272 TraceCheckUtils]: 27: Hoare triple {11660#(< ~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)); {11347#true} is VALID [2022-04-08 12:36:18,499 INFO L290 TraceCheckUtils]: 26: Hoare triple {11660#(< ~counter~0 7)} assume !!(#t~post7 < 10);havoc #t~post7; {11660#(< ~counter~0 7)} is VALID [2022-04-08 12:36:18,499 INFO L290 TraceCheckUtils]: 25: Hoare triple {11504#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11660#(< ~counter~0 7)} is VALID [2022-04-08 12:36:18,500 INFO L290 TraceCheckUtils]: 24: Hoare triple {11504#(<= ~counter~0 5)} assume !!(0 != ~r~0); {11504#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:18,500 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {11347#true} {11504#(<= ~counter~0 5)} #94#return; {11504#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:18,500 INFO L290 TraceCheckUtils]: 22: Hoare triple {11347#true} assume true; {11347#true} is VALID [2022-04-08 12:36:18,500 INFO L290 TraceCheckUtils]: 21: Hoare triple {11347#true} assume !(0 == ~cond); {11347#true} is VALID [2022-04-08 12:36:18,500 INFO L290 TraceCheckUtils]: 20: Hoare triple {11347#true} ~cond := #in~cond; {11347#true} is VALID [2022-04-08 12:36:18,500 INFO L272 TraceCheckUtils]: 19: Hoare triple {11504#(<= ~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)); {11347#true} is VALID [2022-04-08 12:36:18,500 INFO L290 TraceCheckUtils]: 18: Hoare triple {11504#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {11504#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:18,501 INFO L290 TraceCheckUtils]: 17: Hoare triple {11479#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11504#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:18,501 INFO L290 TraceCheckUtils]: 16: Hoare triple {11479#(<= ~counter~0 4)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {11479#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:18,501 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {11347#true} {11479#(<= ~counter~0 4)} #92#return; {11479#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:18,501 INFO L290 TraceCheckUtils]: 14: Hoare triple {11347#true} assume true; {11347#true} is VALID [2022-04-08 12:36:18,502 INFO L290 TraceCheckUtils]: 13: Hoare triple {11347#true} assume !(0 == ~cond); {11347#true} is VALID [2022-04-08 12:36:18,502 INFO L290 TraceCheckUtils]: 12: Hoare triple {11347#true} ~cond := #in~cond; {11347#true} is VALID [2022-04-08 12:36:18,502 INFO L272 TraceCheckUtils]: 11: Hoare triple {11479#(<= ~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)); {11347#true} is VALID [2022-04-08 12:36:18,502 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11347#true} {11479#(<= ~counter~0 4)} #90#return; {11479#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:18,502 INFO L290 TraceCheckUtils]: 9: Hoare triple {11347#true} assume true; {11347#true} is VALID [2022-04-08 12:36:18,502 INFO L290 TraceCheckUtils]: 8: Hoare triple {11347#true} assume !(0 == ~cond); {11347#true} is VALID [2022-04-08 12:36:18,502 INFO L290 TraceCheckUtils]: 7: Hoare triple {11347#true} ~cond := #in~cond; {11347#true} is VALID [2022-04-08 12:36:18,502 INFO L272 TraceCheckUtils]: 6: Hoare triple {11479#(<= ~counter~0 4)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {11347#true} is VALID [2022-04-08 12:36:18,502 INFO L290 TraceCheckUtils]: 5: Hoare triple {11479#(<= ~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; {11479#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:18,503 INFO L272 TraceCheckUtils]: 4: Hoare triple {11479#(<= ~counter~0 4)} call #t~ret9 := main(); {11479#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:18,503 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11479#(<= ~counter~0 4)} {11347#true} #102#return; {11479#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:18,503 INFO L290 TraceCheckUtils]: 2: Hoare triple {11479#(<= ~counter~0 4)} assume true; {11479#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:18,504 INFO L290 TraceCheckUtils]: 1: Hoare triple {11347#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; {11479#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:18,504 INFO L272 TraceCheckUtils]: 0: Hoare triple {11347#true} call ULTIMATE.init(); {11347#true} is VALID [2022-04-08 12:36:18,504 INFO L134 CoverageAnalysis]: Checked inductivity of 72 backedges. 18 proven. 10 refuted. 0 times theorem prover too weak. 44 trivial. 0 not checked. [2022-04-08 12:36:18,504 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:36:18,504 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1170248129] [2022-04-08 12:36:18,504 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:36:18,504 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1667193320] [2022-04-08 12:36:18,504 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1667193320] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:36:18,504 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:36:18,504 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 14 [2022-04-08 12:36:18,505 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:36:18,505 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [369347421] [2022-04-08 12:36:18,505 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [369347421] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:36:18,505 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:36:18,505 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 12:36:18,505 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [859122712] [2022-04-08 12:36:18,505 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:36:18,505 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 5.111111111111111) internal successors, (46), 8 states have internal predecessors, (46), 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 67 [2022-04-08 12:36:18,505 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:36:18,505 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 5.111111111111111) internal successors, (46), 8 states have internal predecessors, (46), 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-08 12:36:18,544 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:18,545 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-08 12:36:18,545 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:18,545 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-08 12:36:18,545 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-08 12:36:18,545 INFO L87 Difference]: Start difference. First operand 113 states and 138 transitions. Second operand has 9 states, 9 states have (on average 5.111111111111111) internal successors, (46), 8 states have internal predecessors, (46), 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-08 12:36:18,911 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:18,912 INFO L93 Difference]: Finished difference Result 155 states and 197 transitions. [2022-04-08 12:36:18,912 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-08 12:36:18,912 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 5.111111111111111) internal successors, (46), 8 states have internal predecessors, (46), 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 67 [2022-04-08 12:36:18,912 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:36:18,912 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 5.111111111111111) internal successors, (46), 8 states have internal predecessors, (46), 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-08 12:36:18,914 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 137 transitions. [2022-04-08 12:36:18,914 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 5.111111111111111) internal successors, (46), 8 states have internal predecessors, (46), 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-08 12:36:18,915 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 137 transitions. [2022-04-08 12:36:18,915 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 137 transitions. [2022-04-08 12:36:19,007 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 137 edges. 137 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:19,008 INFO L225 Difference]: With dead ends: 155 [2022-04-08 12:36:19,008 INFO L226 Difference]: Without dead ends: 118 [2022-04-08 12:36:19,009 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 137 GetRequests, 120 SyntacticMatches, 1 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 24 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=119, Invalid=187, Unknown=0, NotChecked=0, Total=306 [2022-04-08 12:36:19,009 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 43 mSDsluCounter, 134 mSDsCounter, 0 mSdLazyCounter, 73 mSolverCounterSat, 42 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 43 SdHoareTripleChecker+Valid, 179 SdHoareTripleChecker+Invalid, 115 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 42 IncrementalHoareTripleChecker+Valid, 73 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 12:36:19,009 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [43 Valid, 179 Invalid, 115 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [42 Valid, 73 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 12:36:19,010 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 118 states. [2022-04-08 12:36:19,111 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 118 to 118. [2022-04-08 12:36:19,111 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:36:19,111 INFO L82 GeneralOperation]: Start isEquivalent. First operand 118 states. Second operand has 118 states, 87 states have (on average 1.1839080459770115) internal successors, (103), 87 states have internal predecessors, (103), 21 states have call successors, (21), 11 states have call predecessors, (21), 9 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-08 12:36:19,112 INFO L74 IsIncluded]: Start isIncluded. First operand 118 states. Second operand has 118 states, 87 states have (on average 1.1839080459770115) internal successors, (103), 87 states have internal predecessors, (103), 21 states have call successors, (21), 11 states have call predecessors, (21), 9 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-08 12:36:19,112 INFO L87 Difference]: Start difference. First operand 118 states. Second operand has 118 states, 87 states have (on average 1.1839080459770115) internal successors, (103), 87 states have internal predecessors, (103), 21 states have call successors, (21), 11 states have call predecessors, (21), 9 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-08 12:36:19,113 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:19,113 INFO L93 Difference]: Finished difference Result 118 states and 143 transitions. [2022-04-08 12:36:19,113 INFO L276 IsEmpty]: Start isEmpty. Operand 118 states and 143 transitions. [2022-04-08 12:36:19,114 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:19,114 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:19,114 INFO L74 IsIncluded]: Start isIncluded. First operand has 118 states, 87 states have (on average 1.1839080459770115) internal successors, (103), 87 states have internal predecessors, (103), 21 states have call successors, (21), 11 states have call predecessors, (21), 9 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) Second operand 118 states. [2022-04-08 12:36:19,114 INFO L87 Difference]: Start difference. First operand has 118 states, 87 states have (on average 1.1839080459770115) internal successors, (103), 87 states have internal predecessors, (103), 21 states have call successors, (21), 11 states have call predecessors, (21), 9 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) Second operand 118 states. [2022-04-08 12:36:19,115 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:19,116 INFO L93 Difference]: Finished difference Result 118 states and 143 transitions. [2022-04-08 12:36:19,116 INFO L276 IsEmpty]: Start isEmpty. Operand 118 states and 143 transitions. [2022-04-08 12:36:19,116 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:19,116 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:19,116 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:36:19,116 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:36:19,116 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 118 states, 87 states have (on average 1.1839080459770115) internal successors, (103), 87 states have internal predecessors, (103), 21 states have call successors, (21), 11 states have call predecessors, (21), 9 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-08 12:36:19,117 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 118 states to 118 states and 143 transitions. [2022-04-08 12:36:19,118 INFO L78 Accepts]: Start accepts. Automaton has 118 states and 143 transitions. Word has length 67 [2022-04-08 12:36:19,118 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:36:19,118 INFO L478 AbstractCegarLoop]: Abstraction has 118 states and 143 transitions. [2022-04-08 12:36:19,118 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 5.111111111111111) internal successors, (46), 8 states have internal predecessors, (46), 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-08 12:36:19,118 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 118 states and 143 transitions. [2022-04-08 12:36:21,250 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 143 edges. 142 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:21,251 INFO L276 IsEmpty]: Start isEmpty. Operand 118 states and 143 transitions. [2022-04-08 12:36:21,251 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 72 [2022-04-08 12:36:21,251 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:36:21,251 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 6, 4, 4, 4, 4, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 12:36:21,269 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Forceful destruction successful, exit code 0 [2022-04-08 12:36:21,467 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 17 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable15 [2022-04-08 12:36:21,467 INFO L403 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:36:21,468 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:36:21,468 INFO L85 PathProgramCache]: Analyzing trace with hash 1645787183, now seen corresponding path program 5 times [2022-04-08 12:36:21,468 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:21,468 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1582158365] [2022-04-08 12:36:21,468 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:36:21,468 INFO L85 PathProgramCache]: Analyzing trace with hash 1645787183, now seen corresponding path program 6 times [2022-04-08 12:36:21,468 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:36:21,468 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1367254356] [2022-04-08 12:36:21,468 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:36:21,468 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:36:21,479 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:36:21,479 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1161948445] [2022-04-08 12:36:21,479 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 12:36:21,479 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:36:21,480 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:36:21,480 INFO L229 MonitoredProcess]: Starting monitored process 18 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 12:36:21,481 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Waiting until timeout for monitored process [2022-04-08 12:36:21,541 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-08 12:36:21,542 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:36:21,542 INFO L263 TraceCheckSpWp]: Trace formula consists of 195 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-08 12:36:21,555 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:36:21,555 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:36:21,877 INFO L272 TraceCheckUtils]: 0: Hoare triple {12552#true} call ULTIMATE.init(); {12552#true} is VALID [2022-04-08 12:36:21,878 INFO L290 TraceCheckUtils]: 1: Hoare triple {12552#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; {12560#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:21,878 INFO L290 TraceCheckUtils]: 2: Hoare triple {12560#(<= ~counter~0 0)} assume true; {12560#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:21,878 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12560#(<= ~counter~0 0)} {12552#true} #102#return; {12560#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:21,879 INFO L272 TraceCheckUtils]: 4: Hoare triple {12560#(<= ~counter~0 0)} call #t~ret9 := main(); {12560#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:21,879 INFO L290 TraceCheckUtils]: 5: Hoare triple {12560#(<= ~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; {12560#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:21,879 INFO L272 TraceCheckUtils]: 6: Hoare triple {12560#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {12560#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:21,879 INFO L290 TraceCheckUtils]: 7: Hoare triple {12560#(<= ~counter~0 0)} ~cond := #in~cond; {12560#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:21,880 INFO L290 TraceCheckUtils]: 8: Hoare triple {12560#(<= ~counter~0 0)} assume !(0 == ~cond); {12560#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:21,880 INFO L290 TraceCheckUtils]: 9: Hoare triple {12560#(<= ~counter~0 0)} assume true; {12560#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:21,880 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12560#(<= ~counter~0 0)} {12560#(<= ~counter~0 0)} #90#return; {12560#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:21,881 INFO L272 TraceCheckUtils]: 11: Hoare triple {12560#(<= ~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)); {12560#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:21,881 INFO L290 TraceCheckUtils]: 12: Hoare triple {12560#(<= ~counter~0 0)} ~cond := #in~cond; {12560#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:21,881 INFO L290 TraceCheckUtils]: 13: Hoare triple {12560#(<= ~counter~0 0)} assume !(0 == ~cond); {12560#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:21,881 INFO L290 TraceCheckUtils]: 14: Hoare triple {12560#(<= ~counter~0 0)} assume true; {12560#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:21,882 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {12560#(<= ~counter~0 0)} {12560#(<= ~counter~0 0)} #92#return; {12560#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:21,882 INFO L290 TraceCheckUtils]: 16: Hoare triple {12560#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {12560#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:21,883 INFO L290 TraceCheckUtils]: 17: Hoare triple {12560#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12609#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:21,883 INFO L290 TraceCheckUtils]: 18: Hoare triple {12609#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {12609#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:21,883 INFO L272 TraceCheckUtils]: 19: Hoare triple {12609#(<= ~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)); {12609#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:21,883 INFO L290 TraceCheckUtils]: 20: Hoare triple {12609#(<= ~counter~0 1)} ~cond := #in~cond; {12609#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:21,884 INFO L290 TraceCheckUtils]: 21: Hoare triple {12609#(<= ~counter~0 1)} assume !(0 == ~cond); {12609#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:21,884 INFO L290 TraceCheckUtils]: 22: Hoare triple {12609#(<= ~counter~0 1)} assume true; {12609#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:21,884 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {12609#(<= ~counter~0 1)} {12609#(<= ~counter~0 1)} #94#return; {12609#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:21,885 INFO L290 TraceCheckUtils]: 24: Hoare triple {12609#(<= ~counter~0 1)} assume !!(0 != ~r~0); {12609#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:21,885 INFO L290 TraceCheckUtils]: 25: Hoare triple {12609#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {12634#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:21,885 INFO L290 TraceCheckUtils]: 26: Hoare triple {12634#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {12634#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:21,886 INFO L272 TraceCheckUtils]: 27: Hoare triple {12634#(<= ~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)); {12634#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:21,886 INFO L290 TraceCheckUtils]: 28: Hoare triple {12634#(<= ~counter~0 2)} ~cond := #in~cond; {12634#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:21,886 INFO L290 TraceCheckUtils]: 29: Hoare triple {12634#(<= ~counter~0 2)} assume !(0 == ~cond); {12634#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:21,886 INFO L290 TraceCheckUtils]: 30: Hoare triple {12634#(<= ~counter~0 2)} assume true; {12634#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:21,887 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {12634#(<= ~counter~0 2)} {12634#(<= ~counter~0 2)} #96#return; {12634#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:21,887 INFO L290 TraceCheckUtils]: 32: Hoare triple {12634#(<= ~counter~0 2)} assume !(~r~0 > 0); {12634#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:21,888 INFO L290 TraceCheckUtils]: 33: Hoare triple {12634#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {12659#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:21,888 INFO L290 TraceCheckUtils]: 34: Hoare triple {12659#(<= ~counter~0 3)} assume !!(#t~post8 < 10);havoc #t~post8; {12659#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:21,888 INFO L272 TraceCheckUtils]: 35: Hoare triple {12659#(<= ~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)); {12659#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:21,888 INFO L290 TraceCheckUtils]: 36: Hoare triple {12659#(<= ~counter~0 3)} ~cond := #in~cond; {12659#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:21,889 INFO L290 TraceCheckUtils]: 37: Hoare triple {12659#(<= ~counter~0 3)} assume !(0 == ~cond); {12659#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:21,889 INFO L290 TraceCheckUtils]: 38: Hoare triple {12659#(<= ~counter~0 3)} assume true; {12659#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:21,889 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {12659#(<= ~counter~0 3)} {12659#(<= ~counter~0 3)} #98#return; {12659#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:21,890 INFO L290 TraceCheckUtils]: 40: Hoare triple {12659#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {12659#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:21,890 INFO L290 TraceCheckUtils]: 41: Hoare triple {12659#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {12684#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:21,891 INFO L290 TraceCheckUtils]: 42: Hoare triple {12684#(<= ~counter~0 4)} assume !!(#t~post8 < 10);havoc #t~post8; {12684#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:21,891 INFO L272 TraceCheckUtils]: 43: Hoare triple {12684#(<= ~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)); {12684#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:21,891 INFO L290 TraceCheckUtils]: 44: Hoare triple {12684#(<= ~counter~0 4)} ~cond := #in~cond; {12684#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:21,892 INFO L290 TraceCheckUtils]: 45: Hoare triple {12684#(<= ~counter~0 4)} assume !(0 == ~cond); {12684#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:21,892 INFO L290 TraceCheckUtils]: 46: Hoare triple {12684#(<= ~counter~0 4)} assume true; {12684#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:21,892 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {12684#(<= ~counter~0 4)} {12684#(<= ~counter~0 4)} #98#return; {12684#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:21,893 INFO L290 TraceCheckUtils]: 48: Hoare triple {12684#(<= ~counter~0 4)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {12684#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:21,893 INFO L290 TraceCheckUtils]: 49: Hoare triple {12684#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {12709#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:21,893 INFO L290 TraceCheckUtils]: 50: Hoare triple {12709#(<= ~counter~0 5)} assume !!(#t~post8 < 10);havoc #t~post8; {12709#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:21,894 INFO L272 TraceCheckUtils]: 51: Hoare triple {12709#(<= ~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)); {12709#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:21,894 INFO L290 TraceCheckUtils]: 52: Hoare triple {12709#(<= ~counter~0 5)} ~cond := #in~cond; {12709#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:21,894 INFO L290 TraceCheckUtils]: 53: Hoare triple {12709#(<= ~counter~0 5)} assume !(0 == ~cond); {12709#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:21,894 INFO L290 TraceCheckUtils]: 54: Hoare triple {12709#(<= ~counter~0 5)} assume true; {12709#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:21,895 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {12709#(<= ~counter~0 5)} {12709#(<= ~counter~0 5)} #98#return; {12709#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:21,895 INFO L290 TraceCheckUtils]: 56: Hoare triple {12709#(<= ~counter~0 5)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {12709#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:21,895 INFO L290 TraceCheckUtils]: 57: Hoare triple {12709#(<= ~counter~0 5)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {12734#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:21,896 INFO L290 TraceCheckUtils]: 58: Hoare triple {12734#(<= ~counter~0 6)} assume !!(#t~post8 < 10);havoc #t~post8; {12734#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:21,909 INFO L272 TraceCheckUtils]: 59: Hoare triple {12734#(<= ~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)); {12734#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:21,910 INFO L290 TraceCheckUtils]: 60: Hoare triple {12734#(<= ~counter~0 6)} ~cond := #in~cond; {12734#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:21,910 INFO L290 TraceCheckUtils]: 61: Hoare triple {12734#(<= ~counter~0 6)} assume !(0 == ~cond); {12734#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:21,910 INFO L290 TraceCheckUtils]: 62: Hoare triple {12734#(<= ~counter~0 6)} assume true; {12734#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:21,911 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {12734#(<= ~counter~0 6)} {12734#(<= ~counter~0 6)} #98#return; {12734#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:21,911 INFO L290 TraceCheckUtils]: 64: Hoare triple {12734#(<= ~counter~0 6)} assume !(~r~0 < 0); {12734#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:21,911 INFO L290 TraceCheckUtils]: 65: Hoare triple {12734#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12759#(<= |main_#t~post6| 6)} is VALID [2022-04-08 12:36:21,912 INFO L290 TraceCheckUtils]: 66: Hoare triple {12759#(<= |main_#t~post6| 6)} assume !(#t~post6 < 10);havoc #t~post6; {12553#false} is VALID [2022-04-08 12:36:21,912 INFO L272 TraceCheckUtils]: 67: Hoare triple {12553#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)); {12553#false} is VALID [2022-04-08 12:36:21,912 INFO L290 TraceCheckUtils]: 68: Hoare triple {12553#false} ~cond := #in~cond; {12553#false} is VALID [2022-04-08 12:36:21,912 INFO L290 TraceCheckUtils]: 69: Hoare triple {12553#false} assume 0 == ~cond; {12553#false} is VALID [2022-04-08 12:36:21,912 INFO L290 TraceCheckUtils]: 70: Hoare triple {12553#false} assume !false; {12553#false} is VALID [2022-04-08 12:36:21,912 INFO L134 CoverageAnalysis]: Checked inductivity of 102 backedges. 12 proven. 86 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 12:36:21,912 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:36:22,227 INFO L290 TraceCheckUtils]: 70: Hoare triple {12553#false} assume !false; {12553#false} is VALID [2022-04-08 12:36:22,227 INFO L290 TraceCheckUtils]: 69: Hoare triple {12553#false} assume 0 == ~cond; {12553#false} is VALID [2022-04-08 12:36:22,227 INFO L290 TraceCheckUtils]: 68: Hoare triple {12553#false} ~cond := #in~cond; {12553#false} is VALID [2022-04-08 12:36:22,227 INFO L272 TraceCheckUtils]: 67: Hoare triple {12553#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)); {12553#false} is VALID [2022-04-08 12:36:22,231 INFO L290 TraceCheckUtils]: 66: Hoare triple {12787#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {12553#false} is VALID [2022-04-08 12:36:22,231 INFO L290 TraceCheckUtils]: 65: Hoare triple {12791#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12787#(< |main_#t~post6| 10)} is VALID [2022-04-08 12:36:22,231 INFO L290 TraceCheckUtils]: 64: Hoare triple {12791#(< ~counter~0 10)} assume !(~r~0 < 0); {12791#(< ~counter~0 10)} is VALID [2022-04-08 12:36:22,232 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {12552#true} {12791#(< ~counter~0 10)} #98#return; {12791#(< ~counter~0 10)} is VALID [2022-04-08 12:36:22,232 INFO L290 TraceCheckUtils]: 62: Hoare triple {12552#true} assume true; {12552#true} is VALID [2022-04-08 12:36:22,232 INFO L290 TraceCheckUtils]: 61: Hoare triple {12552#true} assume !(0 == ~cond); {12552#true} is VALID [2022-04-08 12:36:22,232 INFO L290 TraceCheckUtils]: 60: Hoare triple {12552#true} ~cond := #in~cond; {12552#true} is VALID [2022-04-08 12:36:22,232 INFO L272 TraceCheckUtils]: 59: Hoare triple {12791#(< ~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)); {12552#true} is VALID [2022-04-08 12:36:22,232 INFO L290 TraceCheckUtils]: 58: Hoare triple {12791#(< ~counter~0 10)} assume !!(#t~post8 < 10);havoc #t~post8; {12791#(< ~counter~0 10)} is VALID [2022-04-08 12:36:22,233 INFO L290 TraceCheckUtils]: 57: Hoare triple {12816#(< ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {12791#(< ~counter~0 10)} is VALID [2022-04-08 12:36:22,233 INFO L290 TraceCheckUtils]: 56: Hoare triple {12816#(< ~counter~0 9)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {12816#(< ~counter~0 9)} is VALID [2022-04-08 12:36:22,234 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {12552#true} {12816#(< ~counter~0 9)} #98#return; {12816#(< ~counter~0 9)} is VALID [2022-04-08 12:36:22,234 INFO L290 TraceCheckUtils]: 54: Hoare triple {12552#true} assume true; {12552#true} is VALID [2022-04-08 12:36:22,234 INFO L290 TraceCheckUtils]: 53: Hoare triple {12552#true} assume !(0 == ~cond); {12552#true} is VALID [2022-04-08 12:36:22,234 INFO L290 TraceCheckUtils]: 52: Hoare triple {12552#true} ~cond := #in~cond; {12552#true} is VALID [2022-04-08 12:36:22,234 INFO L272 TraceCheckUtils]: 51: Hoare triple {12816#(< ~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)); {12552#true} is VALID [2022-04-08 12:36:22,234 INFO L290 TraceCheckUtils]: 50: Hoare triple {12816#(< ~counter~0 9)} assume !!(#t~post8 < 10);havoc #t~post8; {12816#(< ~counter~0 9)} is VALID [2022-04-08 12:36:22,234 INFO L290 TraceCheckUtils]: 49: Hoare triple {12841#(< ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {12816#(< ~counter~0 9)} is VALID [2022-04-08 12:36:22,235 INFO L290 TraceCheckUtils]: 48: Hoare triple {12841#(< ~counter~0 8)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {12841#(< ~counter~0 8)} is VALID [2022-04-08 12:36:22,235 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {12552#true} {12841#(< ~counter~0 8)} #98#return; {12841#(< ~counter~0 8)} is VALID [2022-04-08 12:36:22,235 INFO L290 TraceCheckUtils]: 46: Hoare triple {12552#true} assume true; {12552#true} is VALID [2022-04-08 12:36:22,235 INFO L290 TraceCheckUtils]: 45: Hoare triple {12552#true} assume !(0 == ~cond); {12552#true} is VALID [2022-04-08 12:36:22,235 INFO L290 TraceCheckUtils]: 44: Hoare triple {12552#true} ~cond := #in~cond; {12552#true} is VALID [2022-04-08 12:36:22,235 INFO L272 TraceCheckUtils]: 43: Hoare triple {12841#(< ~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)); {12552#true} is VALID [2022-04-08 12:36:22,236 INFO L290 TraceCheckUtils]: 42: Hoare triple {12841#(< ~counter~0 8)} assume !!(#t~post8 < 10);havoc #t~post8; {12841#(< ~counter~0 8)} is VALID [2022-04-08 12:36:22,236 INFO L290 TraceCheckUtils]: 41: Hoare triple {12734#(<= ~counter~0 6)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {12841#(< ~counter~0 8)} is VALID [2022-04-08 12:36:22,236 INFO L290 TraceCheckUtils]: 40: Hoare triple {12734#(<= ~counter~0 6)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {12734#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:22,237 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {12552#true} {12734#(<= ~counter~0 6)} #98#return; {12734#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:22,237 INFO L290 TraceCheckUtils]: 38: Hoare triple {12552#true} assume true; {12552#true} is VALID [2022-04-08 12:36:22,237 INFO L290 TraceCheckUtils]: 37: Hoare triple {12552#true} assume !(0 == ~cond); {12552#true} is VALID [2022-04-08 12:36:22,237 INFO L290 TraceCheckUtils]: 36: Hoare triple {12552#true} ~cond := #in~cond; {12552#true} is VALID [2022-04-08 12:36:22,237 INFO L272 TraceCheckUtils]: 35: Hoare triple {12734#(<= ~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)); {12552#true} is VALID [2022-04-08 12:36:22,237 INFO L290 TraceCheckUtils]: 34: Hoare triple {12734#(<= ~counter~0 6)} assume !!(#t~post8 < 10);havoc #t~post8; {12734#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:22,238 INFO L290 TraceCheckUtils]: 33: Hoare triple {12709#(<= ~counter~0 5)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {12734#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:22,238 INFO L290 TraceCheckUtils]: 32: Hoare triple {12709#(<= ~counter~0 5)} assume !(~r~0 > 0); {12709#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:22,238 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {12552#true} {12709#(<= ~counter~0 5)} #96#return; {12709#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:22,238 INFO L290 TraceCheckUtils]: 30: Hoare triple {12552#true} assume true; {12552#true} is VALID [2022-04-08 12:36:22,238 INFO L290 TraceCheckUtils]: 29: Hoare triple {12552#true} assume !(0 == ~cond); {12552#true} is VALID [2022-04-08 12:36:22,239 INFO L290 TraceCheckUtils]: 28: Hoare triple {12552#true} ~cond := #in~cond; {12552#true} is VALID [2022-04-08 12:36:22,239 INFO L272 TraceCheckUtils]: 27: Hoare triple {12709#(<= ~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)); {12552#true} is VALID [2022-04-08 12:36:22,239 INFO L290 TraceCheckUtils]: 26: Hoare triple {12709#(<= ~counter~0 5)} assume !!(#t~post7 < 10);havoc #t~post7; {12709#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:22,239 INFO L290 TraceCheckUtils]: 25: Hoare triple {12684#(<= ~counter~0 4)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {12709#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:22,239 INFO L290 TraceCheckUtils]: 24: Hoare triple {12684#(<= ~counter~0 4)} assume !!(0 != ~r~0); {12684#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:22,240 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {12552#true} {12684#(<= ~counter~0 4)} #94#return; {12684#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:22,240 INFO L290 TraceCheckUtils]: 22: Hoare triple {12552#true} assume true; {12552#true} is VALID [2022-04-08 12:36:22,240 INFO L290 TraceCheckUtils]: 21: Hoare triple {12552#true} assume !(0 == ~cond); {12552#true} is VALID [2022-04-08 12:36:22,240 INFO L290 TraceCheckUtils]: 20: Hoare triple {12552#true} ~cond := #in~cond; {12552#true} is VALID [2022-04-08 12:36:22,240 INFO L272 TraceCheckUtils]: 19: Hoare triple {12684#(<= ~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)); {12552#true} is VALID [2022-04-08 12:36:22,240 INFO L290 TraceCheckUtils]: 18: Hoare triple {12684#(<= ~counter~0 4)} assume !!(#t~post6 < 10);havoc #t~post6; {12684#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:22,241 INFO L290 TraceCheckUtils]: 17: Hoare triple {12659#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12684#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:22,241 INFO L290 TraceCheckUtils]: 16: Hoare triple {12659#(<= ~counter~0 3)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {12659#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:22,241 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {12552#true} {12659#(<= ~counter~0 3)} #92#return; {12659#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:22,241 INFO L290 TraceCheckUtils]: 14: Hoare triple {12552#true} assume true; {12552#true} is VALID [2022-04-08 12:36:22,242 INFO L290 TraceCheckUtils]: 13: Hoare triple {12552#true} assume !(0 == ~cond); {12552#true} is VALID [2022-04-08 12:36:22,242 INFO L290 TraceCheckUtils]: 12: Hoare triple {12552#true} ~cond := #in~cond; {12552#true} is VALID [2022-04-08 12:36:22,242 INFO L272 TraceCheckUtils]: 11: Hoare triple {12659#(<= ~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)); {12552#true} is VALID [2022-04-08 12:36:22,242 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12552#true} {12659#(<= ~counter~0 3)} #90#return; {12659#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:22,242 INFO L290 TraceCheckUtils]: 9: Hoare triple {12552#true} assume true; {12552#true} is VALID [2022-04-08 12:36:22,242 INFO L290 TraceCheckUtils]: 8: Hoare triple {12552#true} assume !(0 == ~cond); {12552#true} is VALID [2022-04-08 12:36:22,242 INFO L290 TraceCheckUtils]: 7: Hoare triple {12552#true} ~cond := #in~cond; {12552#true} is VALID [2022-04-08 12:36:22,242 INFO L272 TraceCheckUtils]: 6: Hoare triple {12659#(<= ~counter~0 3)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {12552#true} is VALID [2022-04-08 12:36:22,242 INFO L290 TraceCheckUtils]: 5: Hoare triple {12659#(<= ~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; {12659#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:22,243 INFO L272 TraceCheckUtils]: 4: Hoare triple {12659#(<= ~counter~0 3)} call #t~ret9 := main(); {12659#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:22,243 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12659#(<= ~counter~0 3)} {12552#true} #102#return; {12659#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:22,243 INFO L290 TraceCheckUtils]: 2: Hoare triple {12659#(<= ~counter~0 3)} assume true; {12659#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:22,244 INFO L290 TraceCheckUtils]: 1: Hoare triple {12552#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; {12659#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:22,244 INFO L272 TraceCheckUtils]: 0: Hoare triple {12552#true} call ULTIMATE.init(); {12552#true} is VALID [2022-04-08 12:36:22,244 INFO L134 CoverageAnalysis]: Checked inductivity of 102 backedges. 12 proven. 26 refuted. 0 times theorem prover too weak. 64 trivial. 0 not checked. [2022-04-08 12:36:22,244 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:36:22,244 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1367254356] [2022-04-08 12:36:22,244 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:36:22,244 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1161948445] [2022-04-08 12:36:22,244 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1161948445] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:36:22,244 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:36:22,244 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 14 [2022-04-08 12:36:22,245 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:36:22,245 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1582158365] [2022-04-08 12:36:22,245 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1582158365] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:36:22,245 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:36:22,245 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-08 12:36:22,245 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [92749820] [2022-04-08 12:36:22,245 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:36:22,245 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.8) internal successors, (48), 9 states have internal predecessors, (48), 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 71 [2022-04-08 12:36:22,245 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:36:22,245 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 4.8) internal successors, (48), 9 states have internal predecessors, (48), 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-08 12:36:22,287 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:22,287 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-08 12:36:22,287 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:22,288 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-08 12:36:22,288 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-08 12:36:22,288 INFO L87 Difference]: Start difference. First operand 118 states and 143 transitions. Second operand has 10 states, 10 states have (on average 4.8) internal successors, (48), 9 states have internal predecessors, (48), 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-08 12:36:22,673 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:22,673 INFO L93 Difference]: Finished difference Result 141 states and 172 transitions. [2022-04-08 12:36:22,673 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-08 12:36:22,673 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.8) internal successors, (48), 9 states have internal predecessors, (48), 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 71 [2022-04-08 12:36:22,673 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:36:22,673 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.8) internal successors, (48), 9 states have internal predecessors, (48), 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-08 12:36:22,675 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 135 transitions. [2022-04-08 12:36:22,675 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.8) internal successors, (48), 9 states have internal predecessors, (48), 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-08 12:36:22,676 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 135 transitions. [2022-04-08 12:36:22,676 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 135 transitions. [2022-04-08 12:36:22,811 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 135 edges. 135 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:22,816 INFO L225 Difference]: With dead ends: 141 [2022-04-08 12:36:22,816 INFO L226 Difference]: Without dead ends: 136 [2022-04-08 12:36:22,816 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 144 GetRequests, 128 SyntacticMatches, 1 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 21 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=104, Invalid=168, Unknown=0, NotChecked=0, Total=272 [2022-04-08 12:36:22,817 INFO L913 BasicCegarLoop]: 48 mSDtfsCounter, 57 mSDsluCounter, 146 mSDsCounter, 0 mSdLazyCounter, 70 mSolverCounterSat, 43 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 57 SdHoareTripleChecker+Valid, 194 SdHoareTripleChecker+Invalid, 113 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 43 IncrementalHoareTripleChecker+Valid, 70 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 12:36:22,817 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [57 Valid, 194 Invalid, 113 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [43 Valid, 70 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 12:36:22,817 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 136 states. [2022-04-08 12:36:22,923 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 136 to 129. [2022-04-08 12:36:22,923 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:36:22,924 INFO L82 GeneralOperation]: Start isEquivalent. First operand 136 states. Second operand has 129 states, 93 states have (on average 1.1827956989247312) internal successors, (110), 96 states have internal predecessors, (110), 25 states have call successors, (25), 12 states have call predecessors, (25), 10 states have return successors, (23), 20 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 12:36:22,924 INFO L74 IsIncluded]: Start isIncluded. First operand 136 states. Second operand has 129 states, 93 states have (on average 1.1827956989247312) internal successors, (110), 96 states have internal predecessors, (110), 25 states have call successors, (25), 12 states have call predecessors, (25), 10 states have return successors, (23), 20 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 12:36:22,924 INFO L87 Difference]: Start difference. First operand 136 states. Second operand has 129 states, 93 states have (on average 1.1827956989247312) internal successors, (110), 96 states have internal predecessors, (110), 25 states have call successors, (25), 12 states have call predecessors, (25), 10 states have return successors, (23), 20 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 12:36:22,926 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:22,926 INFO L93 Difference]: Finished difference Result 136 states and 167 transitions. [2022-04-08 12:36:22,926 INFO L276 IsEmpty]: Start isEmpty. Operand 136 states and 167 transitions. [2022-04-08 12:36:22,926 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:22,926 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:22,926 INFO L74 IsIncluded]: Start isIncluded. First operand has 129 states, 93 states have (on average 1.1827956989247312) internal successors, (110), 96 states have internal predecessors, (110), 25 states have call successors, (25), 12 states have call predecessors, (25), 10 states have return successors, (23), 20 states have call predecessors, (23), 23 states have call successors, (23) Second operand 136 states. [2022-04-08 12:36:22,927 INFO L87 Difference]: Start difference. First operand has 129 states, 93 states have (on average 1.1827956989247312) internal successors, (110), 96 states have internal predecessors, (110), 25 states have call successors, (25), 12 states have call predecessors, (25), 10 states have return successors, (23), 20 states have call predecessors, (23), 23 states have call successors, (23) Second operand 136 states. [2022-04-08 12:36:22,928 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:22,928 INFO L93 Difference]: Finished difference Result 136 states and 167 transitions. [2022-04-08 12:36:22,929 INFO L276 IsEmpty]: Start isEmpty. Operand 136 states and 167 transitions. [2022-04-08 12:36:22,929 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:22,929 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:22,929 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:36:22,929 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:36:22,929 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 129 states, 93 states have (on average 1.1827956989247312) internal successors, (110), 96 states have internal predecessors, (110), 25 states have call successors, (25), 12 states have call predecessors, (25), 10 states have return successors, (23), 20 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-08 12:36:22,931 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 129 states to 129 states and 158 transitions. [2022-04-08 12:36:22,931 INFO L78 Accepts]: Start accepts. Automaton has 129 states and 158 transitions. Word has length 71 [2022-04-08 12:36:22,931 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:36:22,931 INFO L478 AbstractCegarLoop]: Abstraction has 129 states and 158 transitions. [2022-04-08 12:36:22,931 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 4.8) internal successors, (48), 9 states have internal predecessors, (48), 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-08 12:36:22,931 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 129 states and 158 transitions. [2022-04-08 12:36:23,843 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 158 edges. 158 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:23,844 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 158 transitions. [2022-04-08 12:36:23,844 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 74 [2022-04-08 12:36:23,844 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:36:23,844 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 6, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 12:36:23,860 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Ended with exit code 0 [2022-04-08 12:36:24,051 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 18 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable16 [2022-04-08 12:36:24,052 INFO L403 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:36:24,052 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:36:24,052 INFO L85 PathProgramCache]: Analyzing trace with hash -15963768, now seen corresponding path program 1 times [2022-04-08 12:36:24,052 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:24,052 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2028018302] [2022-04-08 12:36:24,052 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:36:24,052 INFO L85 PathProgramCache]: Analyzing trace with hash -15963768, now seen corresponding path program 2 times [2022-04-08 12:36:24,053 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:36:24,053 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2038713563] [2022-04-08 12:36:24,053 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:36:24,053 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:36:24,062 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:36:24,062 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1904434205] [2022-04-08 12:36:24,062 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:36:24,062 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:36:24,062 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:36:24,063 INFO L229 MonitoredProcess]: Starting monitored process 19 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 12:36:24,065 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Waiting until timeout for monitored process [2022-04-08 12:36:24,102 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:36:24,102 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:36:24,103 INFO L263 TraceCheckSpWp]: Trace formula consists of 192 conjuncts, 3 conjunts are in the unsatisfiable core [2022-04-08 12:36:24,111 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:36:24,112 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:36:24,309 INFO L272 TraceCheckUtils]: 0: Hoare triple {13809#true} call ULTIMATE.init(); {13809#true} is VALID [2022-04-08 12:36:24,309 INFO L290 TraceCheckUtils]: 1: Hoare triple {13809#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; {13809#true} is VALID [2022-04-08 12:36:24,309 INFO L290 TraceCheckUtils]: 2: Hoare triple {13809#true} assume true; {13809#true} is VALID [2022-04-08 12:36:24,309 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13809#true} {13809#true} #102#return; {13809#true} is VALID [2022-04-08 12:36:24,309 INFO L272 TraceCheckUtils]: 4: Hoare triple {13809#true} call #t~ret9 := main(); {13809#true} is VALID [2022-04-08 12:36:24,309 INFO L290 TraceCheckUtils]: 5: Hoare triple {13809#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; {13809#true} is VALID [2022-04-08 12:36:24,309 INFO L272 TraceCheckUtils]: 6: Hoare triple {13809#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {13809#true} is VALID [2022-04-08 12:36:24,309 INFO L290 TraceCheckUtils]: 7: Hoare triple {13809#true} ~cond := #in~cond; {13809#true} is VALID [2022-04-08 12:36:24,309 INFO L290 TraceCheckUtils]: 8: Hoare triple {13809#true} assume !(0 == ~cond); {13809#true} is VALID [2022-04-08 12:36:24,309 INFO L290 TraceCheckUtils]: 9: Hoare triple {13809#true} assume true; {13809#true} is VALID [2022-04-08 12:36:24,310 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {13809#true} {13809#true} #90#return; {13809#true} is VALID [2022-04-08 12:36:24,310 INFO L272 TraceCheckUtils]: 11: Hoare triple {13809#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)); {13809#true} is VALID [2022-04-08 12:36:24,310 INFO L290 TraceCheckUtils]: 12: Hoare triple {13809#true} ~cond := #in~cond; {13809#true} is VALID [2022-04-08 12:36:24,310 INFO L290 TraceCheckUtils]: 13: Hoare triple {13809#true} assume !(0 == ~cond); {13809#true} is VALID [2022-04-08 12:36:24,310 INFO L290 TraceCheckUtils]: 14: Hoare triple {13809#true} assume true; {13809#true} is VALID [2022-04-08 12:36:24,310 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {13809#true} {13809#true} #92#return; {13809#true} is VALID [2022-04-08 12:36:24,310 INFO L290 TraceCheckUtils]: 16: Hoare triple {13809#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {13809#true} is VALID [2022-04-08 12:36:24,310 INFO L290 TraceCheckUtils]: 17: Hoare triple {13809#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13809#true} is VALID [2022-04-08 12:36:24,310 INFO L290 TraceCheckUtils]: 18: Hoare triple {13809#true} assume !!(#t~post6 < 10);havoc #t~post6; {13809#true} is VALID [2022-04-08 12:36:24,310 INFO L272 TraceCheckUtils]: 19: Hoare triple {13809#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)); {13809#true} is VALID [2022-04-08 12:36:24,310 INFO L290 TraceCheckUtils]: 20: Hoare triple {13809#true} ~cond := #in~cond; {13809#true} is VALID [2022-04-08 12:36:24,310 INFO L290 TraceCheckUtils]: 21: Hoare triple {13809#true} assume !(0 == ~cond); {13809#true} is VALID [2022-04-08 12:36:24,310 INFO L290 TraceCheckUtils]: 22: Hoare triple {13809#true} assume true; {13809#true} is VALID [2022-04-08 12:36:24,310 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {13809#true} {13809#true} #94#return; {13809#true} is VALID [2022-04-08 12:36:24,310 INFO L290 TraceCheckUtils]: 24: Hoare triple {13809#true} assume !!(0 != ~r~0); {13809#true} is VALID [2022-04-08 12:36:24,310 INFO L290 TraceCheckUtils]: 25: Hoare triple {13809#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {13809#true} is VALID [2022-04-08 12:36:24,310 INFO L290 TraceCheckUtils]: 26: Hoare triple {13809#true} assume !!(#t~post7 < 10);havoc #t~post7; {13809#true} is VALID [2022-04-08 12:36:24,310 INFO L272 TraceCheckUtils]: 27: Hoare triple {13809#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)); {13809#true} is VALID [2022-04-08 12:36:24,311 INFO L290 TraceCheckUtils]: 28: Hoare triple {13809#true} ~cond := #in~cond; {13809#true} is VALID [2022-04-08 12:36:24,311 INFO L290 TraceCheckUtils]: 29: Hoare triple {13809#true} assume !(0 == ~cond); {13809#true} is VALID [2022-04-08 12:36:24,311 INFO L290 TraceCheckUtils]: 30: Hoare triple {13809#true} assume true; {13809#true} is VALID [2022-04-08 12:36:24,311 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {13809#true} {13809#true} #96#return; {13809#true} is VALID [2022-04-08 12:36:24,311 INFO L290 TraceCheckUtils]: 32: Hoare triple {13809#true} assume !(~r~0 > 0); {13809#true} is VALID [2022-04-08 12:36:24,311 INFO L290 TraceCheckUtils]: 33: Hoare triple {13809#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {13809#true} is VALID [2022-04-08 12:36:24,311 INFO L290 TraceCheckUtils]: 34: Hoare triple {13809#true} assume !!(#t~post8 < 10);havoc #t~post8; {13809#true} is VALID [2022-04-08 12:36:24,311 INFO L272 TraceCheckUtils]: 35: Hoare triple {13809#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)); {13809#true} is VALID [2022-04-08 12:36:24,311 INFO L290 TraceCheckUtils]: 36: Hoare triple {13809#true} ~cond := #in~cond; {13809#true} is VALID [2022-04-08 12:36:24,311 INFO L290 TraceCheckUtils]: 37: Hoare triple {13809#true} assume !(0 == ~cond); {13809#true} is VALID [2022-04-08 12:36:24,311 INFO L290 TraceCheckUtils]: 38: Hoare triple {13809#true} assume true; {13809#true} is VALID [2022-04-08 12:36:24,311 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {13809#true} {13809#true} #98#return; {13809#true} is VALID [2022-04-08 12:36:24,311 INFO L290 TraceCheckUtils]: 40: Hoare triple {13809#true} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {13809#true} is VALID [2022-04-08 12:36:24,311 INFO L290 TraceCheckUtils]: 41: Hoare triple {13809#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {13809#true} is VALID [2022-04-08 12:36:24,311 INFO L290 TraceCheckUtils]: 42: Hoare triple {13809#true} assume !!(#t~post8 < 10);havoc #t~post8; {13809#true} is VALID [2022-04-08 12:36:24,311 INFO L272 TraceCheckUtils]: 43: Hoare triple {13809#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)); {13809#true} is VALID [2022-04-08 12:36:24,311 INFO L290 TraceCheckUtils]: 44: Hoare triple {13809#true} ~cond := #in~cond; {13809#true} is VALID [2022-04-08 12:36:24,311 INFO L290 TraceCheckUtils]: 45: Hoare triple {13809#true} assume !(0 == ~cond); {13809#true} is VALID [2022-04-08 12:36:24,312 INFO L290 TraceCheckUtils]: 46: Hoare triple {13809#true} assume true; {13809#true} is VALID [2022-04-08 12:36:24,312 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {13809#true} {13809#true} #98#return; {13809#true} is VALID [2022-04-08 12:36:24,318 INFO L290 TraceCheckUtils]: 48: Hoare triple {13809#true} assume !(~r~0 < 0); {13958#(not (< main_~r~0 0))} is VALID [2022-04-08 12:36:24,318 INFO L290 TraceCheckUtils]: 49: Hoare triple {13958#(not (< main_~r~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13958#(not (< main_~r~0 0))} is VALID [2022-04-08 12:36:24,318 INFO L290 TraceCheckUtils]: 50: Hoare triple {13958#(not (< main_~r~0 0))} assume !!(#t~post6 < 10);havoc #t~post6; {13958#(not (< main_~r~0 0))} is VALID [2022-04-08 12:36:24,319 INFO L272 TraceCheckUtils]: 51: Hoare triple {13958#(not (< main_~r~0 0))} 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)); {13809#true} is VALID [2022-04-08 12:36:24,319 INFO L290 TraceCheckUtils]: 52: Hoare triple {13809#true} ~cond := #in~cond; {13809#true} is VALID [2022-04-08 12:36:24,319 INFO L290 TraceCheckUtils]: 53: Hoare triple {13809#true} assume !(0 == ~cond); {13809#true} is VALID [2022-04-08 12:36:24,319 INFO L290 TraceCheckUtils]: 54: Hoare triple {13809#true} assume true; {13809#true} is VALID [2022-04-08 12:36:24,319 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {13809#true} {13958#(not (< main_~r~0 0))} #94#return; {13958#(not (< main_~r~0 0))} is VALID [2022-04-08 12:36:24,320 INFO L290 TraceCheckUtils]: 56: Hoare triple {13958#(not (< main_~r~0 0))} assume !!(0 != ~r~0); {13983#(and (not (= main_~r~0 0)) (not (< main_~r~0 0)))} is VALID [2022-04-08 12:36:24,320 INFO L290 TraceCheckUtils]: 57: Hoare triple {13983#(and (not (= main_~r~0 0)) (not (< main_~r~0 0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {13983#(and (not (= main_~r~0 0)) (not (< main_~r~0 0)))} is VALID [2022-04-08 12:36:24,320 INFO L290 TraceCheckUtils]: 58: Hoare triple {13983#(and (not (= main_~r~0 0)) (not (< main_~r~0 0)))} assume !!(#t~post7 < 10);havoc #t~post7; {13983#(and (not (= main_~r~0 0)) (not (< main_~r~0 0)))} is VALID [2022-04-08 12:36:24,320 INFO L272 TraceCheckUtils]: 59: Hoare triple {13983#(and (not (= main_~r~0 0)) (not (< main_~r~0 0)))} 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)); {13809#true} is VALID [2022-04-08 12:36:24,320 INFO L290 TraceCheckUtils]: 60: Hoare triple {13809#true} ~cond := #in~cond; {13809#true} is VALID [2022-04-08 12:36:24,320 INFO L290 TraceCheckUtils]: 61: Hoare triple {13809#true} assume !(0 == ~cond); {13809#true} is VALID [2022-04-08 12:36:24,320 INFO L290 TraceCheckUtils]: 62: Hoare triple {13809#true} assume true; {13809#true} is VALID [2022-04-08 12:36:24,321 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {13809#true} {13983#(and (not (= main_~r~0 0)) (not (< main_~r~0 0)))} #96#return; {13983#(and (not (= main_~r~0 0)) (not (< main_~r~0 0)))} is VALID [2022-04-08 12:36:24,321 INFO L290 TraceCheckUtils]: 64: Hoare triple {13983#(and (not (= main_~r~0 0)) (not (< main_~r~0 0)))} assume !(~r~0 > 0); {13810#false} is VALID [2022-04-08 12:36:24,321 INFO L290 TraceCheckUtils]: 65: Hoare triple {13810#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {13810#false} is VALID [2022-04-08 12:36:24,321 INFO L290 TraceCheckUtils]: 66: Hoare triple {13810#false} assume !(#t~post8 < 10);havoc #t~post8; {13810#false} is VALID [2022-04-08 12:36:24,322 INFO L290 TraceCheckUtils]: 67: Hoare triple {13810#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13810#false} is VALID [2022-04-08 12:36:24,322 INFO L290 TraceCheckUtils]: 68: Hoare triple {13810#false} assume !(#t~post6 < 10);havoc #t~post6; {13810#false} is VALID [2022-04-08 12:36:24,322 INFO L272 TraceCheckUtils]: 69: Hoare triple {13810#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)); {13810#false} is VALID [2022-04-08 12:36:24,322 INFO L290 TraceCheckUtils]: 70: Hoare triple {13810#false} ~cond := #in~cond; {13810#false} is VALID [2022-04-08 12:36:24,322 INFO L290 TraceCheckUtils]: 71: Hoare triple {13810#false} assume 0 == ~cond; {13810#false} is VALID [2022-04-08 12:36:24,322 INFO L290 TraceCheckUtils]: 72: Hoare triple {13810#false} assume !false; {13810#false} is VALID [2022-04-08 12:36:24,322 INFO L134 CoverageAnalysis]: Checked inductivity of 96 backedges. 28 proven. 0 refuted. 0 times theorem prover too weak. 68 trivial. 0 not checked. [2022-04-08 12:36:24,322 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 12:36:24,322 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:36:24,322 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2038713563] [2022-04-08 12:36:24,322 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:36:24,322 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1904434205] [2022-04-08 12:36:24,322 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1904434205] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:36:24,322 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:36:24,322 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 12:36:24,323 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:36:24,323 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2028018302] [2022-04-08 12:36:24,323 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2028018302] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:36:24,323 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:36:24,323 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 12:36:24,323 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [917813472] [2022-04-08 12:36:24,323 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:36:24,323 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 8.25) internal successors, (33), 4 states have internal predecessors, (33), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) Word has length 73 [2022-04-08 12:36:24,323 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:36:24,323 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 8.25) internal successors, (33), 4 states have internal predecessors, (33), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 12:36:24,356 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:24,356 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-08 12:36:24,356 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:24,357 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-08 12:36:24,357 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-04-08 12:36:24,357 INFO L87 Difference]: Start difference. First operand 129 states and 158 transitions. Second operand has 4 states, 4 states have (on average 8.25) internal successors, (33), 4 states have internal predecessors, (33), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 12:36:24,541 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:24,542 INFO L93 Difference]: Finished difference Result 184 states and 238 transitions. [2022-04-08 12:36:24,542 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-08 12:36:24,542 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 8.25) internal successors, (33), 4 states have internal predecessors, (33), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) Word has length 73 [2022-04-08 12:36:24,542 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:36:24,542 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 8.25) internal successors, (33), 4 states have internal predecessors, (33), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 12:36:24,543 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 94 transitions. [2022-04-08 12:36:24,543 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 8.25) internal successors, (33), 4 states have internal predecessors, (33), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 12:36:24,544 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 94 transitions. [2022-04-08 12:36:24,544 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 94 transitions. [2022-04-08 12:36:24,604 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 94 edges. 94 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:24,606 INFO L225 Difference]: With dead ends: 184 [2022-04-08 12:36:24,606 INFO L226 Difference]: Without dead ends: 147 [2022-04-08 12:36:24,607 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 72 GetRequests, 70 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-04-08 12:36:24,607 INFO L913 BasicCegarLoop]: 60 mSDtfsCounter, 17 mSDsluCounter, 34 mSDsCounter, 0 mSdLazyCounter, 20 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 19 SdHoareTripleChecker+Valid, 94 SdHoareTripleChecker+Invalid, 23 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 20 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 12:36:24,607 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [19 Valid, 94 Invalid, 23 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 20 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 12:36:24,608 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 147 states. [2022-04-08 12:36:24,719 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 147 to 141. [2022-04-08 12:36:24,719 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:36:24,720 INFO L82 GeneralOperation]: Start isEquivalent. First operand 147 states. Second operand has 141 states, 102 states have (on average 1.196078431372549) internal successors, (122), 105 states have internal predecessors, (122), 28 states have call successors, (28), 12 states have call predecessors, (28), 10 states have return successors, (26), 23 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-08 12:36:24,720 INFO L74 IsIncluded]: Start isIncluded. First operand 147 states. Second operand has 141 states, 102 states have (on average 1.196078431372549) internal successors, (122), 105 states have internal predecessors, (122), 28 states have call successors, (28), 12 states have call predecessors, (28), 10 states have return successors, (26), 23 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-08 12:36:24,720 INFO L87 Difference]: Start difference. First operand 147 states. Second operand has 141 states, 102 states have (on average 1.196078431372549) internal successors, (122), 105 states have internal predecessors, (122), 28 states have call successors, (28), 12 states have call predecessors, (28), 10 states have return successors, (26), 23 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-08 12:36:24,726 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:24,726 INFO L93 Difference]: Finished difference Result 147 states and 184 transitions. [2022-04-08 12:36:24,726 INFO L276 IsEmpty]: Start isEmpty. Operand 147 states and 184 transitions. [2022-04-08 12:36:24,726 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:24,726 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:24,727 INFO L74 IsIncluded]: Start isIncluded. First operand has 141 states, 102 states have (on average 1.196078431372549) internal successors, (122), 105 states have internal predecessors, (122), 28 states have call successors, (28), 12 states have call predecessors, (28), 10 states have return successors, (26), 23 states have call predecessors, (26), 26 states have call successors, (26) Second operand 147 states. [2022-04-08 12:36:24,727 INFO L87 Difference]: Start difference. First operand has 141 states, 102 states have (on average 1.196078431372549) internal successors, (122), 105 states have internal predecessors, (122), 28 states have call successors, (28), 12 states have call predecessors, (28), 10 states have return successors, (26), 23 states have call predecessors, (26), 26 states have call successors, (26) Second operand 147 states. [2022-04-08 12:36:24,729 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:24,729 INFO L93 Difference]: Finished difference Result 147 states and 184 transitions. [2022-04-08 12:36:24,729 INFO L276 IsEmpty]: Start isEmpty. Operand 147 states and 184 transitions. [2022-04-08 12:36:24,730 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:24,730 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:24,730 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:36:24,730 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:36:24,730 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 141 states, 102 states have (on average 1.196078431372549) internal successors, (122), 105 states have internal predecessors, (122), 28 states have call successors, (28), 12 states have call predecessors, (28), 10 states have return successors, (26), 23 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-08 12:36:24,734 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 141 states to 141 states and 176 transitions. [2022-04-08 12:36:24,734 INFO L78 Accepts]: Start accepts. Automaton has 141 states and 176 transitions. Word has length 73 [2022-04-08 12:36:24,735 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:36:24,735 INFO L478 AbstractCegarLoop]: Abstraction has 141 states and 176 transitions. [2022-04-08 12:36:24,735 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 8.25) internal successors, (33), 4 states have internal predecessors, (33), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 12:36:24,735 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 141 states and 176 transitions. [2022-04-08 12:36:26,909 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 176 edges. 175 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:26,909 INFO L276 IsEmpty]: Start isEmpty. Operand 141 states and 176 transitions. [2022-04-08 12:36:26,910 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 74 [2022-04-08 12:36:26,910 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:36:26,910 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 6, 5, 4, 4, 4, 4, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 12:36:26,928 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Forceful destruction successful, exit code 0 [2022-04-08 12:36:27,110 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 19 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable17 [2022-04-08 12:36:27,110 INFO L403 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:36:27,111 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:36:27,111 INFO L85 PathProgramCache]: Analyzing trace with hash -1401128268, now seen corresponding path program 7 times [2022-04-08 12:36:27,111 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:27,111 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [393963728] [2022-04-08 12:36:27,111 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:36:27,111 INFO L85 PathProgramCache]: Analyzing trace with hash -1401128268, now seen corresponding path program 8 times [2022-04-08 12:36:27,111 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:36:27,111 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1407722453] [2022-04-08 12:36:27,111 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:36:27,111 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:36:27,129 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:36:27,129 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1630247055] [2022-04-08 12:36:27,130 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:36:27,130 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:36:27,130 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:36:27,131 INFO L229 MonitoredProcess]: Starting monitored process 20 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 12:36:27,136 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Waiting until timeout for monitored process [2022-04-08 12:36:27,177 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:36:27,177 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:36:27,178 INFO L263 TraceCheckSpWp]: Trace formula consists of 204 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-08 12:36:27,191 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:36:27,191 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:36:27,545 INFO L272 TraceCheckUtils]: 0: Hoare triple {14975#true} call ULTIMATE.init(); {14975#true} is VALID [2022-04-08 12:36:27,545 INFO L290 TraceCheckUtils]: 1: Hoare triple {14975#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; {14983#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:27,545 INFO L290 TraceCheckUtils]: 2: Hoare triple {14983#(<= ~counter~0 0)} assume true; {14983#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:27,546 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14983#(<= ~counter~0 0)} {14975#true} #102#return; {14983#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:27,546 INFO L272 TraceCheckUtils]: 4: Hoare triple {14983#(<= ~counter~0 0)} call #t~ret9 := main(); {14983#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:27,546 INFO L290 TraceCheckUtils]: 5: Hoare triple {14983#(<= ~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; {14983#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:27,547 INFO L272 TraceCheckUtils]: 6: Hoare triple {14983#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {14983#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:27,547 INFO L290 TraceCheckUtils]: 7: Hoare triple {14983#(<= ~counter~0 0)} ~cond := #in~cond; {14983#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:27,547 INFO L290 TraceCheckUtils]: 8: Hoare triple {14983#(<= ~counter~0 0)} assume !(0 == ~cond); {14983#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:27,547 INFO L290 TraceCheckUtils]: 9: Hoare triple {14983#(<= ~counter~0 0)} assume true; {14983#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:27,548 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14983#(<= ~counter~0 0)} {14983#(<= ~counter~0 0)} #90#return; {14983#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:27,548 INFO L272 TraceCheckUtils]: 11: Hoare triple {14983#(<= ~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)); {14983#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:27,548 INFO L290 TraceCheckUtils]: 12: Hoare triple {14983#(<= ~counter~0 0)} ~cond := #in~cond; {14983#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:27,548 INFO L290 TraceCheckUtils]: 13: Hoare triple {14983#(<= ~counter~0 0)} assume !(0 == ~cond); {14983#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:27,549 INFO L290 TraceCheckUtils]: 14: Hoare triple {14983#(<= ~counter~0 0)} assume true; {14983#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:27,549 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {14983#(<= ~counter~0 0)} {14983#(<= ~counter~0 0)} #92#return; {14983#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:27,549 INFO L290 TraceCheckUtils]: 16: Hoare triple {14983#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {14983#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:27,550 INFO L290 TraceCheckUtils]: 17: Hoare triple {14983#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {15032#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:27,550 INFO L290 TraceCheckUtils]: 18: Hoare triple {15032#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {15032#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:27,551 INFO L272 TraceCheckUtils]: 19: Hoare triple {15032#(<= ~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)); {15032#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:27,551 INFO L290 TraceCheckUtils]: 20: Hoare triple {15032#(<= ~counter~0 1)} ~cond := #in~cond; {15032#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:27,551 INFO L290 TraceCheckUtils]: 21: Hoare triple {15032#(<= ~counter~0 1)} assume !(0 == ~cond); {15032#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:27,551 INFO L290 TraceCheckUtils]: 22: Hoare triple {15032#(<= ~counter~0 1)} assume true; {15032#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:27,552 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {15032#(<= ~counter~0 1)} {15032#(<= ~counter~0 1)} #94#return; {15032#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:27,552 INFO L290 TraceCheckUtils]: 24: Hoare triple {15032#(<= ~counter~0 1)} assume !!(0 != ~r~0); {15032#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:27,552 INFO L290 TraceCheckUtils]: 25: Hoare triple {15032#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {15057#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:27,553 INFO L290 TraceCheckUtils]: 26: Hoare triple {15057#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {15057#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:27,553 INFO L272 TraceCheckUtils]: 27: Hoare triple {15057#(<= ~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)); {15057#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:27,553 INFO L290 TraceCheckUtils]: 28: Hoare triple {15057#(<= ~counter~0 2)} ~cond := #in~cond; {15057#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:27,553 INFO L290 TraceCheckUtils]: 29: Hoare triple {15057#(<= ~counter~0 2)} assume !(0 == ~cond); {15057#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:27,554 INFO L290 TraceCheckUtils]: 30: Hoare triple {15057#(<= ~counter~0 2)} assume true; {15057#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:27,554 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {15057#(<= ~counter~0 2)} {15057#(<= ~counter~0 2)} #96#return; {15057#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:27,554 INFO L290 TraceCheckUtils]: 32: Hoare triple {15057#(<= ~counter~0 2)} assume !(~r~0 > 0); {15057#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:27,555 INFO L290 TraceCheckUtils]: 33: Hoare triple {15057#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {15082#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:27,555 INFO L290 TraceCheckUtils]: 34: Hoare triple {15082#(<= ~counter~0 3)} assume !!(#t~post8 < 10);havoc #t~post8; {15082#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:27,555 INFO L272 TraceCheckUtils]: 35: Hoare triple {15082#(<= ~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)); {15082#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:27,556 INFO L290 TraceCheckUtils]: 36: Hoare triple {15082#(<= ~counter~0 3)} ~cond := #in~cond; {15082#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:27,556 INFO L290 TraceCheckUtils]: 37: Hoare triple {15082#(<= ~counter~0 3)} assume !(0 == ~cond); {15082#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:27,556 INFO L290 TraceCheckUtils]: 38: Hoare triple {15082#(<= ~counter~0 3)} assume true; {15082#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:27,557 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {15082#(<= ~counter~0 3)} {15082#(<= ~counter~0 3)} #98#return; {15082#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:27,557 INFO L290 TraceCheckUtils]: 40: Hoare triple {15082#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {15082#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:27,557 INFO L290 TraceCheckUtils]: 41: Hoare triple {15082#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {15107#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:27,558 INFO L290 TraceCheckUtils]: 42: Hoare triple {15107#(<= ~counter~0 4)} assume !!(#t~post8 < 10);havoc #t~post8; {15107#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:27,558 INFO L272 TraceCheckUtils]: 43: Hoare triple {15107#(<= ~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)); {15107#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:27,559 INFO L290 TraceCheckUtils]: 44: Hoare triple {15107#(<= ~counter~0 4)} ~cond := #in~cond; {15107#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:27,559 INFO L290 TraceCheckUtils]: 45: Hoare triple {15107#(<= ~counter~0 4)} assume !(0 == ~cond); {15107#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:27,559 INFO L290 TraceCheckUtils]: 46: Hoare triple {15107#(<= ~counter~0 4)} assume true; {15107#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:27,560 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {15107#(<= ~counter~0 4)} {15107#(<= ~counter~0 4)} #98#return; {15107#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:27,560 INFO L290 TraceCheckUtils]: 48: Hoare triple {15107#(<= ~counter~0 4)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {15107#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:27,560 INFO L290 TraceCheckUtils]: 49: Hoare triple {15107#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {15132#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:27,561 INFO L290 TraceCheckUtils]: 50: Hoare triple {15132#(<= ~counter~0 5)} assume !!(#t~post8 < 10);havoc #t~post8; {15132#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:27,561 INFO L272 TraceCheckUtils]: 51: Hoare triple {15132#(<= ~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)); {15132#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:27,561 INFO L290 TraceCheckUtils]: 52: Hoare triple {15132#(<= ~counter~0 5)} ~cond := #in~cond; {15132#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:27,561 INFO L290 TraceCheckUtils]: 53: Hoare triple {15132#(<= ~counter~0 5)} assume !(0 == ~cond); {15132#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:27,562 INFO L290 TraceCheckUtils]: 54: Hoare triple {15132#(<= ~counter~0 5)} assume true; {15132#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:27,562 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {15132#(<= ~counter~0 5)} {15132#(<= ~counter~0 5)} #98#return; {15132#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:27,562 INFO L290 TraceCheckUtils]: 56: Hoare triple {15132#(<= ~counter~0 5)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {15132#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:27,563 INFO L290 TraceCheckUtils]: 57: Hoare triple {15132#(<= ~counter~0 5)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {15157#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:27,563 INFO L290 TraceCheckUtils]: 58: Hoare triple {15157#(<= ~counter~0 6)} assume !!(#t~post8 < 10);havoc #t~post8; {15157#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:27,563 INFO L272 TraceCheckUtils]: 59: Hoare triple {15157#(<= ~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)); {15157#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:27,564 INFO L290 TraceCheckUtils]: 60: Hoare triple {15157#(<= ~counter~0 6)} ~cond := #in~cond; {15157#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:27,564 INFO L290 TraceCheckUtils]: 61: Hoare triple {15157#(<= ~counter~0 6)} assume !(0 == ~cond); {15157#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:27,564 INFO L290 TraceCheckUtils]: 62: Hoare triple {15157#(<= ~counter~0 6)} assume true; {15157#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:27,565 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {15157#(<= ~counter~0 6)} {15157#(<= ~counter~0 6)} #98#return; {15157#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:27,565 INFO L290 TraceCheckUtils]: 64: Hoare triple {15157#(<= ~counter~0 6)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {15157#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:27,565 INFO L290 TraceCheckUtils]: 65: Hoare triple {15157#(<= ~counter~0 6)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {15182#(<= |main_#t~post8| 6)} is VALID [2022-04-08 12:36:27,565 INFO L290 TraceCheckUtils]: 66: Hoare triple {15182#(<= |main_#t~post8| 6)} assume !(#t~post8 < 10);havoc #t~post8; {14976#false} is VALID [2022-04-08 12:36:27,565 INFO L290 TraceCheckUtils]: 67: Hoare triple {14976#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14976#false} is VALID [2022-04-08 12:36:27,566 INFO L290 TraceCheckUtils]: 68: Hoare triple {14976#false} assume !(#t~post6 < 10);havoc #t~post6; {14976#false} is VALID [2022-04-08 12:36:27,566 INFO L272 TraceCheckUtils]: 69: Hoare triple {14976#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)); {14976#false} is VALID [2022-04-08 12:36:27,566 INFO L290 TraceCheckUtils]: 70: Hoare triple {14976#false} ~cond := #in~cond; {14976#false} is VALID [2022-04-08 12:36:27,566 INFO L290 TraceCheckUtils]: 71: Hoare triple {14976#false} assume 0 == ~cond; {14976#false} is VALID [2022-04-08 12:36:27,566 INFO L290 TraceCheckUtils]: 72: Hoare triple {14976#false} assume !false; {14976#false} is VALID [2022-04-08 12:36:27,566 INFO L134 CoverageAnalysis]: Checked inductivity of 110 backedges. 14 proven. 92 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 12:36:27,566 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:36:27,864 INFO L290 TraceCheckUtils]: 72: Hoare triple {14976#false} assume !false; {14976#false} is VALID [2022-04-08 12:36:27,864 INFO L290 TraceCheckUtils]: 71: Hoare triple {14976#false} assume 0 == ~cond; {14976#false} is VALID [2022-04-08 12:36:27,864 INFO L290 TraceCheckUtils]: 70: Hoare triple {14976#false} ~cond := #in~cond; {14976#false} is VALID [2022-04-08 12:36:27,864 INFO L272 TraceCheckUtils]: 69: Hoare triple {14976#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)); {14976#false} is VALID [2022-04-08 12:36:27,864 INFO L290 TraceCheckUtils]: 68: Hoare triple {14976#false} assume !(#t~post6 < 10);havoc #t~post6; {14976#false} is VALID [2022-04-08 12:36:27,864 INFO L290 TraceCheckUtils]: 67: Hoare triple {14976#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14976#false} is VALID [2022-04-08 12:36:27,864 INFO L290 TraceCheckUtils]: 66: Hoare triple {15222#(< |main_#t~post8| 10)} assume !(#t~post8 < 10);havoc #t~post8; {14976#false} is VALID [2022-04-08 12:36:27,865 INFO L290 TraceCheckUtils]: 65: Hoare triple {15226#(< ~counter~0 10)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {15222#(< |main_#t~post8| 10)} is VALID [2022-04-08 12:36:27,865 INFO L290 TraceCheckUtils]: 64: Hoare triple {15226#(< ~counter~0 10)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {15226#(< ~counter~0 10)} is VALID [2022-04-08 12:36:27,865 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {14975#true} {15226#(< ~counter~0 10)} #98#return; {15226#(< ~counter~0 10)} is VALID [2022-04-08 12:36:27,865 INFO L290 TraceCheckUtils]: 62: Hoare triple {14975#true} assume true; {14975#true} is VALID [2022-04-08 12:36:27,865 INFO L290 TraceCheckUtils]: 61: Hoare triple {14975#true} assume !(0 == ~cond); {14975#true} is VALID [2022-04-08 12:36:27,866 INFO L290 TraceCheckUtils]: 60: Hoare triple {14975#true} ~cond := #in~cond; {14975#true} is VALID [2022-04-08 12:36:27,866 INFO L272 TraceCheckUtils]: 59: Hoare triple {15226#(< ~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)); {14975#true} is VALID [2022-04-08 12:36:27,866 INFO L290 TraceCheckUtils]: 58: Hoare triple {15226#(< ~counter~0 10)} assume !!(#t~post8 < 10);havoc #t~post8; {15226#(< ~counter~0 10)} is VALID [2022-04-08 12:36:27,866 INFO L290 TraceCheckUtils]: 57: Hoare triple {15251#(< ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {15226#(< ~counter~0 10)} is VALID [2022-04-08 12:36:27,867 INFO L290 TraceCheckUtils]: 56: Hoare triple {15251#(< ~counter~0 9)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {15251#(< ~counter~0 9)} is VALID [2022-04-08 12:36:27,867 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {14975#true} {15251#(< ~counter~0 9)} #98#return; {15251#(< ~counter~0 9)} is VALID [2022-04-08 12:36:27,867 INFO L290 TraceCheckUtils]: 54: Hoare triple {14975#true} assume true; {14975#true} is VALID [2022-04-08 12:36:27,867 INFO L290 TraceCheckUtils]: 53: Hoare triple {14975#true} assume !(0 == ~cond); {14975#true} is VALID [2022-04-08 12:36:27,867 INFO L290 TraceCheckUtils]: 52: Hoare triple {14975#true} ~cond := #in~cond; {14975#true} is VALID [2022-04-08 12:36:27,867 INFO L272 TraceCheckUtils]: 51: Hoare triple {15251#(< ~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)); {14975#true} is VALID [2022-04-08 12:36:27,868 INFO L290 TraceCheckUtils]: 50: Hoare triple {15251#(< ~counter~0 9)} assume !!(#t~post8 < 10);havoc #t~post8; {15251#(< ~counter~0 9)} is VALID [2022-04-08 12:36:27,868 INFO L290 TraceCheckUtils]: 49: Hoare triple {15276#(< ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {15251#(< ~counter~0 9)} is VALID [2022-04-08 12:36:27,868 INFO L290 TraceCheckUtils]: 48: Hoare triple {15276#(< ~counter~0 8)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {15276#(< ~counter~0 8)} is VALID [2022-04-08 12:36:27,869 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {14975#true} {15276#(< ~counter~0 8)} #98#return; {15276#(< ~counter~0 8)} is VALID [2022-04-08 12:36:27,869 INFO L290 TraceCheckUtils]: 46: Hoare triple {14975#true} assume true; {14975#true} is VALID [2022-04-08 12:36:27,869 INFO L290 TraceCheckUtils]: 45: Hoare triple {14975#true} assume !(0 == ~cond); {14975#true} is VALID [2022-04-08 12:36:27,869 INFO L290 TraceCheckUtils]: 44: Hoare triple {14975#true} ~cond := #in~cond; {14975#true} is VALID [2022-04-08 12:36:27,869 INFO L272 TraceCheckUtils]: 43: Hoare triple {15276#(< ~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)); {14975#true} is VALID [2022-04-08 12:36:27,869 INFO L290 TraceCheckUtils]: 42: Hoare triple {15276#(< ~counter~0 8)} assume !!(#t~post8 < 10);havoc #t~post8; {15276#(< ~counter~0 8)} is VALID [2022-04-08 12:36:27,870 INFO L290 TraceCheckUtils]: 41: Hoare triple {15157#(<= ~counter~0 6)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {15276#(< ~counter~0 8)} is VALID [2022-04-08 12:36:27,870 INFO L290 TraceCheckUtils]: 40: Hoare triple {15157#(<= ~counter~0 6)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {15157#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:27,870 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {14975#true} {15157#(<= ~counter~0 6)} #98#return; {15157#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:27,870 INFO L290 TraceCheckUtils]: 38: Hoare triple {14975#true} assume true; {14975#true} is VALID [2022-04-08 12:36:27,870 INFO L290 TraceCheckUtils]: 37: Hoare triple {14975#true} assume !(0 == ~cond); {14975#true} is VALID [2022-04-08 12:36:27,870 INFO L290 TraceCheckUtils]: 36: Hoare triple {14975#true} ~cond := #in~cond; {14975#true} is VALID [2022-04-08 12:36:27,871 INFO L272 TraceCheckUtils]: 35: Hoare triple {15157#(<= ~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)); {14975#true} is VALID [2022-04-08 12:36:27,871 INFO L290 TraceCheckUtils]: 34: Hoare triple {15157#(<= ~counter~0 6)} assume !!(#t~post8 < 10);havoc #t~post8; {15157#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:27,871 INFO L290 TraceCheckUtils]: 33: Hoare triple {15132#(<= ~counter~0 5)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {15157#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:27,871 INFO L290 TraceCheckUtils]: 32: Hoare triple {15132#(<= ~counter~0 5)} assume !(~r~0 > 0); {15132#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:27,872 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {14975#true} {15132#(<= ~counter~0 5)} #96#return; {15132#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:27,872 INFO L290 TraceCheckUtils]: 30: Hoare triple {14975#true} assume true; {14975#true} is VALID [2022-04-08 12:36:27,872 INFO L290 TraceCheckUtils]: 29: Hoare triple {14975#true} assume !(0 == ~cond); {14975#true} is VALID [2022-04-08 12:36:27,872 INFO L290 TraceCheckUtils]: 28: Hoare triple {14975#true} ~cond := #in~cond; {14975#true} is VALID [2022-04-08 12:36:27,872 INFO L272 TraceCheckUtils]: 27: Hoare triple {15132#(<= ~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)); {14975#true} is VALID [2022-04-08 12:36:27,872 INFO L290 TraceCheckUtils]: 26: Hoare triple {15132#(<= ~counter~0 5)} assume !!(#t~post7 < 10);havoc #t~post7; {15132#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:27,873 INFO L290 TraceCheckUtils]: 25: Hoare triple {15107#(<= ~counter~0 4)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {15132#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:27,873 INFO L290 TraceCheckUtils]: 24: Hoare triple {15107#(<= ~counter~0 4)} assume !!(0 != ~r~0); {15107#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:27,873 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {14975#true} {15107#(<= ~counter~0 4)} #94#return; {15107#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:27,874 INFO L290 TraceCheckUtils]: 22: Hoare triple {14975#true} assume true; {14975#true} is VALID [2022-04-08 12:36:27,874 INFO L290 TraceCheckUtils]: 21: Hoare triple {14975#true} assume !(0 == ~cond); {14975#true} is VALID [2022-04-08 12:36:27,874 INFO L290 TraceCheckUtils]: 20: Hoare triple {14975#true} ~cond := #in~cond; {14975#true} is VALID [2022-04-08 12:36:27,874 INFO L272 TraceCheckUtils]: 19: Hoare triple {15107#(<= ~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)); {14975#true} is VALID [2022-04-08 12:36:27,874 INFO L290 TraceCheckUtils]: 18: Hoare triple {15107#(<= ~counter~0 4)} assume !!(#t~post6 < 10);havoc #t~post6; {15107#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:27,874 INFO L290 TraceCheckUtils]: 17: Hoare triple {15082#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {15107#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:27,875 INFO L290 TraceCheckUtils]: 16: Hoare triple {15082#(<= ~counter~0 3)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {15082#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:27,875 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {14975#true} {15082#(<= ~counter~0 3)} #92#return; {15082#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:27,875 INFO L290 TraceCheckUtils]: 14: Hoare triple {14975#true} assume true; {14975#true} is VALID [2022-04-08 12:36:27,875 INFO L290 TraceCheckUtils]: 13: Hoare triple {14975#true} assume !(0 == ~cond); {14975#true} is VALID [2022-04-08 12:36:27,875 INFO L290 TraceCheckUtils]: 12: Hoare triple {14975#true} ~cond := #in~cond; {14975#true} is VALID [2022-04-08 12:36:27,875 INFO L272 TraceCheckUtils]: 11: Hoare triple {15082#(<= ~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)); {14975#true} is VALID [2022-04-08 12:36:27,876 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14975#true} {15082#(<= ~counter~0 3)} #90#return; {15082#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:27,876 INFO L290 TraceCheckUtils]: 9: Hoare triple {14975#true} assume true; {14975#true} is VALID [2022-04-08 12:36:27,876 INFO L290 TraceCheckUtils]: 8: Hoare triple {14975#true} assume !(0 == ~cond); {14975#true} is VALID [2022-04-08 12:36:27,876 INFO L290 TraceCheckUtils]: 7: Hoare triple {14975#true} ~cond := #in~cond; {14975#true} is VALID [2022-04-08 12:36:27,876 INFO L272 TraceCheckUtils]: 6: Hoare triple {15082#(<= ~counter~0 3)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {14975#true} is VALID [2022-04-08 12:36:27,876 INFO L290 TraceCheckUtils]: 5: Hoare triple {15082#(<= ~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; {15082#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:27,876 INFO L272 TraceCheckUtils]: 4: Hoare triple {15082#(<= ~counter~0 3)} call #t~ret9 := main(); {15082#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:27,877 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15082#(<= ~counter~0 3)} {14975#true} #102#return; {15082#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:27,877 INFO L290 TraceCheckUtils]: 2: Hoare triple {15082#(<= ~counter~0 3)} assume true; {15082#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:27,877 INFO L290 TraceCheckUtils]: 1: Hoare triple {14975#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; {15082#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:27,877 INFO L272 TraceCheckUtils]: 0: Hoare triple {14975#true} call ULTIMATE.init(); {14975#true} is VALID [2022-04-08 12:36:27,878 INFO L134 CoverageAnalysis]: Checked inductivity of 110 backedges. 14 proven. 32 refuted. 0 times theorem prover too weak. 64 trivial. 0 not checked. [2022-04-08 12:36:27,878 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:36:27,878 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1407722453] [2022-04-08 12:36:27,878 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:36:27,878 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1630247055] [2022-04-08 12:36:27,878 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1630247055] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:36:27,878 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:36:27,878 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 14 [2022-04-08 12:36:27,878 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:36:27,878 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [393963728] [2022-04-08 12:36:27,878 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [393963728] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:36:27,879 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:36:27,879 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-08 12:36:27,879 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [933267380] [2022-04-08 12:36:27,879 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:36:27,879 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 5.0) internal successors, (50), 9 states have internal predecessors, (50), 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 73 [2022-04-08 12:36:27,879 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:36:27,879 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 5.0) internal successors, (50), 9 states have internal predecessors, (50), 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-08 12:36:27,931 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-08 12:36:27,931 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-08 12:36:27,931 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:27,931 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-08 12:36:27,932 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-08 12:36:27,932 INFO L87 Difference]: Start difference. First operand 141 states and 176 transitions. Second operand has 10 states, 10 states have (on average 5.0) internal successors, (50), 9 states have internal predecessors, (50), 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-08 12:36:28,380 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:28,381 INFO L93 Difference]: Finished difference Result 197 states and 255 transitions. [2022-04-08 12:36:28,381 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-08 12:36:28,381 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 5.0) internal successors, (50), 9 states have internal predecessors, (50), 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 73 [2022-04-08 12:36:28,381 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:36:28,381 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 5.0) internal successors, (50), 9 states have internal predecessors, (50), 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-08 12:36:28,383 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 157 transitions. [2022-04-08 12:36:28,383 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 5.0) internal successors, (50), 9 states have internal predecessors, (50), 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-08 12:36:28,384 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 157 transitions. [2022-04-08 12:36:28,384 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 157 transitions. [2022-04-08 12:36:28,487 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 157 edges. 157 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:28,489 INFO L225 Difference]: With dead ends: 197 [2022-04-08 12:36:28,489 INFO L226 Difference]: Without dead ends: 148 [2022-04-08 12:36:28,489 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 149 GetRequests, 132 SyntacticMatches, 1 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 24 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=115, Invalid=191, Unknown=0, NotChecked=0, Total=306 [2022-04-08 12:36:28,489 INFO L913 BasicCegarLoop]: 48 mSDtfsCounter, 61 mSDsluCounter, 142 mSDsCounter, 0 mSdLazyCounter, 69 mSolverCounterSat, 39 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 61 SdHoareTripleChecker+Valid, 190 SdHoareTripleChecker+Invalid, 108 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 39 IncrementalHoareTripleChecker+Valid, 69 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 12:36:28,490 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [61 Valid, 190 Invalid, 108 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [39 Valid, 69 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 12:36:28,490 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 148 states. [2022-04-08 12:36:28,610 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 148 to 144. [2022-04-08 12:36:28,610 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:36:28,610 INFO L82 GeneralOperation]: Start isEquivalent. First operand 148 states. Second operand has 144 states, 105 states have (on average 1.2) internal successors, (126), 107 states have internal predecessors, (126), 28 states have call successors, (28), 12 states have call predecessors, (28), 10 states have return successors, (26), 24 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-08 12:36:28,610 INFO L74 IsIncluded]: Start isIncluded. First operand 148 states. Second operand has 144 states, 105 states have (on average 1.2) internal successors, (126), 107 states have internal predecessors, (126), 28 states have call successors, (28), 12 states have call predecessors, (28), 10 states have return successors, (26), 24 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-08 12:36:28,611 INFO L87 Difference]: Start difference. First operand 148 states. Second operand has 144 states, 105 states have (on average 1.2) internal successors, (126), 107 states have internal predecessors, (126), 28 states have call successors, (28), 12 states have call predecessors, (28), 10 states have return successors, (26), 24 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-08 12:36:28,613 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:28,613 INFO L93 Difference]: Finished difference Result 148 states and 184 transitions. [2022-04-08 12:36:28,613 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 184 transitions. [2022-04-08 12:36:28,614 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:28,614 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:28,614 INFO L74 IsIncluded]: Start isIncluded. First operand has 144 states, 105 states have (on average 1.2) internal successors, (126), 107 states have internal predecessors, (126), 28 states have call successors, (28), 12 states have call predecessors, (28), 10 states have return successors, (26), 24 states have call predecessors, (26), 26 states have call successors, (26) Second operand 148 states. [2022-04-08 12:36:28,614 INFO L87 Difference]: Start difference. First operand has 144 states, 105 states have (on average 1.2) internal successors, (126), 107 states have internal predecessors, (126), 28 states have call successors, (28), 12 states have call predecessors, (28), 10 states have return successors, (26), 24 states have call predecessors, (26), 26 states have call successors, (26) Second operand 148 states. [2022-04-08 12:36:28,617 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:28,617 INFO L93 Difference]: Finished difference Result 148 states and 184 transitions. [2022-04-08 12:36:28,617 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 184 transitions. [2022-04-08 12:36:28,617 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:28,617 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:28,617 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:36:28,617 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:36:28,618 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 144 states, 105 states have (on average 1.2) internal successors, (126), 107 states have internal predecessors, (126), 28 states have call successors, (28), 12 states have call predecessors, (28), 10 states have return successors, (26), 24 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-08 12:36:28,621 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 144 states to 144 states and 180 transitions. [2022-04-08 12:36:28,621 INFO L78 Accepts]: Start accepts. Automaton has 144 states and 180 transitions. Word has length 73 [2022-04-08 12:36:28,621 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:36:28,622 INFO L478 AbstractCegarLoop]: Abstraction has 144 states and 180 transitions. [2022-04-08 12:36:28,622 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 5.0) internal successors, (50), 9 states have internal predecessors, (50), 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-08 12:36:28,622 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 144 states and 180 transitions. [2022-04-08 12:36:29,627 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 180 edges. 180 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:29,627 INFO L276 IsEmpty]: Start isEmpty. Operand 144 states and 180 transitions. [2022-04-08 12:36:29,631 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 76 [2022-04-08 12:36:29,632 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:36:29,632 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 6, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 12:36:29,650 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Forceful destruction successful, exit code 0 [2022-04-08 12:36:29,848 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable18,20 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:36:29,848 INFO L403 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:36:29,848 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:36:29,848 INFO L85 PathProgramCache]: Analyzing trace with hash 1116733197, now seen corresponding path program 1 times [2022-04-08 12:36:29,848 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:29,848 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2086297856] [2022-04-08 12:36:29,849 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:36:29,849 INFO L85 PathProgramCache]: Analyzing trace with hash 1116733197, now seen corresponding path program 2 times [2022-04-08 12:36:29,849 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:36:29,849 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1976287448] [2022-04-08 12:36:29,849 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:36:29,849 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:36:29,858 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:36:29,858 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [895752233] [2022-04-08 12:36:29,858 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:36:29,858 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:36:29,858 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:36:29,859 INFO L229 MonitoredProcess]: Starting monitored process 21 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 12:36:29,864 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Waiting until timeout for monitored process [2022-04-08 12:36:29,919 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:36:29,919 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:36:29,920 INFO L263 TraceCheckSpWp]: Trace formula consists of 201 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-08 12:36:29,933 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:36:29,933 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:36:30,242 INFO L272 TraceCheckUtils]: 0: Hoare triple {16412#true} call ULTIMATE.init(); {16412#true} is VALID [2022-04-08 12:36:30,242 INFO L290 TraceCheckUtils]: 1: Hoare triple {16412#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; {16420#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:30,242 INFO L290 TraceCheckUtils]: 2: Hoare triple {16420#(<= ~counter~0 0)} assume true; {16420#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:30,243 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16420#(<= ~counter~0 0)} {16412#true} #102#return; {16420#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:30,243 INFO L272 TraceCheckUtils]: 4: Hoare triple {16420#(<= ~counter~0 0)} call #t~ret9 := main(); {16420#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:30,243 INFO L290 TraceCheckUtils]: 5: Hoare triple {16420#(<= ~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; {16420#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:30,244 INFO L272 TraceCheckUtils]: 6: Hoare triple {16420#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {16420#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:30,244 INFO L290 TraceCheckUtils]: 7: Hoare triple {16420#(<= ~counter~0 0)} ~cond := #in~cond; {16420#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:30,244 INFO L290 TraceCheckUtils]: 8: Hoare triple {16420#(<= ~counter~0 0)} assume !(0 == ~cond); {16420#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:30,245 INFO L290 TraceCheckUtils]: 9: Hoare triple {16420#(<= ~counter~0 0)} assume true; {16420#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:30,245 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16420#(<= ~counter~0 0)} {16420#(<= ~counter~0 0)} #90#return; {16420#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:30,245 INFO L272 TraceCheckUtils]: 11: Hoare triple {16420#(<= ~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)); {16420#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:30,246 INFO L290 TraceCheckUtils]: 12: Hoare triple {16420#(<= ~counter~0 0)} ~cond := #in~cond; {16420#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:30,246 INFO L290 TraceCheckUtils]: 13: Hoare triple {16420#(<= ~counter~0 0)} assume !(0 == ~cond); {16420#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:30,246 INFO L290 TraceCheckUtils]: 14: Hoare triple {16420#(<= ~counter~0 0)} assume true; {16420#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:30,247 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {16420#(<= ~counter~0 0)} {16420#(<= ~counter~0 0)} #92#return; {16420#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:30,247 INFO L290 TraceCheckUtils]: 16: Hoare triple {16420#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {16420#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:30,248 INFO L290 TraceCheckUtils]: 17: Hoare triple {16420#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16469#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:30,248 INFO L290 TraceCheckUtils]: 18: Hoare triple {16469#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {16469#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:30,248 INFO L272 TraceCheckUtils]: 19: Hoare triple {16469#(<= ~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)); {16469#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:30,249 INFO L290 TraceCheckUtils]: 20: Hoare triple {16469#(<= ~counter~0 1)} ~cond := #in~cond; {16469#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:30,249 INFO L290 TraceCheckUtils]: 21: Hoare triple {16469#(<= ~counter~0 1)} assume !(0 == ~cond); {16469#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:30,249 INFO L290 TraceCheckUtils]: 22: Hoare triple {16469#(<= ~counter~0 1)} assume true; {16469#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:30,250 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {16469#(<= ~counter~0 1)} {16469#(<= ~counter~0 1)} #94#return; {16469#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:30,250 INFO L290 TraceCheckUtils]: 24: Hoare triple {16469#(<= ~counter~0 1)} assume !!(0 != ~r~0); {16469#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:30,250 INFO L290 TraceCheckUtils]: 25: Hoare triple {16469#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16494#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:30,251 INFO L290 TraceCheckUtils]: 26: Hoare triple {16494#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {16494#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:30,251 INFO L272 TraceCheckUtils]: 27: Hoare triple {16494#(<= ~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)); {16494#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:30,251 INFO L290 TraceCheckUtils]: 28: Hoare triple {16494#(<= ~counter~0 2)} ~cond := #in~cond; {16494#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:30,252 INFO L290 TraceCheckUtils]: 29: Hoare triple {16494#(<= ~counter~0 2)} assume !(0 == ~cond); {16494#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:30,252 INFO L290 TraceCheckUtils]: 30: Hoare triple {16494#(<= ~counter~0 2)} assume true; {16494#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:30,252 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {16494#(<= ~counter~0 2)} {16494#(<= ~counter~0 2)} #96#return; {16494#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:30,253 INFO L290 TraceCheckUtils]: 32: Hoare triple {16494#(<= ~counter~0 2)} assume !(~r~0 > 0); {16494#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:30,253 INFO L290 TraceCheckUtils]: 33: Hoare triple {16494#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {16519#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:30,253 INFO L290 TraceCheckUtils]: 34: Hoare triple {16519#(<= ~counter~0 3)} assume !!(#t~post8 < 10);havoc #t~post8; {16519#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:30,254 INFO L272 TraceCheckUtils]: 35: Hoare triple {16519#(<= ~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)); {16519#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:30,254 INFO L290 TraceCheckUtils]: 36: Hoare triple {16519#(<= ~counter~0 3)} ~cond := #in~cond; {16519#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:30,254 INFO L290 TraceCheckUtils]: 37: Hoare triple {16519#(<= ~counter~0 3)} assume !(0 == ~cond); {16519#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:30,255 INFO L290 TraceCheckUtils]: 38: Hoare triple {16519#(<= ~counter~0 3)} assume true; {16519#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:30,255 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {16519#(<= ~counter~0 3)} {16519#(<= ~counter~0 3)} #98#return; {16519#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:30,255 INFO L290 TraceCheckUtils]: 40: Hoare triple {16519#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {16519#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:30,256 INFO L290 TraceCheckUtils]: 41: Hoare triple {16519#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {16544#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:30,256 INFO L290 TraceCheckUtils]: 42: Hoare triple {16544#(<= ~counter~0 4)} assume !!(#t~post8 < 10);havoc #t~post8; {16544#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:30,257 INFO L272 TraceCheckUtils]: 43: Hoare triple {16544#(<= ~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)); {16544#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:30,257 INFO L290 TraceCheckUtils]: 44: Hoare triple {16544#(<= ~counter~0 4)} ~cond := #in~cond; {16544#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:30,257 INFO L290 TraceCheckUtils]: 45: Hoare triple {16544#(<= ~counter~0 4)} assume !(0 == ~cond); {16544#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:30,257 INFO L290 TraceCheckUtils]: 46: Hoare triple {16544#(<= ~counter~0 4)} assume true; {16544#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:30,258 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {16544#(<= ~counter~0 4)} {16544#(<= ~counter~0 4)} #98#return; {16544#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:30,258 INFO L290 TraceCheckUtils]: 48: Hoare triple {16544#(<= ~counter~0 4)} assume !(~r~0 < 0); {16544#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:30,259 INFO L290 TraceCheckUtils]: 49: Hoare triple {16544#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16569#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:30,259 INFO L290 TraceCheckUtils]: 50: Hoare triple {16569#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {16569#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:30,259 INFO L272 TraceCheckUtils]: 51: Hoare triple {16569#(<= ~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)); {16569#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:30,260 INFO L290 TraceCheckUtils]: 52: Hoare triple {16569#(<= ~counter~0 5)} ~cond := #in~cond; {16569#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:30,260 INFO L290 TraceCheckUtils]: 53: Hoare triple {16569#(<= ~counter~0 5)} assume !(0 == ~cond); {16569#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:30,260 INFO L290 TraceCheckUtils]: 54: Hoare triple {16569#(<= ~counter~0 5)} assume true; {16569#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:30,261 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {16569#(<= ~counter~0 5)} {16569#(<= ~counter~0 5)} #94#return; {16569#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:30,261 INFO L290 TraceCheckUtils]: 56: Hoare triple {16569#(<= ~counter~0 5)} assume !!(0 != ~r~0); {16569#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:30,261 INFO L290 TraceCheckUtils]: 57: Hoare triple {16569#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16594#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:30,262 INFO L290 TraceCheckUtils]: 58: Hoare triple {16594#(<= ~counter~0 6)} assume !!(#t~post7 < 10);havoc #t~post7; {16594#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:30,262 INFO L272 TraceCheckUtils]: 59: Hoare triple {16594#(<= ~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)); {16594#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:30,262 INFO L290 TraceCheckUtils]: 60: Hoare triple {16594#(<= ~counter~0 6)} ~cond := #in~cond; {16594#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:30,263 INFO L290 TraceCheckUtils]: 61: Hoare triple {16594#(<= ~counter~0 6)} assume !(0 == ~cond); {16594#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:30,263 INFO L290 TraceCheckUtils]: 62: Hoare triple {16594#(<= ~counter~0 6)} assume true; {16594#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:30,264 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {16594#(<= ~counter~0 6)} {16594#(<= ~counter~0 6)} #96#return; {16594#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:30,264 INFO L290 TraceCheckUtils]: 64: Hoare triple {16594#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {16594#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:30,264 INFO L290 TraceCheckUtils]: 65: Hoare triple {16594#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16619#(<= |main_#t~post7| 6)} is VALID [2022-04-08 12:36:30,264 INFO L290 TraceCheckUtils]: 66: Hoare triple {16619#(<= |main_#t~post7| 6)} assume !(#t~post7 < 10);havoc #t~post7; {16413#false} is VALID [2022-04-08 12:36:30,264 INFO L290 TraceCheckUtils]: 67: Hoare triple {16413#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {16413#false} is VALID [2022-04-08 12:36:30,265 INFO L290 TraceCheckUtils]: 68: Hoare triple {16413#false} assume !(#t~post8 < 10);havoc #t~post8; {16413#false} is VALID [2022-04-08 12:36:30,265 INFO L290 TraceCheckUtils]: 69: Hoare triple {16413#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16413#false} is VALID [2022-04-08 12:36:30,265 INFO L290 TraceCheckUtils]: 70: Hoare triple {16413#false} assume !(#t~post6 < 10);havoc #t~post6; {16413#false} is VALID [2022-04-08 12:36:30,265 INFO L272 TraceCheckUtils]: 71: Hoare triple {16413#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)); {16413#false} is VALID [2022-04-08 12:36:30,265 INFO L290 TraceCheckUtils]: 72: Hoare triple {16413#false} ~cond := #in~cond; {16413#false} is VALID [2022-04-08 12:36:30,265 INFO L290 TraceCheckUtils]: 73: Hoare triple {16413#false} assume 0 == ~cond; {16413#false} is VALID [2022-04-08 12:36:30,265 INFO L290 TraceCheckUtils]: 74: Hoare triple {16413#false} assume !false; {16413#false} is VALID [2022-04-08 12:36:30,265 INFO L134 CoverageAnalysis]: Checked inductivity of 100 backedges. 20 proven. 76 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 12:36:30,265 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:36:30,565 INFO L290 TraceCheckUtils]: 74: Hoare triple {16413#false} assume !false; {16413#false} is VALID [2022-04-08 12:36:30,565 INFO L290 TraceCheckUtils]: 73: Hoare triple {16413#false} assume 0 == ~cond; {16413#false} is VALID [2022-04-08 12:36:30,565 INFO L290 TraceCheckUtils]: 72: Hoare triple {16413#false} ~cond := #in~cond; {16413#false} is VALID [2022-04-08 12:36:30,565 INFO L272 TraceCheckUtils]: 71: Hoare triple {16413#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)); {16413#false} is VALID [2022-04-08 12:36:30,565 INFO L290 TraceCheckUtils]: 70: Hoare triple {16413#false} assume !(#t~post6 < 10);havoc #t~post6; {16413#false} is VALID [2022-04-08 12:36:30,565 INFO L290 TraceCheckUtils]: 69: Hoare triple {16413#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16413#false} is VALID [2022-04-08 12:36:30,566 INFO L290 TraceCheckUtils]: 68: Hoare triple {16413#false} assume !(#t~post8 < 10);havoc #t~post8; {16413#false} is VALID [2022-04-08 12:36:30,566 INFO L290 TraceCheckUtils]: 67: Hoare triple {16413#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {16413#false} is VALID [2022-04-08 12:36:30,570 INFO L290 TraceCheckUtils]: 66: Hoare triple {16671#(< |main_#t~post7| 10)} assume !(#t~post7 < 10);havoc #t~post7; {16413#false} is VALID [2022-04-08 12:36:30,570 INFO L290 TraceCheckUtils]: 65: Hoare triple {16675#(< ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16671#(< |main_#t~post7| 10)} is VALID [2022-04-08 12:36:30,571 INFO L290 TraceCheckUtils]: 64: Hoare triple {16675#(< ~counter~0 10)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {16675#(< ~counter~0 10)} is VALID [2022-04-08 12:36:30,571 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {16412#true} {16675#(< ~counter~0 10)} #96#return; {16675#(< ~counter~0 10)} is VALID [2022-04-08 12:36:30,571 INFO L290 TraceCheckUtils]: 62: Hoare triple {16412#true} assume true; {16412#true} is VALID [2022-04-08 12:36:30,571 INFO L290 TraceCheckUtils]: 61: Hoare triple {16412#true} assume !(0 == ~cond); {16412#true} is VALID [2022-04-08 12:36:30,571 INFO L290 TraceCheckUtils]: 60: Hoare triple {16412#true} ~cond := #in~cond; {16412#true} is VALID [2022-04-08 12:36:30,571 INFO L272 TraceCheckUtils]: 59: Hoare triple {16675#(< ~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)); {16412#true} is VALID [2022-04-08 12:36:30,572 INFO L290 TraceCheckUtils]: 58: Hoare triple {16675#(< ~counter~0 10)} assume !!(#t~post7 < 10);havoc #t~post7; {16675#(< ~counter~0 10)} is VALID [2022-04-08 12:36:30,572 INFO L290 TraceCheckUtils]: 57: Hoare triple {16700#(< ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16675#(< ~counter~0 10)} is VALID [2022-04-08 12:36:30,572 INFO L290 TraceCheckUtils]: 56: Hoare triple {16700#(< ~counter~0 9)} assume !!(0 != ~r~0); {16700#(< ~counter~0 9)} is VALID [2022-04-08 12:36:30,573 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {16412#true} {16700#(< ~counter~0 9)} #94#return; {16700#(< ~counter~0 9)} is VALID [2022-04-08 12:36:30,573 INFO L290 TraceCheckUtils]: 54: Hoare triple {16412#true} assume true; {16412#true} is VALID [2022-04-08 12:36:30,573 INFO L290 TraceCheckUtils]: 53: Hoare triple {16412#true} assume !(0 == ~cond); {16412#true} is VALID [2022-04-08 12:36:30,573 INFO L290 TraceCheckUtils]: 52: Hoare triple {16412#true} ~cond := #in~cond; {16412#true} is VALID [2022-04-08 12:36:30,573 INFO L272 TraceCheckUtils]: 51: Hoare triple {16700#(< ~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)); {16412#true} is VALID [2022-04-08 12:36:30,579 INFO L290 TraceCheckUtils]: 50: Hoare triple {16700#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {16700#(< ~counter~0 9)} is VALID [2022-04-08 12:36:30,580 INFO L290 TraceCheckUtils]: 49: Hoare triple {16725#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16700#(< ~counter~0 9)} is VALID [2022-04-08 12:36:30,580 INFO L290 TraceCheckUtils]: 48: Hoare triple {16725#(< ~counter~0 8)} assume !(~r~0 < 0); {16725#(< ~counter~0 8)} is VALID [2022-04-08 12:36:30,581 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {16412#true} {16725#(< ~counter~0 8)} #98#return; {16725#(< ~counter~0 8)} is VALID [2022-04-08 12:36:30,581 INFO L290 TraceCheckUtils]: 46: Hoare triple {16412#true} assume true; {16412#true} is VALID [2022-04-08 12:36:30,581 INFO L290 TraceCheckUtils]: 45: Hoare triple {16412#true} assume !(0 == ~cond); {16412#true} is VALID [2022-04-08 12:36:30,581 INFO L290 TraceCheckUtils]: 44: Hoare triple {16412#true} ~cond := #in~cond; {16412#true} is VALID [2022-04-08 12:36:30,581 INFO L272 TraceCheckUtils]: 43: Hoare triple {16725#(< ~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)); {16412#true} is VALID [2022-04-08 12:36:30,581 INFO L290 TraceCheckUtils]: 42: Hoare triple {16725#(< ~counter~0 8)} assume !!(#t~post8 < 10);havoc #t~post8; {16725#(< ~counter~0 8)} is VALID [2022-04-08 12:36:30,581 INFO L290 TraceCheckUtils]: 41: Hoare triple {16594#(<= ~counter~0 6)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {16725#(< ~counter~0 8)} is VALID [2022-04-08 12:36:30,582 INFO L290 TraceCheckUtils]: 40: Hoare triple {16594#(<= ~counter~0 6)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {16594#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:30,582 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {16412#true} {16594#(<= ~counter~0 6)} #98#return; {16594#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:30,582 INFO L290 TraceCheckUtils]: 38: Hoare triple {16412#true} assume true; {16412#true} is VALID [2022-04-08 12:36:30,582 INFO L290 TraceCheckUtils]: 37: Hoare triple {16412#true} assume !(0 == ~cond); {16412#true} is VALID [2022-04-08 12:36:30,582 INFO L290 TraceCheckUtils]: 36: Hoare triple {16412#true} ~cond := #in~cond; {16412#true} is VALID [2022-04-08 12:36:30,582 INFO L272 TraceCheckUtils]: 35: Hoare triple {16594#(<= ~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)); {16412#true} is VALID [2022-04-08 12:36:30,583 INFO L290 TraceCheckUtils]: 34: Hoare triple {16594#(<= ~counter~0 6)} assume !!(#t~post8 < 10);havoc #t~post8; {16594#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:30,583 INFO L290 TraceCheckUtils]: 33: Hoare triple {16569#(<= ~counter~0 5)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {16594#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:30,583 INFO L290 TraceCheckUtils]: 32: Hoare triple {16569#(<= ~counter~0 5)} assume !(~r~0 > 0); {16569#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:30,584 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {16412#true} {16569#(<= ~counter~0 5)} #96#return; {16569#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:30,584 INFO L290 TraceCheckUtils]: 30: Hoare triple {16412#true} assume true; {16412#true} is VALID [2022-04-08 12:36:30,584 INFO L290 TraceCheckUtils]: 29: Hoare triple {16412#true} assume !(0 == ~cond); {16412#true} is VALID [2022-04-08 12:36:30,584 INFO L290 TraceCheckUtils]: 28: Hoare triple {16412#true} ~cond := #in~cond; {16412#true} is VALID [2022-04-08 12:36:30,584 INFO L272 TraceCheckUtils]: 27: Hoare triple {16569#(<= ~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)); {16412#true} is VALID [2022-04-08 12:36:30,584 INFO L290 TraceCheckUtils]: 26: Hoare triple {16569#(<= ~counter~0 5)} assume !!(#t~post7 < 10);havoc #t~post7; {16569#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:30,585 INFO L290 TraceCheckUtils]: 25: Hoare triple {16544#(<= ~counter~0 4)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16569#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:30,585 INFO L290 TraceCheckUtils]: 24: Hoare triple {16544#(<= ~counter~0 4)} assume !!(0 != ~r~0); {16544#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:30,585 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {16412#true} {16544#(<= ~counter~0 4)} #94#return; {16544#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:30,585 INFO L290 TraceCheckUtils]: 22: Hoare triple {16412#true} assume true; {16412#true} is VALID [2022-04-08 12:36:30,585 INFO L290 TraceCheckUtils]: 21: Hoare triple {16412#true} assume !(0 == ~cond); {16412#true} is VALID [2022-04-08 12:36:30,586 INFO L290 TraceCheckUtils]: 20: Hoare triple {16412#true} ~cond := #in~cond; {16412#true} is VALID [2022-04-08 12:36:30,586 INFO L272 TraceCheckUtils]: 19: Hoare triple {16544#(<= ~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)); {16412#true} is VALID [2022-04-08 12:36:30,586 INFO L290 TraceCheckUtils]: 18: Hoare triple {16544#(<= ~counter~0 4)} assume !!(#t~post6 < 10);havoc #t~post6; {16544#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:30,586 INFO L290 TraceCheckUtils]: 17: Hoare triple {16519#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16544#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:30,586 INFO L290 TraceCheckUtils]: 16: Hoare triple {16519#(<= ~counter~0 3)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {16519#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:30,587 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {16412#true} {16519#(<= ~counter~0 3)} #92#return; {16519#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:30,587 INFO L290 TraceCheckUtils]: 14: Hoare triple {16412#true} assume true; {16412#true} is VALID [2022-04-08 12:36:30,587 INFO L290 TraceCheckUtils]: 13: Hoare triple {16412#true} assume !(0 == ~cond); {16412#true} is VALID [2022-04-08 12:36:30,587 INFO L290 TraceCheckUtils]: 12: Hoare triple {16412#true} ~cond := #in~cond; {16412#true} is VALID [2022-04-08 12:36:30,587 INFO L272 TraceCheckUtils]: 11: Hoare triple {16519#(<= ~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)); {16412#true} is VALID [2022-04-08 12:36:30,587 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16412#true} {16519#(<= ~counter~0 3)} #90#return; {16519#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:30,588 INFO L290 TraceCheckUtils]: 9: Hoare triple {16412#true} assume true; {16412#true} is VALID [2022-04-08 12:36:30,588 INFO L290 TraceCheckUtils]: 8: Hoare triple {16412#true} assume !(0 == ~cond); {16412#true} is VALID [2022-04-08 12:36:30,588 INFO L290 TraceCheckUtils]: 7: Hoare triple {16412#true} ~cond := #in~cond; {16412#true} is VALID [2022-04-08 12:36:30,588 INFO L272 TraceCheckUtils]: 6: Hoare triple {16519#(<= ~counter~0 3)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {16412#true} is VALID [2022-04-08 12:36:30,588 INFO L290 TraceCheckUtils]: 5: Hoare triple {16519#(<= ~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; {16519#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:30,588 INFO L272 TraceCheckUtils]: 4: Hoare triple {16519#(<= ~counter~0 3)} call #t~ret9 := main(); {16519#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:30,588 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16519#(<= ~counter~0 3)} {16412#true} #102#return; {16519#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:30,589 INFO L290 TraceCheckUtils]: 2: Hoare triple {16519#(<= ~counter~0 3)} assume true; {16519#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:30,589 INFO L290 TraceCheckUtils]: 1: Hoare triple {16412#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; {16519#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:30,589 INFO L272 TraceCheckUtils]: 0: Hoare triple {16412#true} call ULTIMATE.init(); {16412#true} is VALID [2022-04-08 12:36:30,589 INFO L134 CoverageAnalysis]: Checked inductivity of 100 backedges. 20 proven. 16 refuted. 0 times theorem prover too weak. 64 trivial. 0 not checked. [2022-04-08 12:36:30,589 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:36:30,590 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1976287448] [2022-04-08 12:36:30,590 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:36:30,590 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [895752233] [2022-04-08 12:36:30,590 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [895752233] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:36:30,590 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:36:30,590 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 14 [2022-04-08 12:36:30,590 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:36:30,590 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2086297856] [2022-04-08 12:36:30,590 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2086297856] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:36:30,590 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:36:30,590 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-08 12:36:30,590 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [761952302] [2022-04-08 12:36:30,590 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:36:30,591 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 5.2) internal successors, (52), 9 states have internal predecessors, (52), 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 75 [2022-04-08 12:36:30,591 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:36:30,591 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 5.2) internal successors, (52), 9 states have internal predecessors, (52), 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-08 12:36:30,636 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:30,637 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-08 12:36:30,637 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:30,637 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-08 12:36:30,637 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-08 12:36:30,637 INFO L87 Difference]: Start difference. First operand 144 states and 180 transitions. Second operand has 10 states, 10 states have (on average 5.2) internal successors, (52), 9 states have internal predecessors, (52), 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-08 12:36:31,060 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:31,061 INFO L93 Difference]: Finished difference Result 199 states and 258 transitions. [2022-04-08 12:36:31,061 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-08 12:36:31,061 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 5.2) internal successors, (52), 9 states have internal predecessors, (52), 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 75 [2022-04-08 12:36:31,061 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:36:31,061 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 5.2) internal successors, (52), 9 states have internal predecessors, (52), 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-08 12:36:31,063 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 157 transitions. [2022-04-08 12:36:31,063 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 5.2) internal successors, (52), 9 states have internal predecessors, (52), 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-08 12:36:31,064 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 157 transitions. [2022-04-08 12:36:31,064 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 157 transitions. [2022-04-08 12:36:31,173 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 157 edges. 157 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:31,174 INFO L225 Difference]: With dead ends: 199 [2022-04-08 12:36:31,175 INFO L226 Difference]: Without dead ends: 150 [2022-04-08 12:36:31,175 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 154 GetRequests, 136 SyntacticMatches, 1 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 28 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=131, Invalid=211, Unknown=0, NotChecked=0, Total=342 [2022-04-08 12:36:31,175 INFO L913 BasicCegarLoop]: 48 mSDtfsCounter, 63 mSDsluCounter, 129 mSDsCounter, 0 mSdLazyCounter, 65 mSolverCounterSat, 59 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 63 SdHoareTripleChecker+Valid, 177 SdHoareTripleChecker+Invalid, 124 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 59 IncrementalHoareTripleChecker+Valid, 65 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 12:36:31,175 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [63 Valid, 177 Invalid, 124 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [59 Valid, 65 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 12:36:31,176 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 150 states. [2022-04-08 12:36:31,325 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 150 to 150. [2022-04-08 12:36:31,325 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:36:31,327 INFO L82 GeneralOperation]: Start isEquivalent. First operand 150 states. Second operand has 150 states, 111 states have (on average 1.1891891891891893) internal successors, (132), 111 states have internal predecessors, (132), 28 states have call successors, (28), 12 states have call predecessors, (28), 10 states have return successors, (26), 26 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-08 12:36:31,327 INFO L74 IsIncluded]: Start isIncluded. First operand 150 states. Second operand has 150 states, 111 states have (on average 1.1891891891891893) internal successors, (132), 111 states have internal predecessors, (132), 28 states have call successors, (28), 12 states have call predecessors, (28), 10 states have return successors, (26), 26 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-08 12:36:31,327 INFO L87 Difference]: Start difference. First operand 150 states. Second operand has 150 states, 111 states have (on average 1.1891891891891893) internal successors, (132), 111 states have internal predecessors, (132), 28 states have call successors, (28), 12 states have call predecessors, (28), 10 states have return successors, (26), 26 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-08 12:36:31,329 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:31,330 INFO L93 Difference]: Finished difference Result 150 states and 186 transitions. [2022-04-08 12:36:31,330 INFO L276 IsEmpty]: Start isEmpty. Operand 150 states and 186 transitions. [2022-04-08 12:36:31,330 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:31,330 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:31,330 INFO L74 IsIncluded]: Start isIncluded. First operand has 150 states, 111 states have (on average 1.1891891891891893) internal successors, (132), 111 states have internal predecessors, (132), 28 states have call successors, (28), 12 states have call predecessors, (28), 10 states have return successors, (26), 26 states have call predecessors, (26), 26 states have call successors, (26) Second operand 150 states. [2022-04-08 12:36:31,330 INFO L87 Difference]: Start difference. First operand has 150 states, 111 states have (on average 1.1891891891891893) internal successors, (132), 111 states have internal predecessors, (132), 28 states have call successors, (28), 12 states have call predecessors, (28), 10 states have return successors, (26), 26 states have call predecessors, (26), 26 states have call successors, (26) Second operand 150 states. [2022-04-08 12:36:31,333 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:31,333 INFO L93 Difference]: Finished difference Result 150 states and 186 transitions. [2022-04-08 12:36:31,333 INFO L276 IsEmpty]: Start isEmpty. Operand 150 states and 186 transitions. [2022-04-08 12:36:31,333 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:31,333 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:31,333 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:36:31,333 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:36:31,333 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 150 states, 111 states have (on average 1.1891891891891893) internal successors, (132), 111 states have internal predecessors, (132), 28 states have call successors, (28), 12 states have call predecessors, (28), 10 states have return successors, (26), 26 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-08 12:36:31,336 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 150 states to 150 states and 186 transitions. [2022-04-08 12:36:31,336 INFO L78 Accepts]: Start accepts. Automaton has 150 states and 186 transitions. Word has length 75 [2022-04-08 12:36:31,336 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:36:31,336 INFO L478 AbstractCegarLoop]: Abstraction has 150 states and 186 transitions. [2022-04-08 12:36:31,336 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 5.2) internal successors, (52), 9 states have internal predecessors, (52), 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-08 12:36:31,337 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 150 states and 186 transitions. [2022-04-08 12:36:33,025 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 186 edges. 186 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:33,025 INFO L276 IsEmpty]: Start isEmpty. Operand 150 states and 186 transitions. [2022-04-08 12:36:33,026 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 80 [2022-04-08 12:36:33,026 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:36:33,026 INFO L499 BasicCegarLoop]: trace histogram [8, 7, 7, 5, 5, 5, 5, 4, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 12:36:33,042 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Forceful destruction successful, exit code 0 [2022-04-08 12:36:33,226 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable19,21 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:36:33,226 INFO L403 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:36:33,227 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:36:33,227 INFO L85 PathProgramCache]: Analyzing trace with hash -1970775776, now seen corresponding path program 7 times [2022-04-08 12:36:33,227 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:33,227 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1200400530] [2022-04-08 12:36:33,227 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:36:33,227 INFO L85 PathProgramCache]: Analyzing trace with hash -1970775776, now seen corresponding path program 8 times [2022-04-08 12:36:33,227 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:36:33,227 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [725059399] [2022-04-08 12:36:33,228 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:36:33,228 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:36:33,240 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:36:33,240 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1870348303] [2022-04-08 12:36:33,240 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:36:33,240 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:36:33,240 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:36:33,256 INFO L229 MonitoredProcess]: Starting monitored process 22 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 12:36:33,257 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Waiting until timeout for monitored process [2022-04-08 12:36:33,300 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:36:33,300 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:36:33,301 INFO L263 TraceCheckSpWp]: Trace formula consists of 214 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-08 12:36:33,314 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:36:33,315 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:36:33,633 INFO L272 TraceCheckUtils]: 0: Hoare triple {17883#true} call ULTIMATE.init(); {17883#true} is VALID [2022-04-08 12:36:33,634 INFO L290 TraceCheckUtils]: 1: Hoare triple {17883#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; {17891#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:33,634 INFO L290 TraceCheckUtils]: 2: Hoare triple {17891#(<= ~counter~0 0)} assume true; {17891#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:33,634 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17891#(<= ~counter~0 0)} {17883#true} #102#return; {17891#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:33,634 INFO L272 TraceCheckUtils]: 4: Hoare triple {17891#(<= ~counter~0 0)} call #t~ret9 := main(); {17891#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:33,635 INFO L290 TraceCheckUtils]: 5: Hoare triple {17891#(<= ~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; {17891#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:33,635 INFO L272 TraceCheckUtils]: 6: Hoare triple {17891#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {17891#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:33,635 INFO L290 TraceCheckUtils]: 7: Hoare triple {17891#(<= ~counter~0 0)} ~cond := #in~cond; {17891#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:33,635 INFO L290 TraceCheckUtils]: 8: Hoare triple {17891#(<= ~counter~0 0)} assume !(0 == ~cond); {17891#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:33,636 INFO L290 TraceCheckUtils]: 9: Hoare triple {17891#(<= ~counter~0 0)} assume true; {17891#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:33,636 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17891#(<= ~counter~0 0)} {17891#(<= ~counter~0 0)} #90#return; {17891#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:33,636 INFO L272 TraceCheckUtils]: 11: Hoare triple {17891#(<= ~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)); {17891#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:33,637 INFO L290 TraceCheckUtils]: 12: Hoare triple {17891#(<= ~counter~0 0)} ~cond := #in~cond; {17891#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:33,637 INFO L290 TraceCheckUtils]: 13: Hoare triple {17891#(<= ~counter~0 0)} assume !(0 == ~cond); {17891#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:33,637 INFO L290 TraceCheckUtils]: 14: Hoare triple {17891#(<= ~counter~0 0)} assume true; {17891#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:33,637 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {17891#(<= ~counter~0 0)} {17891#(<= ~counter~0 0)} #92#return; {17891#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:33,638 INFO L290 TraceCheckUtils]: 16: Hoare triple {17891#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {17891#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:33,638 INFO L290 TraceCheckUtils]: 17: Hoare triple {17891#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17940#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:33,639 INFO L290 TraceCheckUtils]: 18: Hoare triple {17940#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {17940#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:33,639 INFO L272 TraceCheckUtils]: 19: Hoare triple {17940#(<= ~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)); {17940#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:33,639 INFO L290 TraceCheckUtils]: 20: Hoare triple {17940#(<= ~counter~0 1)} ~cond := #in~cond; {17940#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:33,640 INFO L290 TraceCheckUtils]: 21: Hoare triple {17940#(<= ~counter~0 1)} assume !(0 == ~cond); {17940#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:33,640 INFO L290 TraceCheckUtils]: 22: Hoare triple {17940#(<= ~counter~0 1)} assume true; {17940#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:33,657 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {17940#(<= ~counter~0 1)} {17940#(<= ~counter~0 1)} #94#return; {17940#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:33,658 INFO L290 TraceCheckUtils]: 24: Hoare triple {17940#(<= ~counter~0 1)} assume !!(0 != ~r~0); {17940#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:33,658 INFO L290 TraceCheckUtils]: 25: Hoare triple {17940#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {17965#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:33,659 INFO L290 TraceCheckUtils]: 26: Hoare triple {17965#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {17965#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:33,659 INFO L272 TraceCheckUtils]: 27: Hoare triple {17965#(<= ~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)); {17965#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:33,659 INFO L290 TraceCheckUtils]: 28: Hoare triple {17965#(<= ~counter~0 2)} ~cond := #in~cond; {17965#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:33,660 INFO L290 TraceCheckUtils]: 29: Hoare triple {17965#(<= ~counter~0 2)} assume !(0 == ~cond); {17965#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:33,660 INFO L290 TraceCheckUtils]: 30: Hoare triple {17965#(<= ~counter~0 2)} assume true; {17965#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:33,660 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {17965#(<= ~counter~0 2)} {17965#(<= ~counter~0 2)} #96#return; {17965#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:33,661 INFO L290 TraceCheckUtils]: 32: Hoare triple {17965#(<= ~counter~0 2)} assume !(~r~0 > 0); {17965#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:33,661 INFO L290 TraceCheckUtils]: 33: Hoare triple {17965#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {17990#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:33,661 INFO L290 TraceCheckUtils]: 34: Hoare triple {17990#(<= ~counter~0 3)} assume !!(#t~post8 < 10);havoc #t~post8; {17990#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:33,662 INFO L272 TraceCheckUtils]: 35: Hoare triple {17990#(<= ~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)); {17990#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:33,662 INFO L290 TraceCheckUtils]: 36: Hoare triple {17990#(<= ~counter~0 3)} ~cond := #in~cond; {17990#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:33,663 INFO L290 TraceCheckUtils]: 37: Hoare triple {17990#(<= ~counter~0 3)} assume !(0 == ~cond); {17990#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:33,663 INFO L290 TraceCheckUtils]: 38: Hoare triple {17990#(<= ~counter~0 3)} assume true; {17990#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:33,663 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {17990#(<= ~counter~0 3)} {17990#(<= ~counter~0 3)} #98#return; {17990#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:33,664 INFO L290 TraceCheckUtils]: 40: Hoare triple {17990#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {17990#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:33,664 INFO L290 TraceCheckUtils]: 41: Hoare triple {17990#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {18015#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:33,664 INFO L290 TraceCheckUtils]: 42: Hoare triple {18015#(<= ~counter~0 4)} assume !!(#t~post8 < 10);havoc #t~post8; {18015#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:33,665 INFO L272 TraceCheckUtils]: 43: Hoare triple {18015#(<= ~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)); {18015#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:33,665 INFO L290 TraceCheckUtils]: 44: Hoare triple {18015#(<= ~counter~0 4)} ~cond := #in~cond; {18015#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:33,665 INFO L290 TraceCheckUtils]: 45: Hoare triple {18015#(<= ~counter~0 4)} assume !(0 == ~cond); {18015#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:33,666 INFO L290 TraceCheckUtils]: 46: Hoare triple {18015#(<= ~counter~0 4)} assume true; {18015#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:33,666 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {18015#(<= ~counter~0 4)} {18015#(<= ~counter~0 4)} #98#return; {18015#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:33,666 INFO L290 TraceCheckUtils]: 48: Hoare triple {18015#(<= ~counter~0 4)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {18015#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:33,667 INFO L290 TraceCheckUtils]: 49: Hoare triple {18015#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {18040#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:33,667 INFO L290 TraceCheckUtils]: 50: Hoare triple {18040#(<= ~counter~0 5)} assume !!(#t~post8 < 10);havoc #t~post8; {18040#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:33,667 INFO L272 TraceCheckUtils]: 51: Hoare triple {18040#(<= ~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)); {18040#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:33,668 INFO L290 TraceCheckUtils]: 52: Hoare triple {18040#(<= ~counter~0 5)} ~cond := #in~cond; {18040#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:33,668 INFO L290 TraceCheckUtils]: 53: Hoare triple {18040#(<= ~counter~0 5)} assume !(0 == ~cond); {18040#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:33,668 INFO L290 TraceCheckUtils]: 54: Hoare triple {18040#(<= ~counter~0 5)} assume true; {18040#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:33,669 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {18040#(<= ~counter~0 5)} {18040#(<= ~counter~0 5)} #98#return; {18040#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:33,669 INFO L290 TraceCheckUtils]: 56: Hoare triple {18040#(<= ~counter~0 5)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {18040#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:33,669 INFO L290 TraceCheckUtils]: 57: Hoare triple {18040#(<= ~counter~0 5)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {18065#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:33,670 INFO L290 TraceCheckUtils]: 58: Hoare triple {18065#(<= ~counter~0 6)} assume !!(#t~post8 < 10);havoc #t~post8; {18065#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:33,670 INFO L272 TraceCheckUtils]: 59: Hoare triple {18065#(<= ~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)); {18065#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:33,670 INFO L290 TraceCheckUtils]: 60: Hoare triple {18065#(<= ~counter~0 6)} ~cond := #in~cond; {18065#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:33,671 INFO L290 TraceCheckUtils]: 61: Hoare triple {18065#(<= ~counter~0 6)} assume !(0 == ~cond); {18065#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:33,671 INFO L290 TraceCheckUtils]: 62: Hoare triple {18065#(<= ~counter~0 6)} assume true; {18065#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:33,671 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {18065#(<= ~counter~0 6)} {18065#(<= ~counter~0 6)} #98#return; {18065#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:33,671 INFO L290 TraceCheckUtils]: 64: Hoare triple {18065#(<= ~counter~0 6)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {18065#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:33,672 INFO L290 TraceCheckUtils]: 65: Hoare triple {18065#(<= ~counter~0 6)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {18090#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:33,672 INFO L290 TraceCheckUtils]: 66: Hoare triple {18090#(<= ~counter~0 7)} assume !!(#t~post8 < 10);havoc #t~post8; {18090#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:33,673 INFO L272 TraceCheckUtils]: 67: Hoare triple {18090#(<= ~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)); {18090#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:33,673 INFO L290 TraceCheckUtils]: 68: Hoare triple {18090#(<= ~counter~0 7)} ~cond := #in~cond; {18090#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:33,673 INFO L290 TraceCheckUtils]: 69: Hoare triple {18090#(<= ~counter~0 7)} assume !(0 == ~cond); {18090#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:33,673 INFO L290 TraceCheckUtils]: 70: Hoare triple {18090#(<= ~counter~0 7)} assume true; {18090#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:33,674 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {18090#(<= ~counter~0 7)} {18090#(<= ~counter~0 7)} #98#return; {18090#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:33,674 INFO L290 TraceCheckUtils]: 72: Hoare triple {18090#(<= ~counter~0 7)} assume !(~r~0 < 0); {18090#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:33,674 INFO L290 TraceCheckUtils]: 73: Hoare triple {18090#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18115#(<= |main_#t~post6| 7)} is VALID [2022-04-08 12:36:33,675 INFO L290 TraceCheckUtils]: 74: Hoare triple {18115#(<= |main_#t~post6| 7)} assume !(#t~post6 < 10);havoc #t~post6; {17884#false} is VALID [2022-04-08 12:36:33,675 INFO L272 TraceCheckUtils]: 75: Hoare triple {17884#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)); {17884#false} is VALID [2022-04-08 12:36:33,675 INFO L290 TraceCheckUtils]: 76: Hoare triple {17884#false} ~cond := #in~cond; {17884#false} is VALID [2022-04-08 12:36:33,675 INFO L290 TraceCheckUtils]: 77: Hoare triple {17884#false} assume 0 == ~cond; {17884#false} is VALID [2022-04-08 12:36:33,675 INFO L290 TraceCheckUtils]: 78: Hoare triple {17884#false} assume !false; {17884#false} is VALID [2022-04-08 12:36:33,675 INFO L134 CoverageAnalysis]: Checked inductivity of 144 backedges. 14 proven. 126 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 12:36:33,675 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:36:34,003 INFO L290 TraceCheckUtils]: 78: Hoare triple {17884#false} assume !false; {17884#false} is VALID [2022-04-08 12:36:34,003 INFO L290 TraceCheckUtils]: 77: Hoare triple {17884#false} assume 0 == ~cond; {17884#false} is VALID [2022-04-08 12:36:34,003 INFO L290 TraceCheckUtils]: 76: Hoare triple {17884#false} ~cond := #in~cond; {17884#false} is VALID [2022-04-08 12:36:34,003 INFO L272 TraceCheckUtils]: 75: Hoare triple {17884#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)); {17884#false} is VALID [2022-04-08 12:36:34,004 INFO L290 TraceCheckUtils]: 74: Hoare triple {18143#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {17884#false} is VALID [2022-04-08 12:36:34,004 INFO L290 TraceCheckUtils]: 73: Hoare triple {18147#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18143#(< |main_#t~post6| 10)} is VALID [2022-04-08 12:36:34,004 INFO L290 TraceCheckUtils]: 72: Hoare triple {18147#(< ~counter~0 10)} assume !(~r~0 < 0); {18147#(< ~counter~0 10)} is VALID [2022-04-08 12:36:34,005 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {17883#true} {18147#(< ~counter~0 10)} #98#return; {18147#(< ~counter~0 10)} is VALID [2022-04-08 12:36:34,005 INFO L290 TraceCheckUtils]: 70: Hoare triple {17883#true} assume true; {17883#true} is VALID [2022-04-08 12:36:34,005 INFO L290 TraceCheckUtils]: 69: Hoare triple {17883#true} assume !(0 == ~cond); {17883#true} is VALID [2022-04-08 12:36:34,005 INFO L290 TraceCheckUtils]: 68: Hoare triple {17883#true} ~cond := #in~cond; {17883#true} is VALID [2022-04-08 12:36:34,005 INFO L272 TraceCheckUtils]: 67: Hoare triple {18147#(< ~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)); {17883#true} is VALID [2022-04-08 12:36:34,005 INFO L290 TraceCheckUtils]: 66: Hoare triple {18147#(< ~counter~0 10)} assume !!(#t~post8 < 10);havoc #t~post8; {18147#(< ~counter~0 10)} is VALID [2022-04-08 12:36:34,006 INFO L290 TraceCheckUtils]: 65: Hoare triple {18172#(< ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {18147#(< ~counter~0 10)} is VALID [2022-04-08 12:36:34,006 INFO L290 TraceCheckUtils]: 64: Hoare triple {18172#(< ~counter~0 9)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {18172#(< ~counter~0 9)} is VALID [2022-04-08 12:36:34,006 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {17883#true} {18172#(< ~counter~0 9)} #98#return; {18172#(< ~counter~0 9)} is VALID [2022-04-08 12:36:34,007 INFO L290 TraceCheckUtils]: 62: Hoare triple {17883#true} assume true; {17883#true} is VALID [2022-04-08 12:36:34,007 INFO L290 TraceCheckUtils]: 61: Hoare triple {17883#true} assume !(0 == ~cond); {17883#true} is VALID [2022-04-08 12:36:34,007 INFO L290 TraceCheckUtils]: 60: Hoare triple {17883#true} ~cond := #in~cond; {17883#true} is VALID [2022-04-08 12:36:34,007 INFO L272 TraceCheckUtils]: 59: Hoare triple {18172#(< ~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)); {17883#true} is VALID [2022-04-08 12:36:34,007 INFO L290 TraceCheckUtils]: 58: Hoare triple {18172#(< ~counter~0 9)} assume !!(#t~post8 < 10);havoc #t~post8; {18172#(< ~counter~0 9)} is VALID [2022-04-08 12:36:34,007 INFO L290 TraceCheckUtils]: 57: Hoare triple {18090#(<= ~counter~0 7)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {18172#(< ~counter~0 9)} is VALID [2022-04-08 12:36:34,008 INFO L290 TraceCheckUtils]: 56: Hoare triple {18090#(<= ~counter~0 7)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {18090#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:34,008 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {17883#true} {18090#(<= ~counter~0 7)} #98#return; {18090#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:34,008 INFO L290 TraceCheckUtils]: 54: Hoare triple {17883#true} assume true; {17883#true} is VALID [2022-04-08 12:36:34,008 INFO L290 TraceCheckUtils]: 53: Hoare triple {17883#true} assume !(0 == ~cond); {17883#true} is VALID [2022-04-08 12:36:34,008 INFO L290 TraceCheckUtils]: 52: Hoare triple {17883#true} ~cond := #in~cond; {17883#true} is VALID [2022-04-08 12:36:34,008 INFO L272 TraceCheckUtils]: 51: Hoare triple {18090#(<= ~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)); {17883#true} is VALID [2022-04-08 12:36:34,008 INFO L290 TraceCheckUtils]: 50: Hoare triple {18090#(<= ~counter~0 7)} assume !!(#t~post8 < 10);havoc #t~post8; {18090#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:34,009 INFO L290 TraceCheckUtils]: 49: Hoare triple {18065#(<= ~counter~0 6)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {18090#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:34,009 INFO L290 TraceCheckUtils]: 48: Hoare triple {18065#(<= ~counter~0 6)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {18065#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:34,010 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {17883#true} {18065#(<= ~counter~0 6)} #98#return; {18065#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:34,010 INFO L290 TraceCheckUtils]: 46: Hoare triple {17883#true} assume true; {17883#true} is VALID [2022-04-08 12:36:34,010 INFO L290 TraceCheckUtils]: 45: Hoare triple {17883#true} assume !(0 == ~cond); {17883#true} is VALID [2022-04-08 12:36:34,010 INFO L290 TraceCheckUtils]: 44: Hoare triple {17883#true} ~cond := #in~cond; {17883#true} is VALID [2022-04-08 12:36:34,010 INFO L272 TraceCheckUtils]: 43: Hoare triple {18065#(<= ~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)); {17883#true} is VALID [2022-04-08 12:36:34,010 INFO L290 TraceCheckUtils]: 42: Hoare triple {18065#(<= ~counter~0 6)} assume !!(#t~post8 < 10);havoc #t~post8; {18065#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:34,010 INFO L290 TraceCheckUtils]: 41: Hoare triple {18040#(<= ~counter~0 5)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {18065#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:34,011 INFO L290 TraceCheckUtils]: 40: Hoare triple {18040#(<= ~counter~0 5)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {18040#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:34,011 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {17883#true} {18040#(<= ~counter~0 5)} #98#return; {18040#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:34,011 INFO L290 TraceCheckUtils]: 38: Hoare triple {17883#true} assume true; {17883#true} is VALID [2022-04-08 12:36:34,011 INFO L290 TraceCheckUtils]: 37: Hoare triple {17883#true} assume !(0 == ~cond); {17883#true} is VALID [2022-04-08 12:36:34,011 INFO L290 TraceCheckUtils]: 36: Hoare triple {17883#true} ~cond := #in~cond; {17883#true} is VALID [2022-04-08 12:36:34,011 INFO L272 TraceCheckUtils]: 35: Hoare triple {18040#(<= ~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)); {17883#true} is VALID [2022-04-08 12:36:34,012 INFO L290 TraceCheckUtils]: 34: Hoare triple {18040#(<= ~counter~0 5)} assume !!(#t~post8 < 10);havoc #t~post8; {18040#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:34,012 INFO L290 TraceCheckUtils]: 33: Hoare triple {18015#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {18040#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:34,012 INFO L290 TraceCheckUtils]: 32: Hoare triple {18015#(<= ~counter~0 4)} assume !(~r~0 > 0); {18015#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:34,013 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {17883#true} {18015#(<= ~counter~0 4)} #96#return; {18015#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:34,013 INFO L290 TraceCheckUtils]: 30: Hoare triple {17883#true} assume true; {17883#true} is VALID [2022-04-08 12:36:34,013 INFO L290 TraceCheckUtils]: 29: Hoare triple {17883#true} assume !(0 == ~cond); {17883#true} is VALID [2022-04-08 12:36:34,013 INFO L290 TraceCheckUtils]: 28: Hoare triple {17883#true} ~cond := #in~cond; {17883#true} is VALID [2022-04-08 12:36:34,013 INFO L272 TraceCheckUtils]: 27: Hoare triple {18015#(<= ~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)); {17883#true} is VALID [2022-04-08 12:36:34,013 INFO L290 TraceCheckUtils]: 26: Hoare triple {18015#(<= ~counter~0 4)} assume !!(#t~post7 < 10);havoc #t~post7; {18015#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:34,014 INFO L290 TraceCheckUtils]: 25: Hoare triple {17990#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18015#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:34,014 INFO L290 TraceCheckUtils]: 24: Hoare triple {17990#(<= ~counter~0 3)} assume !!(0 != ~r~0); {17990#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:34,014 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {17883#true} {17990#(<= ~counter~0 3)} #94#return; {17990#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:34,014 INFO L290 TraceCheckUtils]: 22: Hoare triple {17883#true} assume true; {17883#true} is VALID [2022-04-08 12:36:34,014 INFO L290 TraceCheckUtils]: 21: Hoare triple {17883#true} assume !(0 == ~cond); {17883#true} is VALID [2022-04-08 12:36:34,015 INFO L290 TraceCheckUtils]: 20: Hoare triple {17883#true} ~cond := #in~cond; {17883#true} is VALID [2022-04-08 12:36:34,015 INFO L272 TraceCheckUtils]: 19: Hoare triple {17990#(<= ~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)); {17883#true} is VALID [2022-04-08 12:36:34,015 INFO L290 TraceCheckUtils]: 18: Hoare triple {17990#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {17990#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:34,015 INFO L290 TraceCheckUtils]: 17: Hoare triple {17965#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17990#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:34,015 INFO L290 TraceCheckUtils]: 16: Hoare triple {17965#(<= ~counter~0 2)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {17965#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:34,016 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {17883#true} {17965#(<= ~counter~0 2)} #92#return; {17965#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:34,016 INFO L290 TraceCheckUtils]: 14: Hoare triple {17883#true} assume true; {17883#true} is VALID [2022-04-08 12:36:34,016 INFO L290 TraceCheckUtils]: 13: Hoare triple {17883#true} assume !(0 == ~cond); {17883#true} is VALID [2022-04-08 12:36:34,016 INFO L290 TraceCheckUtils]: 12: Hoare triple {17883#true} ~cond := #in~cond; {17883#true} is VALID [2022-04-08 12:36:34,016 INFO L272 TraceCheckUtils]: 11: Hoare triple {17965#(<= ~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)); {17883#true} is VALID [2022-04-08 12:36:34,018 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17883#true} {17965#(<= ~counter~0 2)} #90#return; {17965#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:34,018 INFO L290 TraceCheckUtils]: 9: Hoare triple {17883#true} assume true; {17883#true} is VALID [2022-04-08 12:36:34,018 INFO L290 TraceCheckUtils]: 8: Hoare triple {17883#true} assume !(0 == ~cond); {17883#true} is VALID [2022-04-08 12:36:34,018 INFO L290 TraceCheckUtils]: 7: Hoare triple {17883#true} ~cond := #in~cond; {17883#true} is VALID [2022-04-08 12:36:34,018 INFO L272 TraceCheckUtils]: 6: Hoare triple {17965#(<= ~counter~0 2)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {17883#true} is VALID [2022-04-08 12:36:34,018 INFO L290 TraceCheckUtils]: 5: Hoare triple {17965#(<= ~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; {17965#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:34,019 INFO L272 TraceCheckUtils]: 4: Hoare triple {17965#(<= ~counter~0 2)} call #t~ret9 := main(); {17965#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:34,019 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17965#(<= ~counter~0 2)} {17883#true} #102#return; {17965#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:34,019 INFO L290 TraceCheckUtils]: 2: Hoare triple {17965#(<= ~counter~0 2)} assume true; {17965#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:34,020 INFO L290 TraceCheckUtils]: 1: Hoare triple {17883#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; {17965#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:34,020 INFO L272 TraceCheckUtils]: 0: Hoare triple {17883#true} call ULTIMATE.init(); {17883#true} is VALID [2022-04-08 12:36:34,020 INFO L134 CoverageAnalysis]: Checked inductivity of 144 backedges. 14 proven. 42 refuted. 0 times theorem prover too weak. 88 trivial. 0 not checked. [2022-04-08 12:36:34,020 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:36:34,020 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [725059399] [2022-04-08 12:36:34,020 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:36:34,020 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1870348303] [2022-04-08 12:36:34,020 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1870348303] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:36:34,020 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:36:34,020 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 14 [2022-04-08 12:36:34,021 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:36:34,021 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1200400530] [2022-04-08 12:36:34,021 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1200400530] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:36:34,021 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:36:34,021 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-08 12:36:34,021 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [881639982] [2022-04-08 12:36:34,021 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:36:34,021 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 4.909090909090909) internal successors, (54), 10 states have internal predecessors, (54), 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 79 [2022-04-08 12:36:34,021 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:36:34,021 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 4.909090909090909) internal successors, (54), 10 states have internal predecessors, (54), 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-08 12:36:34,072 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 76 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:34,072 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-08 12:36:34,072 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:34,072 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-08 12:36:34,072 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-08 12:36:34,072 INFO L87 Difference]: Start difference. First operand 150 states and 186 transitions. Second operand has 11 states, 11 states have (on average 4.909090909090909) internal successors, (54), 10 states have internal predecessors, (54), 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-08 12:36:34,545 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:34,545 INFO L93 Difference]: Finished difference Result 172 states and 213 transitions. [2022-04-08 12:36:34,545 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-08 12:36:34,546 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 4.909090909090909) internal successors, (54), 10 states have internal predecessors, (54), 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 79 [2022-04-08 12:36:34,546 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:36:34,546 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 4.909090909090909) internal successors, (54), 10 states have internal predecessors, (54), 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-08 12:36:34,547 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 155 transitions. [2022-04-08 12:36:34,547 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 4.909090909090909) internal successors, (54), 10 states have internal predecessors, (54), 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-08 12:36:34,549 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 155 transitions. [2022-04-08 12:36:34,549 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 155 transitions. [2022-04-08 12:36:34,662 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 155 edges. 155 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:34,665 INFO L225 Difference]: With dead ends: 172 [2022-04-08 12:36:34,665 INFO L226 Difference]: Without dead ends: 167 [2022-04-08 12:36:34,665 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 161 GetRequests, 144 SyntacticMatches, 1 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 24 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=114, Invalid=192, Unknown=0, NotChecked=0, Total=306 [2022-04-08 12:36:34,665 INFO L913 BasicCegarLoop]: 51 mSDtfsCounter, 76 mSDsluCounter, 152 mSDsCounter, 0 mSdLazyCounter, 79 mSolverCounterSat, 54 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 76 SdHoareTripleChecker+Valid, 203 SdHoareTripleChecker+Invalid, 133 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 54 IncrementalHoareTripleChecker+Valid, 79 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 12:36:34,665 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [76 Valid, 203 Invalid, 133 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [54 Valid, 79 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 12:36:34,666 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 167 states. [2022-04-08 12:36:34,810 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 167 to 161. [2022-04-08 12:36:34,810 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:36:34,810 INFO L82 GeneralOperation]: Start isEquivalent. First operand 167 states. Second operand has 161 states, 117 states have (on average 1.188034188034188) internal successors, (139), 120 states have internal predecessors, (139), 32 states have call successors, (32), 13 states have call predecessors, (32), 11 states have return successors, (30), 27 states have call predecessors, (30), 30 states have call successors, (30) [2022-04-08 12:36:34,810 INFO L74 IsIncluded]: Start isIncluded. First operand 167 states. Second operand has 161 states, 117 states have (on average 1.188034188034188) internal successors, (139), 120 states have internal predecessors, (139), 32 states have call successors, (32), 13 states have call predecessors, (32), 11 states have return successors, (30), 27 states have call predecessors, (30), 30 states have call successors, (30) [2022-04-08 12:36:34,811 INFO L87 Difference]: Start difference. First operand 167 states. Second operand has 161 states, 117 states have (on average 1.188034188034188) internal successors, (139), 120 states have internal predecessors, (139), 32 states have call successors, (32), 13 states have call predecessors, (32), 11 states have return successors, (30), 27 states have call predecessors, (30), 30 states have call successors, (30) [2022-04-08 12:36:34,813 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:34,814 INFO L93 Difference]: Finished difference Result 167 states and 208 transitions. [2022-04-08 12:36:34,814 INFO L276 IsEmpty]: Start isEmpty. Operand 167 states and 208 transitions. [2022-04-08 12:36:34,814 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:34,814 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:34,814 INFO L74 IsIncluded]: Start isIncluded. First operand has 161 states, 117 states have (on average 1.188034188034188) internal successors, (139), 120 states have internal predecessors, (139), 32 states have call successors, (32), 13 states have call predecessors, (32), 11 states have return successors, (30), 27 states have call predecessors, (30), 30 states have call successors, (30) Second operand 167 states. [2022-04-08 12:36:34,814 INFO L87 Difference]: Start difference. First operand has 161 states, 117 states have (on average 1.188034188034188) internal successors, (139), 120 states have internal predecessors, (139), 32 states have call successors, (32), 13 states have call predecessors, (32), 11 states have return successors, (30), 27 states have call predecessors, (30), 30 states have call successors, (30) Second operand 167 states. [2022-04-08 12:36:34,818 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:34,818 INFO L93 Difference]: Finished difference Result 167 states and 208 transitions. [2022-04-08 12:36:34,818 INFO L276 IsEmpty]: Start isEmpty. Operand 167 states and 208 transitions. [2022-04-08 12:36:34,818 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:34,818 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:34,818 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:36:34,818 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:36:34,819 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 161 states, 117 states have (on average 1.188034188034188) internal successors, (139), 120 states have internal predecessors, (139), 32 states have call successors, (32), 13 states have call predecessors, (32), 11 states have return successors, (30), 27 states have call predecessors, (30), 30 states have call successors, (30) [2022-04-08 12:36:34,827 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 161 states to 161 states and 201 transitions. [2022-04-08 12:36:34,828 INFO L78 Accepts]: Start accepts. Automaton has 161 states and 201 transitions. Word has length 79 [2022-04-08 12:36:34,828 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:36:34,828 INFO L478 AbstractCegarLoop]: Abstraction has 161 states and 201 transitions. [2022-04-08 12:36:34,828 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 4.909090909090909) internal successors, (54), 10 states have internal predecessors, (54), 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-08 12:36:34,828 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 161 states and 201 transitions. [2022-04-08 12:36:36,988 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 201 edges. 201 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:36,989 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 201 transitions. [2022-04-08 12:36:36,989 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 82 [2022-04-08 12:36:36,989 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:36:36,989 INFO L499 BasicCegarLoop]: trace histogram [8, 7, 7, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 12:36:37,007 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Forceful destruction successful, exit code 0 [2022-04-08 12:36:37,195 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable20,22 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:36:37,195 INFO L403 AbstractCegarLoop]: === Iteration 22 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:36:37,196 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:36:37,196 INFO L85 PathProgramCache]: Analyzing trace with hash 1693648491, now seen corresponding path program 1 times [2022-04-08 12:36:37,196 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:37,196 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [536891748] [2022-04-08 12:36:37,197 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:36:37,197 INFO L85 PathProgramCache]: Analyzing trace with hash 1693648491, now seen corresponding path program 2 times [2022-04-08 12:36:37,197 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:36:37,197 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1894914057] [2022-04-08 12:36:37,197 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:36:37,197 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:36:37,215 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:36:37,215 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1253047112] [2022-04-08 12:36:37,215 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:36:37,215 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:36:37,215 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:36:37,216 INFO L229 MonitoredProcess]: Starting monitored process 23 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 12:36:37,216 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Waiting until timeout for monitored process [2022-04-08 12:36:37,257 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:36:37,257 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:36:37,258 INFO L263 TraceCheckSpWp]: Trace formula consists of 211 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-08 12:36:37,272 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:36:37,272 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:36:37,601 INFO L272 TraceCheckUtils]: 0: Hoare triple {19378#true} call ULTIMATE.init(); {19378#true} is VALID [2022-04-08 12:36:37,602 INFO L290 TraceCheckUtils]: 1: Hoare triple {19378#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; {19386#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:37,602 INFO L290 TraceCheckUtils]: 2: Hoare triple {19386#(<= ~counter~0 0)} assume true; {19386#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:37,602 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {19386#(<= ~counter~0 0)} {19378#true} #102#return; {19386#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:37,602 INFO L272 TraceCheckUtils]: 4: Hoare triple {19386#(<= ~counter~0 0)} call #t~ret9 := main(); {19386#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:37,603 INFO L290 TraceCheckUtils]: 5: Hoare triple {19386#(<= ~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; {19386#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:37,603 INFO L272 TraceCheckUtils]: 6: Hoare triple {19386#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {19386#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:37,603 INFO L290 TraceCheckUtils]: 7: Hoare triple {19386#(<= ~counter~0 0)} ~cond := #in~cond; {19386#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:37,603 INFO L290 TraceCheckUtils]: 8: Hoare triple {19386#(<= ~counter~0 0)} assume !(0 == ~cond); {19386#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:37,604 INFO L290 TraceCheckUtils]: 9: Hoare triple {19386#(<= ~counter~0 0)} assume true; {19386#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:37,604 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {19386#(<= ~counter~0 0)} {19386#(<= ~counter~0 0)} #90#return; {19386#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:37,604 INFO L272 TraceCheckUtils]: 11: Hoare triple {19386#(<= ~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)); {19386#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:37,605 INFO L290 TraceCheckUtils]: 12: Hoare triple {19386#(<= ~counter~0 0)} ~cond := #in~cond; {19386#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:37,605 INFO L290 TraceCheckUtils]: 13: Hoare triple {19386#(<= ~counter~0 0)} assume !(0 == ~cond); {19386#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:37,605 INFO L290 TraceCheckUtils]: 14: Hoare triple {19386#(<= ~counter~0 0)} assume true; {19386#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:37,605 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {19386#(<= ~counter~0 0)} {19386#(<= ~counter~0 0)} #92#return; {19386#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:37,606 INFO L290 TraceCheckUtils]: 16: Hoare triple {19386#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {19386#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:37,606 INFO L290 TraceCheckUtils]: 17: Hoare triple {19386#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19435#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:37,607 INFO L290 TraceCheckUtils]: 18: Hoare triple {19435#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {19435#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:37,607 INFO L272 TraceCheckUtils]: 19: Hoare triple {19435#(<= ~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)); {19435#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:37,607 INFO L290 TraceCheckUtils]: 20: Hoare triple {19435#(<= ~counter~0 1)} ~cond := #in~cond; {19435#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:37,607 INFO L290 TraceCheckUtils]: 21: Hoare triple {19435#(<= ~counter~0 1)} assume !(0 == ~cond); {19435#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:37,608 INFO L290 TraceCheckUtils]: 22: Hoare triple {19435#(<= ~counter~0 1)} assume true; {19435#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:37,608 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {19435#(<= ~counter~0 1)} {19435#(<= ~counter~0 1)} #94#return; {19435#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:37,608 INFO L290 TraceCheckUtils]: 24: Hoare triple {19435#(<= ~counter~0 1)} assume !!(0 != ~r~0); {19435#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:37,609 INFO L290 TraceCheckUtils]: 25: Hoare triple {19435#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {19460#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:37,609 INFO L290 TraceCheckUtils]: 26: Hoare triple {19460#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {19460#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:37,609 INFO L272 TraceCheckUtils]: 27: Hoare triple {19460#(<= ~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)); {19460#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:37,610 INFO L290 TraceCheckUtils]: 28: Hoare triple {19460#(<= ~counter~0 2)} ~cond := #in~cond; {19460#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:37,610 INFO L290 TraceCheckUtils]: 29: Hoare triple {19460#(<= ~counter~0 2)} assume !(0 == ~cond); {19460#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:37,610 INFO L290 TraceCheckUtils]: 30: Hoare triple {19460#(<= ~counter~0 2)} assume true; {19460#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:37,611 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {19460#(<= ~counter~0 2)} {19460#(<= ~counter~0 2)} #96#return; {19460#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:37,611 INFO L290 TraceCheckUtils]: 32: Hoare triple {19460#(<= ~counter~0 2)} assume !(~r~0 > 0); {19460#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:37,611 INFO L290 TraceCheckUtils]: 33: Hoare triple {19460#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {19485#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:37,611 INFO L290 TraceCheckUtils]: 34: Hoare triple {19485#(<= ~counter~0 3)} assume !!(#t~post8 < 10);havoc #t~post8; {19485#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:37,612 INFO L272 TraceCheckUtils]: 35: Hoare triple {19485#(<= ~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)); {19485#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:37,612 INFO L290 TraceCheckUtils]: 36: Hoare triple {19485#(<= ~counter~0 3)} ~cond := #in~cond; {19485#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:37,612 INFO L290 TraceCheckUtils]: 37: Hoare triple {19485#(<= ~counter~0 3)} assume !(0 == ~cond); {19485#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:37,613 INFO L290 TraceCheckUtils]: 38: Hoare triple {19485#(<= ~counter~0 3)} assume true; {19485#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:37,613 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {19485#(<= ~counter~0 3)} {19485#(<= ~counter~0 3)} #98#return; {19485#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:37,613 INFO L290 TraceCheckUtils]: 40: Hoare triple {19485#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {19485#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:37,614 INFO L290 TraceCheckUtils]: 41: Hoare triple {19485#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {19510#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:37,614 INFO L290 TraceCheckUtils]: 42: Hoare triple {19510#(<= ~counter~0 4)} assume !!(#t~post8 < 10);havoc #t~post8; {19510#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:37,614 INFO L272 TraceCheckUtils]: 43: Hoare triple {19510#(<= ~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)); {19510#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:37,615 INFO L290 TraceCheckUtils]: 44: Hoare triple {19510#(<= ~counter~0 4)} ~cond := #in~cond; {19510#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:37,615 INFO L290 TraceCheckUtils]: 45: Hoare triple {19510#(<= ~counter~0 4)} assume !(0 == ~cond); {19510#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:37,615 INFO L290 TraceCheckUtils]: 46: Hoare triple {19510#(<= ~counter~0 4)} assume true; {19510#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:37,615 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {19510#(<= ~counter~0 4)} {19510#(<= ~counter~0 4)} #98#return; {19510#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:37,616 INFO L290 TraceCheckUtils]: 48: Hoare triple {19510#(<= ~counter~0 4)} assume !(~r~0 < 0); {19510#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:37,616 INFO L290 TraceCheckUtils]: 49: Hoare triple {19510#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19535#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:37,616 INFO L290 TraceCheckUtils]: 50: Hoare triple {19535#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {19535#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:37,617 INFO L272 TraceCheckUtils]: 51: Hoare triple {19535#(<= ~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)); {19535#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:37,617 INFO L290 TraceCheckUtils]: 52: Hoare triple {19535#(<= ~counter~0 5)} ~cond := #in~cond; {19535#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:37,617 INFO L290 TraceCheckUtils]: 53: Hoare triple {19535#(<= ~counter~0 5)} assume !(0 == ~cond); {19535#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:37,618 INFO L290 TraceCheckUtils]: 54: Hoare triple {19535#(<= ~counter~0 5)} assume true; {19535#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:37,618 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {19535#(<= ~counter~0 5)} {19535#(<= ~counter~0 5)} #94#return; {19535#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:37,618 INFO L290 TraceCheckUtils]: 56: Hoare triple {19535#(<= ~counter~0 5)} assume !!(0 != ~r~0); {19535#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:37,619 INFO L290 TraceCheckUtils]: 57: Hoare triple {19535#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {19560#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:37,619 INFO L290 TraceCheckUtils]: 58: Hoare triple {19560#(<= ~counter~0 6)} assume !!(#t~post7 < 10);havoc #t~post7; {19560#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:37,619 INFO L272 TraceCheckUtils]: 59: Hoare triple {19560#(<= ~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)); {19560#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:37,620 INFO L290 TraceCheckUtils]: 60: Hoare triple {19560#(<= ~counter~0 6)} ~cond := #in~cond; {19560#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:37,620 INFO L290 TraceCheckUtils]: 61: Hoare triple {19560#(<= ~counter~0 6)} assume !(0 == ~cond); {19560#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:37,620 INFO L290 TraceCheckUtils]: 62: Hoare triple {19560#(<= ~counter~0 6)} assume true; {19560#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:37,620 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {19560#(<= ~counter~0 6)} {19560#(<= ~counter~0 6)} #96#return; {19560#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:37,621 INFO L290 TraceCheckUtils]: 64: Hoare triple {19560#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {19560#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:37,621 INFO L290 TraceCheckUtils]: 65: Hoare triple {19560#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {19585#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:37,621 INFO L290 TraceCheckUtils]: 66: Hoare triple {19585#(<= ~counter~0 7)} assume !!(#t~post7 < 10);havoc #t~post7; {19585#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:37,622 INFO L272 TraceCheckUtils]: 67: Hoare triple {19585#(<= ~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)); {19585#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:37,622 INFO L290 TraceCheckUtils]: 68: Hoare triple {19585#(<= ~counter~0 7)} ~cond := #in~cond; {19585#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:37,622 INFO L290 TraceCheckUtils]: 69: Hoare triple {19585#(<= ~counter~0 7)} assume !(0 == ~cond); {19585#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:37,623 INFO L290 TraceCheckUtils]: 70: Hoare triple {19585#(<= ~counter~0 7)} assume true; {19585#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:37,623 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {19585#(<= ~counter~0 7)} {19585#(<= ~counter~0 7)} #96#return; {19585#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:37,623 INFO L290 TraceCheckUtils]: 72: Hoare triple {19585#(<= ~counter~0 7)} assume !(~r~0 > 0); {19585#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:37,623 INFO L290 TraceCheckUtils]: 73: Hoare triple {19585#(<= ~counter~0 7)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {19610#(<= |main_#t~post8| 7)} is VALID [2022-04-08 12:36:37,624 INFO L290 TraceCheckUtils]: 74: Hoare triple {19610#(<= |main_#t~post8| 7)} assume !(#t~post8 < 10);havoc #t~post8; {19379#false} is VALID [2022-04-08 12:36:37,624 INFO L290 TraceCheckUtils]: 75: Hoare triple {19379#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19379#false} is VALID [2022-04-08 12:36:37,624 INFO L290 TraceCheckUtils]: 76: Hoare triple {19379#false} assume !(#t~post6 < 10);havoc #t~post6; {19379#false} is VALID [2022-04-08 12:36:37,624 INFO L272 TraceCheckUtils]: 77: Hoare triple {19379#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)); {19379#false} is VALID [2022-04-08 12:36:37,624 INFO L290 TraceCheckUtils]: 78: Hoare triple {19379#false} ~cond := #in~cond; {19379#false} is VALID [2022-04-08 12:36:37,624 INFO L290 TraceCheckUtils]: 79: Hoare triple {19379#false} assume 0 == ~cond; {19379#false} is VALID [2022-04-08 12:36:37,624 INFO L290 TraceCheckUtils]: 80: Hoare triple {19379#false} assume !false; {19379#false} is VALID [2022-04-08 12:36:37,624 INFO L134 CoverageAnalysis]: Checked inductivity of 130 backedges. 18 proven. 108 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 12:36:37,624 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:36:37,961 INFO L290 TraceCheckUtils]: 80: Hoare triple {19379#false} assume !false; {19379#false} is VALID [2022-04-08 12:36:37,961 INFO L290 TraceCheckUtils]: 79: Hoare triple {19379#false} assume 0 == ~cond; {19379#false} is VALID [2022-04-08 12:36:37,961 INFO L290 TraceCheckUtils]: 78: Hoare triple {19379#false} ~cond := #in~cond; {19379#false} is VALID [2022-04-08 12:36:37,961 INFO L272 TraceCheckUtils]: 77: Hoare triple {19379#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)); {19379#false} is VALID [2022-04-08 12:36:37,961 INFO L290 TraceCheckUtils]: 76: Hoare triple {19379#false} assume !(#t~post6 < 10);havoc #t~post6; {19379#false} is VALID [2022-04-08 12:36:37,961 INFO L290 TraceCheckUtils]: 75: Hoare triple {19379#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19379#false} is VALID [2022-04-08 12:36:37,961 INFO L290 TraceCheckUtils]: 74: Hoare triple {19650#(< |main_#t~post8| 10)} assume !(#t~post8 < 10);havoc #t~post8; {19379#false} is VALID [2022-04-08 12:36:37,962 INFO L290 TraceCheckUtils]: 73: Hoare triple {19654#(< ~counter~0 10)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {19650#(< |main_#t~post8| 10)} is VALID [2022-04-08 12:36:37,962 INFO L290 TraceCheckUtils]: 72: Hoare triple {19654#(< ~counter~0 10)} assume !(~r~0 > 0); {19654#(< ~counter~0 10)} is VALID [2022-04-08 12:36:37,962 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {19378#true} {19654#(< ~counter~0 10)} #96#return; {19654#(< ~counter~0 10)} is VALID [2022-04-08 12:36:37,962 INFO L290 TraceCheckUtils]: 70: Hoare triple {19378#true} assume true; {19378#true} is VALID [2022-04-08 12:36:37,963 INFO L290 TraceCheckUtils]: 69: Hoare triple {19378#true} assume !(0 == ~cond); {19378#true} is VALID [2022-04-08 12:36:37,963 INFO L290 TraceCheckUtils]: 68: Hoare triple {19378#true} ~cond := #in~cond; {19378#true} is VALID [2022-04-08 12:36:37,963 INFO L272 TraceCheckUtils]: 67: Hoare triple {19654#(< ~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)); {19378#true} is VALID [2022-04-08 12:36:37,963 INFO L290 TraceCheckUtils]: 66: Hoare triple {19654#(< ~counter~0 10)} assume !!(#t~post7 < 10);havoc #t~post7; {19654#(< ~counter~0 10)} is VALID [2022-04-08 12:36:37,964 INFO L290 TraceCheckUtils]: 65: Hoare triple {19679#(< ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {19654#(< ~counter~0 10)} is VALID [2022-04-08 12:36:37,964 INFO L290 TraceCheckUtils]: 64: Hoare triple {19679#(< ~counter~0 9)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {19679#(< ~counter~0 9)} is VALID [2022-04-08 12:36:37,964 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {19378#true} {19679#(< ~counter~0 9)} #96#return; {19679#(< ~counter~0 9)} is VALID [2022-04-08 12:36:37,964 INFO L290 TraceCheckUtils]: 62: Hoare triple {19378#true} assume true; {19378#true} is VALID [2022-04-08 12:36:37,964 INFO L290 TraceCheckUtils]: 61: Hoare triple {19378#true} assume !(0 == ~cond); {19378#true} is VALID [2022-04-08 12:36:37,964 INFO L290 TraceCheckUtils]: 60: Hoare triple {19378#true} ~cond := #in~cond; {19378#true} is VALID [2022-04-08 12:36:37,965 INFO L272 TraceCheckUtils]: 59: Hoare triple {19679#(< ~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)); {19378#true} is VALID [2022-04-08 12:36:37,965 INFO L290 TraceCheckUtils]: 58: Hoare triple {19679#(< ~counter~0 9)} assume !!(#t~post7 < 10);havoc #t~post7; {19679#(< ~counter~0 9)} is VALID [2022-04-08 12:36:37,965 INFO L290 TraceCheckUtils]: 57: Hoare triple {19585#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {19679#(< ~counter~0 9)} is VALID [2022-04-08 12:36:37,966 INFO L290 TraceCheckUtils]: 56: Hoare triple {19585#(<= ~counter~0 7)} assume !!(0 != ~r~0); {19585#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:37,966 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {19378#true} {19585#(<= ~counter~0 7)} #94#return; {19585#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:37,966 INFO L290 TraceCheckUtils]: 54: Hoare triple {19378#true} assume true; {19378#true} is VALID [2022-04-08 12:36:37,966 INFO L290 TraceCheckUtils]: 53: Hoare triple {19378#true} assume !(0 == ~cond); {19378#true} is VALID [2022-04-08 12:36:37,966 INFO L290 TraceCheckUtils]: 52: Hoare triple {19378#true} ~cond := #in~cond; {19378#true} is VALID [2022-04-08 12:36:37,966 INFO L272 TraceCheckUtils]: 51: Hoare triple {19585#(<= ~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)); {19378#true} is VALID [2022-04-08 12:36:37,967 INFO L290 TraceCheckUtils]: 50: Hoare triple {19585#(<= ~counter~0 7)} assume !!(#t~post6 < 10);havoc #t~post6; {19585#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:37,967 INFO L290 TraceCheckUtils]: 49: Hoare triple {19560#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19585#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:37,967 INFO L290 TraceCheckUtils]: 48: Hoare triple {19560#(<= ~counter~0 6)} assume !(~r~0 < 0); {19560#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:37,968 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {19378#true} {19560#(<= ~counter~0 6)} #98#return; {19560#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:37,968 INFO L290 TraceCheckUtils]: 46: Hoare triple {19378#true} assume true; {19378#true} is VALID [2022-04-08 12:36:37,968 INFO L290 TraceCheckUtils]: 45: Hoare triple {19378#true} assume !(0 == ~cond); {19378#true} is VALID [2022-04-08 12:36:37,968 INFO L290 TraceCheckUtils]: 44: Hoare triple {19378#true} ~cond := #in~cond; {19378#true} is VALID [2022-04-08 12:36:37,968 INFO L272 TraceCheckUtils]: 43: Hoare triple {19560#(<= ~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)); {19378#true} is VALID [2022-04-08 12:36:37,977 INFO L290 TraceCheckUtils]: 42: Hoare triple {19560#(<= ~counter~0 6)} assume !!(#t~post8 < 10);havoc #t~post8; {19560#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:37,977 INFO L290 TraceCheckUtils]: 41: Hoare triple {19535#(<= ~counter~0 5)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {19560#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:37,978 INFO L290 TraceCheckUtils]: 40: Hoare triple {19535#(<= ~counter~0 5)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {19535#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:37,978 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {19378#true} {19535#(<= ~counter~0 5)} #98#return; {19535#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:37,978 INFO L290 TraceCheckUtils]: 38: Hoare triple {19378#true} assume true; {19378#true} is VALID [2022-04-08 12:36:37,978 INFO L290 TraceCheckUtils]: 37: Hoare triple {19378#true} assume !(0 == ~cond); {19378#true} is VALID [2022-04-08 12:36:37,978 INFO L290 TraceCheckUtils]: 36: Hoare triple {19378#true} ~cond := #in~cond; {19378#true} is VALID [2022-04-08 12:36:37,978 INFO L272 TraceCheckUtils]: 35: Hoare triple {19535#(<= ~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)); {19378#true} is VALID [2022-04-08 12:36:37,979 INFO L290 TraceCheckUtils]: 34: Hoare triple {19535#(<= ~counter~0 5)} assume !!(#t~post8 < 10);havoc #t~post8; {19535#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:37,979 INFO L290 TraceCheckUtils]: 33: Hoare triple {19510#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {19535#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:37,979 INFO L290 TraceCheckUtils]: 32: Hoare triple {19510#(<= ~counter~0 4)} assume !(~r~0 > 0); {19510#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:37,980 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {19378#true} {19510#(<= ~counter~0 4)} #96#return; {19510#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:37,980 INFO L290 TraceCheckUtils]: 30: Hoare triple {19378#true} assume true; {19378#true} is VALID [2022-04-08 12:36:37,980 INFO L290 TraceCheckUtils]: 29: Hoare triple {19378#true} assume !(0 == ~cond); {19378#true} is VALID [2022-04-08 12:36:37,980 INFO L290 TraceCheckUtils]: 28: Hoare triple {19378#true} ~cond := #in~cond; {19378#true} is VALID [2022-04-08 12:36:37,980 INFO L272 TraceCheckUtils]: 27: Hoare triple {19510#(<= ~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)); {19378#true} is VALID [2022-04-08 12:36:37,980 INFO L290 TraceCheckUtils]: 26: Hoare triple {19510#(<= ~counter~0 4)} assume !!(#t~post7 < 10);havoc #t~post7; {19510#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:37,981 INFO L290 TraceCheckUtils]: 25: Hoare triple {19485#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {19510#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:37,981 INFO L290 TraceCheckUtils]: 24: Hoare triple {19485#(<= ~counter~0 3)} assume !!(0 != ~r~0); {19485#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:37,981 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {19378#true} {19485#(<= ~counter~0 3)} #94#return; {19485#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:37,981 INFO L290 TraceCheckUtils]: 22: Hoare triple {19378#true} assume true; {19378#true} is VALID [2022-04-08 12:36:37,981 INFO L290 TraceCheckUtils]: 21: Hoare triple {19378#true} assume !(0 == ~cond); {19378#true} is VALID [2022-04-08 12:36:37,981 INFO L290 TraceCheckUtils]: 20: Hoare triple {19378#true} ~cond := #in~cond; {19378#true} is VALID [2022-04-08 12:36:37,982 INFO L272 TraceCheckUtils]: 19: Hoare triple {19485#(<= ~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)); {19378#true} is VALID [2022-04-08 12:36:37,982 INFO L290 TraceCheckUtils]: 18: Hoare triple {19485#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {19485#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:37,982 INFO L290 TraceCheckUtils]: 17: Hoare triple {19460#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19485#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:37,982 INFO L290 TraceCheckUtils]: 16: Hoare triple {19460#(<= ~counter~0 2)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {19460#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:37,983 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {19378#true} {19460#(<= ~counter~0 2)} #92#return; {19460#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:37,983 INFO L290 TraceCheckUtils]: 14: Hoare triple {19378#true} assume true; {19378#true} is VALID [2022-04-08 12:36:37,983 INFO L290 TraceCheckUtils]: 13: Hoare triple {19378#true} assume !(0 == ~cond); {19378#true} is VALID [2022-04-08 12:36:37,983 INFO L290 TraceCheckUtils]: 12: Hoare triple {19378#true} ~cond := #in~cond; {19378#true} is VALID [2022-04-08 12:36:37,983 INFO L272 TraceCheckUtils]: 11: Hoare triple {19460#(<= ~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)); {19378#true} is VALID [2022-04-08 12:36:37,983 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {19378#true} {19460#(<= ~counter~0 2)} #90#return; {19460#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:37,983 INFO L290 TraceCheckUtils]: 9: Hoare triple {19378#true} assume true; {19378#true} is VALID [2022-04-08 12:36:37,983 INFO L290 TraceCheckUtils]: 8: Hoare triple {19378#true} assume !(0 == ~cond); {19378#true} is VALID [2022-04-08 12:36:37,984 INFO L290 TraceCheckUtils]: 7: Hoare triple {19378#true} ~cond := #in~cond; {19378#true} is VALID [2022-04-08 12:36:37,984 INFO L272 TraceCheckUtils]: 6: Hoare triple {19460#(<= ~counter~0 2)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {19378#true} is VALID [2022-04-08 12:36:37,984 INFO L290 TraceCheckUtils]: 5: Hoare triple {19460#(<= ~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; {19460#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:37,984 INFO L272 TraceCheckUtils]: 4: Hoare triple {19460#(<= ~counter~0 2)} call #t~ret9 := main(); {19460#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:37,984 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {19460#(<= ~counter~0 2)} {19378#true} #102#return; {19460#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:37,985 INFO L290 TraceCheckUtils]: 2: Hoare triple {19460#(<= ~counter~0 2)} assume true; {19460#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:37,985 INFO L290 TraceCheckUtils]: 1: Hoare triple {19378#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; {19460#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:37,985 INFO L272 TraceCheckUtils]: 0: Hoare triple {19378#true} call ULTIMATE.init(); {19378#true} is VALID [2022-04-08 12:36:37,985 INFO L134 CoverageAnalysis]: Checked inductivity of 130 backedges. 18 proven. 24 refuted. 0 times theorem prover too weak. 88 trivial. 0 not checked. [2022-04-08 12:36:37,985 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:36:37,985 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1894914057] [2022-04-08 12:36:37,986 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:36:37,986 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1253047112] [2022-04-08 12:36:37,986 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1253047112] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:36:37,986 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:36:37,986 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 14 [2022-04-08 12:36:37,986 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:36:37,986 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [536891748] [2022-04-08 12:36:37,986 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [536891748] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:36:37,986 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:36:37,986 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-08 12:36:37,986 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [276569279] [2022-04-08 12:36:37,986 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:36:37,987 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 5.090909090909091) internal successors, (56), 10 states have internal predecessors, (56), 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 81 [2022-04-08 12:36:37,987 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:36:37,987 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 5.090909090909091) internal successors, (56), 10 states have internal predecessors, (56), 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-08 12:36:38,036 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 78 edges. 78 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:38,036 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-08 12:36:38,036 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:38,036 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-08 12:36:38,036 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-08 12:36:38,037 INFO L87 Difference]: Start difference. First operand 161 states and 201 transitions. Second operand has 11 states, 11 states have (on average 5.090909090909091) internal successors, (56), 10 states have internal predecessors, (56), 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-08 12:36:38,540 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:38,540 INFO L93 Difference]: Finished difference Result 217 states and 280 transitions. [2022-04-08 12:36:38,540 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-08 12:36:38,540 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 5.090909090909091) internal successors, (56), 10 states have internal predecessors, (56), 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 81 [2022-04-08 12:36:38,542 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:36:38,542 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 5.090909090909091) internal successors, (56), 10 states have internal predecessors, (56), 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-08 12:36:38,544 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 177 transitions. [2022-04-08 12:36:38,544 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 5.090909090909091) internal successors, (56), 10 states have internal predecessors, (56), 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-08 12:36:38,546 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 177 transitions. [2022-04-08 12:36:38,546 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 177 transitions. [2022-04-08 12:36:38,674 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 177 edges. 177 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:38,677 INFO L225 Difference]: With dead ends: 217 [2022-04-08 12:36:38,677 INFO L226 Difference]: Without dead ends: 168 [2022-04-08 12:36:38,677 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 166 GetRequests, 148 SyntacticMatches, 1 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 28 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=126, Invalid=216, Unknown=0, NotChecked=0, Total=342 [2022-04-08 12:36:38,677 INFO L913 BasicCegarLoop]: 51 mSDtfsCounter, 85 mSDsluCounter, 152 mSDsCounter, 0 mSdLazyCounter, 75 mSolverCounterSat, 67 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 85 SdHoareTripleChecker+Valid, 203 SdHoareTripleChecker+Invalid, 142 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 67 IncrementalHoareTripleChecker+Valid, 75 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 12:36:38,677 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [85 Valid, 203 Invalid, 142 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [67 Valid, 75 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 12:36:38,678 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 168 states. [2022-04-08 12:36:38,827 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 168 to 164. [2022-04-08 12:36:38,827 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:36:38,827 INFO L82 GeneralOperation]: Start isEquivalent. First operand 168 states. Second operand has 164 states, 120 states have (on average 1.1916666666666667) internal successors, (143), 122 states have internal predecessors, (143), 32 states have call successors, (32), 13 states have call predecessors, (32), 11 states have return successors, (30), 28 states have call predecessors, (30), 30 states have call successors, (30) [2022-04-08 12:36:38,828 INFO L74 IsIncluded]: Start isIncluded. First operand 168 states. Second operand has 164 states, 120 states have (on average 1.1916666666666667) internal successors, (143), 122 states have internal predecessors, (143), 32 states have call successors, (32), 13 states have call predecessors, (32), 11 states have return successors, (30), 28 states have call predecessors, (30), 30 states have call successors, (30) [2022-04-08 12:36:38,828 INFO L87 Difference]: Start difference. First operand 168 states. Second operand has 164 states, 120 states have (on average 1.1916666666666667) internal successors, (143), 122 states have internal predecessors, (143), 32 states have call successors, (32), 13 states have call predecessors, (32), 11 states have return successors, (30), 28 states have call predecessors, (30), 30 states have call successors, (30) [2022-04-08 12:36:38,831 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:38,831 INFO L93 Difference]: Finished difference Result 168 states and 209 transitions. [2022-04-08 12:36:38,831 INFO L276 IsEmpty]: Start isEmpty. Operand 168 states and 209 transitions. [2022-04-08 12:36:38,831 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:38,831 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:38,832 INFO L74 IsIncluded]: Start isIncluded. First operand has 164 states, 120 states have (on average 1.1916666666666667) internal successors, (143), 122 states have internal predecessors, (143), 32 states have call successors, (32), 13 states have call predecessors, (32), 11 states have return successors, (30), 28 states have call predecessors, (30), 30 states have call successors, (30) Second operand 168 states. [2022-04-08 12:36:38,832 INFO L87 Difference]: Start difference. First operand has 164 states, 120 states have (on average 1.1916666666666667) internal successors, (143), 122 states have internal predecessors, (143), 32 states have call successors, (32), 13 states have call predecessors, (32), 11 states have return successors, (30), 28 states have call predecessors, (30), 30 states have call successors, (30) Second operand 168 states. [2022-04-08 12:36:38,834 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:38,834 INFO L93 Difference]: Finished difference Result 168 states and 209 transitions. [2022-04-08 12:36:38,834 INFO L276 IsEmpty]: Start isEmpty. Operand 168 states and 209 transitions. [2022-04-08 12:36:38,834 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:38,834 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:38,834 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:36:38,834 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:36:38,834 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 164 states, 120 states have (on average 1.1916666666666667) internal successors, (143), 122 states have internal predecessors, (143), 32 states have call successors, (32), 13 states have call predecessors, (32), 11 states have return successors, (30), 28 states have call predecessors, (30), 30 states have call successors, (30) [2022-04-08 12:36:38,836 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 164 states to 164 states and 205 transitions. [2022-04-08 12:36:38,837 INFO L78 Accepts]: Start accepts. Automaton has 164 states and 205 transitions. Word has length 81 [2022-04-08 12:36:38,837 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:36:38,837 INFO L478 AbstractCegarLoop]: Abstraction has 164 states and 205 transitions. [2022-04-08 12:36:38,837 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 5.090909090909091) internal successors, (56), 10 states have internal predecessors, (56), 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-08 12:36:38,837 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 164 states and 205 transitions. [2022-04-08 12:36:41,067 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 205 edges. 204 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:41,068 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 205 transitions. [2022-04-08 12:36:41,068 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 84 [2022-04-08 12:36:41,068 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:36:41,068 INFO L499 BasicCegarLoop]: trace histogram [8, 7, 7, 4, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 12:36:41,084 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Forceful destruction successful, exit code 0 [2022-04-08 12:36:41,269 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable21,23 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:36:41,269 INFO L403 AbstractCegarLoop]: === Iteration 23 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:36:41,269 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:36:41,269 INFO L85 PathProgramCache]: Analyzing trace with hash -918360272, now seen corresponding path program 3 times [2022-04-08 12:36:41,269 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:41,269 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1323834506] [2022-04-08 12:36:41,270 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:36:41,270 INFO L85 PathProgramCache]: Analyzing trace with hash -918360272, now seen corresponding path program 4 times [2022-04-08 12:36:41,270 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:36:41,270 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [385889222] [2022-04-08 12:36:41,270 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:36:41,270 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:36:41,279 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:36:41,279 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [547712620] [2022-04-08 12:36:41,279 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 12:36:41,280 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:36:41,280 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:36:41,280 INFO L229 MonitoredProcess]: Starting monitored process 24 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 12:36:41,281 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Waiting until timeout for monitored process [2022-04-08 12:36:41,325 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 12:36:41,325 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:36:41,326 INFO L263 TraceCheckSpWp]: Trace formula consists of 220 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-08 12:36:41,339 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:36:41,340 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:36:41,670 INFO L272 TraceCheckUtils]: 0: Hoare triple {20985#true} call ULTIMATE.init(); {20985#true} is VALID [2022-04-08 12:36:41,670 INFO L290 TraceCheckUtils]: 1: Hoare triple {20985#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; {20993#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:41,670 INFO L290 TraceCheckUtils]: 2: Hoare triple {20993#(<= ~counter~0 0)} assume true; {20993#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:41,671 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {20993#(<= ~counter~0 0)} {20985#true} #102#return; {20993#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:41,671 INFO L272 TraceCheckUtils]: 4: Hoare triple {20993#(<= ~counter~0 0)} call #t~ret9 := main(); {20993#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:41,671 INFO L290 TraceCheckUtils]: 5: Hoare triple {20993#(<= ~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; {20993#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:41,672 INFO L272 TraceCheckUtils]: 6: Hoare triple {20993#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {20993#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:41,672 INFO L290 TraceCheckUtils]: 7: Hoare triple {20993#(<= ~counter~0 0)} ~cond := #in~cond; {20993#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:41,672 INFO L290 TraceCheckUtils]: 8: Hoare triple {20993#(<= ~counter~0 0)} assume !(0 == ~cond); {20993#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:41,672 INFO L290 TraceCheckUtils]: 9: Hoare triple {20993#(<= ~counter~0 0)} assume true; {20993#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:41,673 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {20993#(<= ~counter~0 0)} {20993#(<= ~counter~0 0)} #90#return; {20993#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:41,673 INFO L272 TraceCheckUtils]: 11: Hoare triple {20993#(<= ~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)); {20993#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:41,673 INFO L290 TraceCheckUtils]: 12: Hoare triple {20993#(<= ~counter~0 0)} ~cond := #in~cond; {20993#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:41,673 INFO L290 TraceCheckUtils]: 13: Hoare triple {20993#(<= ~counter~0 0)} assume !(0 == ~cond); {20993#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:41,674 INFO L290 TraceCheckUtils]: 14: Hoare triple {20993#(<= ~counter~0 0)} assume true; {20993#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:41,674 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {20993#(<= ~counter~0 0)} {20993#(<= ~counter~0 0)} #92#return; {20993#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:41,674 INFO L290 TraceCheckUtils]: 16: Hoare triple {20993#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {20993#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:41,675 INFO L290 TraceCheckUtils]: 17: Hoare triple {20993#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21042#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:41,675 INFO L290 TraceCheckUtils]: 18: Hoare triple {21042#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {21042#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:41,676 INFO L272 TraceCheckUtils]: 19: Hoare triple {21042#(<= ~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)); {21042#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:41,676 INFO L290 TraceCheckUtils]: 20: Hoare triple {21042#(<= ~counter~0 1)} ~cond := #in~cond; {21042#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:41,676 INFO L290 TraceCheckUtils]: 21: Hoare triple {21042#(<= ~counter~0 1)} assume !(0 == ~cond); {21042#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:41,676 INFO L290 TraceCheckUtils]: 22: Hoare triple {21042#(<= ~counter~0 1)} assume true; {21042#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:41,677 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {21042#(<= ~counter~0 1)} {21042#(<= ~counter~0 1)} #94#return; {21042#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:41,677 INFO L290 TraceCheckUtils]: 24: Hoare triple {21042#(<= ~counter~0 1)} assume !!(0 != ~r~0); {21042#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:41,677 INFO L290 TraceCheckUtils]: 25: Hoare triple {21042#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21067#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:41,678 INFO L290 TraceCheckUtils]: 26: Hoare triple {21067#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {21067#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:41,678 INFO L272 TraceCheckUtils]: 27: Hoare triple {21067#(<= ~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)); {21067#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:41,678 INFO L290 TraceCheckUtils]: 28: Hoare triple {21067#(<= ~counter~0 2)} ~cond := #in~cond; {21067#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:41,679 INFO L290 TraceCheckUtils]: 29: Hoare triple {21067#(<= ~counter~0 2)} assume !(0 == ~cond); {21067#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:41,679 INFO L290 TraceCheckUtils]: 30: Hoare triple {21067#(<= ~counter~0 2)} assume true; {21067#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:41,679 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {21067#(<= ~counter~0 2)} {21067#(<= ~counter~0 2)} #96#return; {21067#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:41,680 INFO L290 TraceCheckUtils]: 32: Hoare triple {21067#(<= ~counter~0 2)} assume !(~r~0 > 0); {21067#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:41,680 INFO L290 TraceCheckUtils]: 33: Hoare triple {21067#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {21092#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:41,680 INFO L290 TraceCheckUtils]: 34: Hoare triple {21092#(<= ~counter~0 3)} assume !!(#t~post8 < 10);havoc #t~post8; {21092#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:41,681 INFO L272 TraceCheckUtils]: 35: Hoare triple {21092#(<= ~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)); {21092#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:41,681 INFO L290 TraceCheckUtils]: 36: Hoare triple {21092#(<= ~counter~0 3)} ~cond := #in~cond; {21092#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:41,681 INFO L290 TraceCheckUtils]: 37: Hoare triple {21092#(<= ~counter~0 3)} assume !(0 == ~cond); {21092#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:41,681 INFO L290 TraceCheckUtils]: 38: Hoare triple {21092#(<= ~counter~0 3)} assume true; {21092#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:41,682 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {21092#(<= ~counter~0 3)} {21092#(<= ~counter~0 3)} #98#return; {21092#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:41,682 INFO L290 TraceCheckUtils]: 40: Hoare triple {21092#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {21092#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:41,683 INFO L290 TraceCheckUtils]: 41: Hoare triple {21092#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {21117#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:41,683 INFO L290 TraceCheckUtils]: 42: Hoare triple {21117#(<= ~counter~0 4)} assume !!(#t~post8 < 10);havoc #t~post8; {21117#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:41,683 INFO L272 TraceCheckUtils]: 43: Hoare triple {21117#(<= ~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)); {21117#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:41,683 INFO L290 TraceCheckUtils]: 44: Hoare triple {21117#(<= ~counter~0 4)} ~cond := #in~cond; {21117#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:41,684 INFO L290 TraceCheckUtils]: 45: Hoare triple {21117#(<= ~counter~0 4)} assume !(0 == ~cond); {21117#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:41,684 INFO L290 TraceCheckUtils]: 46: Hoare triple {21117#(<= ~counter~0 4)} assume true; {21117#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:41,684 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {21117#(<= ~counter~0 4)} {21117#(<= ~counter~0 4)} #98#return; {21117#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:41,685 INFO L290 TraceCheckUtils]: 48: Hoare triple {21117#(<= ~counter~0 4)} assume !(~r~0 < 0); {21117#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:41,685 INFO L290 TraceCheckUtils]: 49: Hoare triple {21117#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21142#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:41,685 INFO L290 TraceCheckUtils]: 50: Hoare triple {21142#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {21142#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:41,686 INFO L272 TraceCheckUtils]: 51: Hoare triple {21142#(<= ~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)); {21142#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:41,686 INFO L290 TraceCheckUtils]: 52: Hoare triple {21142#(<= ~counter~0 5)} ~cond := #in~cond; {21142#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:41,686 INFO L290 TraceCheckUtils]: 53: Hoare triple {21142#(<= ~counter~0 5)} assume !(0 == ~cond); {21142#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:41,686 INFO L290 TraceCheckUtils]: 54: Hoare triple {21142#(<= ~counter~0 5)} assume true; {21142#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:41,687 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {21142#(<= ~counter~0 5)} {21142#(<= ~counter~0 5)} #94#return; {21142#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:41,687 INFO L290 TraceCheckUtils]: 56: Hoare triple {21142#(<= ~counter~0 5)} assume !!(0 != ~r~0); {21142#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:41,688 INFO L290 TraceCheckUtils]: 57: Hoare triple {21142#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21167#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:41,688 INFO L290 TraceCheckUtils]: 58: Hoare triple {21167#(<= ~counter~0 6)} assume !!(#t~post7 < 10);havoc #t~post7; {21167#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:41,688 INFO L272 TraceCheckUtils]: 59: Hoare triple {21167#(<= ~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)); {21167#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:41,689 INFO L290 TraceCheckUtils]: 60: Hoare triple {21167#(<= ~counter~0 6)} ~cond := #in~cond; {21167#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:41,689 INFO L290 TraceCheckUtils]: 61: Hoare triple {21167#(<= ~counter~0 6)} assume !(0 == ~cond); {21167#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:41,689 INFO L290 TraceCheckUtils]: 62: Hoare triple {21167#(<= ~counter~0 6)} assume true; {21167#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:41,689 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {21167#(<= ~counter~0 6)} {21167#(<= ~counter~0 6)} #96#return; {21167#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:41,690 INFO L290 TraceCheckUtils]: 64: Hoare triple {21167#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {21167#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:41,690 INFO L290 TraceCheckUtils]: 65: Hoare triple {21167#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21192#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:41,690 INFO L290 TraceCheckUtils]: 66: Hoare triple {21192#(<= ~counter~0 7)} assume !!(#t~post7 < 10);havoc #t~post7; {21192#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:41,691 INFO L272 TraceCheckUtils]: 67: Hoare triple {21192#(<= ~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)); {21192#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:41,691 INFO L290 TraceCheckUtils]: 68: Hoare triple {21192#(<= ~counter~0 7)} ~cond := #in~cond; {21192#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:41,691 INFO L290 TraceCheckUtils]: 69: Hoare triple {21192#(<= ~counter~0 7)} assume !(0 == ~cond); {21192#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:41,692 INFO L290 TraceCheckUtils]: 70: Hoare triple {21192#(<= ~counter~0 7)} assume true; {21192#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:41,692 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {21192#(<= ~counter~0 7)} {21192#(<= ~counter~0 7)} #96#return; {21192#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:41,692 INFO L290 TraceCheckUtils]: 72: Hoare triple {21192#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {21192#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:41,693 INFO L290 TraceCheckUtils]: 73: Hoare triple {21192#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21217#(<= |main_#t~post7| 7)} is VALID [2022-04-08 12:36:41,693 INFO L290 TraceCheckUtils]: 74: Hoare triple {21217#(<= |main_#t~post7| 7)} assume !(#t~post7 < 10);havoc #t~post7; {20986#false} is VALID [2022-04-08 12:36:41,693 INFO L290 TraceCheckUtils]: 75: Hoare triple {20986#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {20986#false} is VALID [2022-04-08 12:36:41,693 INFO L290 TraceCheckUtils]: 76: Hoare triple {20986#false} assume !(#t~post8 < 10);havoc #t~post8; {20986#false} is VALID [2022-04-08 12:36:41,693 INFO L290 TraceCheckUtils]: 77: Hoare triple {20986#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20986#false} is VALID [2022-04-08 12:36:41,693 INFO L290 TraceCheckUtils]: 78: Hoare triple {20986#false} assume !(#t~post6 < 10);havoc #t~post6; {20986#false} is VALID [2022-04-08 12:36:41,693 INFO L272 TraceCheckUtils]: 79: Hoare triple {20986#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)); {20986#false} is VALID [2022-04-08 12:36:41,693 INFO L290 TraceCheckUtils]: 80: Hoare triple {20986#false} ~cond := #in~cond; {20986#false} is VALID [2022-04-08 12:36:41,693 INFO L290 TraceCheckUtils]: 81: Hoare triple {20986#false} assume 0 == ~cond; {20986#false} is VALID [2022-04-08 12:36:41,693 INFO L290 TraceCheckUtils]: 82: Hoare triple {20986#false} assume !false; {20986#false} is VALID [2022-04-08 12:36:41,694 INFO L134 CoverageAnalysis]: Checked inductivity of 136 backedges. 22 proven. 110 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 12:36:41,694 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:36:42,032 INFO L290 TraceCheckUtils]: 82: Hoare triple {20986#false} assume !false; {20986#false} is VALID [2022-04-08 12:36:42,033 INFO L290 TraceCheckUtils]: 81: Hoare triple {20986#false} assume 0 == ~cond; {20986#false} is VALID [2022-04-08 12:36:42,033 INFO L290 TraceCheckUtils]: 80: Hoare triple {20986#false} ~cond := #in~cond; {20986#false} is VALID [2022-04-08 12:36:42,033 INFO L272 TraceCheckUtils]: 79: Hoare triple {20986#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)); {20986#false} is VALID [2022-04-08 12:36:42,033 INFO L290 TraceCheckUtils]: 78: Hoare triple {20986#false} assume !(#t~post6 < 10);havoc #t~post6; {20986#false} is VALID [2022-04-08 12:36:42,033 INFO L290 TraceCheckUtils]: 77: Hoare triple {20986#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20986#false} is VALID [2022-04-08 12:36:42,033 INFO L290 TraceCheckUtils]: 76: Hoare triple {20986#false} assume !(#t~post8 < 10);havoc #t~post8; {20986#false} is VALID [2022-04-08 12:36:42,033 INFO L290 TraceCheckUtils]: 75: Hoare triple {20986#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {20986#false} is VALID [2022-04-08 12:36:42,033 INFO L290 TraceCheckUtils]: 74: Hoare triple {21269#(< |main_#t~post7| 10)} assume !(#t~post7 < 10);havoc #t~post7; {20986#false} is VALID [2022-04-08 12:36:42,034 INFO L290 TraceCheckUtils]: 73: Hoare triple {21273#(< ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21269#(< |main_#t~post7| 10)} is VALID [2022-04-08 12:36:42,034 INFO L290 TraceCheckUtils]: 72: Hoare triple {21273#(< ~counter~0 10)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {21273#(< ~counter~0 10)} is VALID [2022-04-08 12:36:42,034 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {20985#true} {21273#(< ~counter~0 10)} #96#return; {21273#(< ~counter~0 10)} is VALID [2022-04-08 12:36:42,034 INFO L290 TraceCheckUtils]: 70: Hoare triple {20985#true} assume true; {20985#true} is VALID [2022-04-08 12:36:42,034 INFO L290 TraceCheckUtils]: 69: Hoare triple {20985#true} assume !(0 == ~cond); {20985#true} is VALID [2022-04-08 12:36:42,034 INFO L290 TraceCheckUtils]: 68: Hoare triple {20985#true} ~cond := #in~cond; {20985#true} is VALID [2022-04-08 12:36:42,034 INFO L272 TraceCheckUtils]: 67: Hoare triple {21273#(< ~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)); {20985#true} is VALID [2022-04-08 12:36:42,035 INFO L290 TraceCheckUtils]: 66: Hoare triple {21273#(< ~counter~0 10)} assume !!(#t~post7 < 10);havoc #t~post7; {21273#(< ~counter~0 10)} is VALID [2022-04-08 12:36:42,035 INFO L290 TraceCheckUtils]: 65: Hoare triple {21298#(< ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21273#(< ~counter~0 10)} is VALID [2022-04-08 12:36:42,036 INFO L290 TraceCheckUtils]: 64: Hoare triple {21298#(< ~counter~0 9)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {21298#(< ~counter~0 9)} is VALID [2022-04-08 12:36:42,036 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {20985#true} {21298#(< ~counter~0 9)} #96#return; {21298#(< ~counter~0 9)} is VALID [2022-04-08 12:36:42,036 INFO L290 TraceCheckUtils]: 62: Hoare triple {20985#true} assume true; {20985#true} is VALID [2022-04-08 12:36:42,036 INFO L290 TraceCheckUtils]: 61: Hoare triple {20985#true} assume !(0 == ~cond); {20985#true} is VALID [2022-04-08 12:36:42,036 INFO L290 TraceCheckUtils]: 60: Hoare triple {20985#true} ~cond := #in~cond; {20985#true} is VALID [2022-04-08 12:36:42,036 INFO L272 TraceCheckUtils]: 59: Hoare triple {21298#(< ~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)); {20985#true} is VALID [2022-04-08 12:36:42,037 INFO L290 TraceCheckUtils]: 58: Hoare triple {21298#(< ~counter~0 9)} assume !!(#t~post7 < 10);havoc #t~post7; {21298#(< ~counter~0 9)} is VALID [2022-04-08 12:36:42,037 INFO L290 TraceCheckUtils]: 57: Hoare triple {21192#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21298#(< ~counter~0 9)} is VALID [2022-04-08 12:36:42,037 INFO L290 TraceCheckUtils]: 56: Hoare triple {21192#(<= ~counter~0 7)} assume !!(0 != ~r~0); {21192#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:42,038 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {20985#true} {21192#(<= ~counter~0 7)} #94#return; {21192#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:42,038 INFO L290 TraceCheckUtils]: 54: Hoare triple {20985#true} assume true; {20985#true} is VALID [2022-04-08 12:36:42,038 INFO L290 TraceCheckUtils]: 53: Hoare triple {20985#true} assume !(0 == ~cond); {20985#true} is VALID [2022-04-08 12:36:42,038 INFO L290 TraceCheckUtils]: 52: Hoare triple {20985#true} ~cond := #in~cond; {20985#true} is VALID [2022-04-08 12:36:42,038 INFO L272 TraceCheckUtils]: 51: Hoare triple {21192#(<= ~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)); {20985#true} is VALID [2022-04-08 12:36:42,038 INFO L290 TraceCheckUtils]: 50: Hoare triple {21192#(<= ~counter~0 7)} assume !!(#t~post6 < 10);havoc #t~post6; {21192#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:42,039 INFO L290 TraceCheckUtils]: 49: Hoare triple {21167#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21192#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:42,039 INFO L290 TraceCheckUtils]: 48: Hoare triple {21167#(<= ~counter~0 6)} assume !(~r~0 < 0); {21167#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:42,039 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {20985#true} {21167#(<= ~counter~0 6)} #98#return; {21167#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:42,039 INFO L290 TraceCheckUtils]: 46: Hoare triple {20985#true} assume true; {20985#true} is VALID [2022-04-08 12:36:42,039 INFO L290 TraceCheckUtils]: 45: Hoare triple {20985#true} assume !(0 == ~cond); {20985#true} is VALID [2022-04-08 12:36:42,039 INFO L290 TraceCheckUtils]: 44: Hoare triple {20985#true} ~cond := #in~cond; {20985#true} is VALID [2022-04-08 12:36:42,040 INFO L272 TraceCheckUtils]: 43: Hoare triple {21167#(<= ~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)); {20985#true} is VALID [2022-04-08 12:36:42,040 INFO L290 TraceCheckUtils]: 42: Hoare triple {21167#(<= ~counter~0 6)} assume !!(#t~post8 < 10);havoc #t~post8; {21167#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:42,040 INFO L290 TraceCheckUtils]: 41: Hoare triple {21142#(<= ~counter~0 5)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {21167#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:42,040 INFO L290 TraceCheckUtils]: 40: Hoare triple {21142#(<= ~counter~0 5)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {21142#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:42,041 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {20985#true} {21142#(<= ~counter~0 5)} #98#return; {21142#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:42,041 INFO L290 TraceCheckUtils]: 38: Hoare triple {20985#true} assume true; {20985#true} is VALID [2022-04-08 12:36:42,041 INFO L290 TraceCheckUtils]: 37: Hoare triple {20985#true} assume !(0 == ~cond); {20985#true} is VALID [2022-04-08 12:36:42,041 INFO L290 TraceCheckUtils]: 36: Hoare triple {20985#true} ~cond := #in~cond; {20985#true} is VALID [2022-04-08 12:36:42,041 INFO L272 TraceCheckUtils]: 35: Hoare triple {21142#(<= ~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)); {20985#true} is VALID [2022-04-08 12:36:42,041 INFO L290 TraceCheckUtils]: 34: Hoare triple {21142#(<= ~counter~0 5)} assume !!(#t~post8 < 10);havoc #t~post8; {21142#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:42,042 INFO L290 TraceCheckUtils]: 33: Hoare triple {21117#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {21142#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:42,042 INFO L290 TraceCheckUtils]: 32: Hoare triple {21117#(<= ~counter~0 4)} assume !(~r~0 > 0); {21117#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:42,043 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {20985#true} {21117#(<= ~counter~0 4)} #96#return; {21117#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:42,043 INFO L290 TraceCheckUtils]: 30: Hoare triple {20985#true} assume true; {20985#true} is VALID [2022-04-08 12:36:42,051 INFO L290 TraceCheckUtils]: 29: Hoare triple {20985#true} assume !(0 == ~cond); {20985#true} is VALID [2022-04-08 12:36:42,051 INFO L290 TraceCheckUtils]: 28: Hoare triple {20985#true} ~cond := #in~cond; {20985#true} is VALID [2022-04-08 12:36:42,051 INFO L272 TraceCheckUtils]: 27: Hoare triple {21117#(<= ~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)); {20985#true} is VALID [2022-04-08 12:36:42,052 INFO L290 TraceCheckUtils]: 26: Hoare triple {21117#(<= ~counter~0 4)} assume !!(#t~post7 < 10);havoc #t~post7; {21117#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:42,053 INFO L290 TraceCheckUtils]: 25: Hoare triple {21092#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21117#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:42,053 INFO L290 TraceCheckUtils]: 24: Hoare triple {21092#(<= ~counter~0 3)} assume !!(0 != ~r~0); {21092#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:42,053 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {20985#true} {21092#(<= ~counter~0 3)} #94#return; {21092#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:42,053 INFO L290 TraceCheckUtils]: 22: Hoare triple {20985#true} assume true; {20985#true} is VALID [2022-04-08 12:36:42,053 INFO L290 TraceCheckUtils]: 21: Hoare triple {20985#true} assume !(0 == ~cond); {20985#true} is VALID [2022-04-08 12:36:42,054 INFO L290 TraceCheckUtils]: 20: Hoare triple {20985#true} ~cond := #in~cond; {20985#true} is VALID [2022-04-08 12:36:42,054 INFO L272 TraceCheckUtils]: 19: Hoare triple {21092#(<= ~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)); {20985#true} is VALID [2022-04-08 12:36:42,054 INFO L290 TraceCheckUtils]: 18: Hoare triple {21092#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {21092#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:42,054 INFO L290 TraceCheckUtils]: 17: Hoare triple {21067#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21092#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:42,055 INFO L290 TraceCheckUtils]: 16: Hoare triple {21067#(<= ~counter~0 2)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {21067#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:42,055 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {20985#true} {21067#(<= ~counter~0 2)} #92#return; {21067#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:42,055 INFO L290 TraceCheckUtils]: 14: Hoare triple {20985#true} assume true; {20985#true} is VALID [2022-04-08 12:36:42,055 INFO L290 TraceCheckUtils]: 13: Hoare triple {20985#true} assume !(0 == ~cond); {20985#true} is VALID [2022-04-08 12:36:42,055 INFO L290 TraceCheckUtils]: 12: Hoare triple {20985#true} ~cond := #in~cond; {20985#true} is VALID [2022-04-08 12:36:42,055 INFO L272 TraceCheckUtils]: 11: Hoare triple {21067#(<= ~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)); {20985#true} is VALID [2022-04-08 12:36:42,055 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {20985#true} {21067#(<= ~counter~0 2)} #90#return; {21067#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:42,056 INFO L290 TraceCheckUtils]: 9: Hoare triple {20985#true} assume true; {20985#true} is VALID [2022-04-08 12:36:42,056 INFO L290 TraceCheckUtils]: 8: Hoare triple {20985#true} assume !(0 == ~cond); {20985#true} is VALID [2022-04-08 12:36:42,056 INFO L290 TraceCheckUtils]: 7: Hoare triple {20985#true} ~cond := #in~cond; {20985#true} is VALID [2022-04-08 12:36:42,056 INFO L272 TraceCheckUtils]: 6: Hoare triple {21067#(<= ~counter~0 2)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {20985#true} is VALID [2022-04-08 12:36:42,056 INFO L290 TraceCheckUtils]: 5: Hoare triple {21067#(<= ~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; {21067#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:42,056 INFO L272 TraceCheckUtils]: 4: Hoare triple {21067#(<= ~counter~0 2)} call #t~ret9 := main(); {21067#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:42,056 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21067#(<= ~counter~0 2)} {20985#true} #102#return; {21067#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:42,057 INFO L290 TraceCheckUtils]: 2: Hoare triple {21067#(<= ~counter~0 2)} assume true; {21067#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:42,057 INFO L290 TraceCheckUtils]: 1: Hoare triple {20985#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; {21067#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:42,057 INFO L272 TraceCheckUtils]: 0: Hoare triple {20985#true} call ULTIMATE.init(); {20985#true} is VALID [2022-04-08 12:36:42,057 INFO L134 CoverageAnalysis]: Checked inductivity of 136 backedges. 22 proven. 26 refuted. 0 times theorem prover too weak. 88 trivial. 0 not checked. [2022-04-08 12:36:42,058 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:36:42,058 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [385889222] [2022-04-08 12:36:42,058 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:36:42,058 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [547712620] [2022-04-08 12:36:42,058 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [547712620] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:36:42,058 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:36:42,058 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 14 [2022-04-08 12:36:42,058 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:36:42,058 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1323834506] [2022-04-08 12:36:42,058 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1323834506] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:36:42,058 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:36:42,058 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-08 12:36:42,058 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [681828616] [2022-04-08 12:36:42,058 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:36:42,059 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 5.2727272727272725) internal successors, (58), 10 states have internal predecessors, (58), 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 83 [2022-04-08 12:36:42,059 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:36:42,059 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 5.2727272727272725) internal successors, (58), 10 states have internal predecessors, (58), 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-08 12:36:42,108 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:42,109 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-08 12:36:42,109 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:42,109 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-08 12:36:42,109 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-08 12:36:42,109 INFO L87 Difference]: Start difference. First operand 164 states and 205 transitions. Second operand has 11 states, 11 states have (on average 5.2727272727272725) internal successors, (58), 10 states have internal predecessors, (58), 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-08 12:36:42,653 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:42,653 INFO L93 Difference]: Finished difference Result 219 states and 283 transitions. [2022-04-08 12:36:42,653 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-04-08 12:36:42,654 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 5.2727272727272725) internal successors, (58), 10 states have internal predecessors, (58), 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 83 [2022-04-08 12:36:42,654 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:36:42,654 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 5.2727272727272725) internal successors, (58), 10 states have internal predecessors, (58), 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-08 12:36:42,655 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 177 transitions. [2022-04-08 12:36:42,655 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 5.2727272727272725) internal successors, (58), 10 states have internal predecessors, (58), 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-08 12:36:42,656 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 177 transitions. [2022-04-08 12:36:42,656 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 17 states and 177 transitions. [2022-04-08 12:36:42,793 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 177 edges. 177 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:42,795 INFO L225 Difference]: With dead ends: 219 [2022-04-08 12:36:42,795 INFO L226 Difference]: Without dead ends: 170 [2022-04-08 12:36:42,795 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 171 GetRequests, 152 SyntacticMatches, 1 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 33 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=143, Invalid=237, Unknown=0, NotChecked=0, Total=380 [2022-04-08 12:36:42,796 INFO L913 BasicCegarLoop]: 51 mSDtfsCounter, 67 mSDsluCounter, 178 mSDsCounter, 0 mSdLazyCounter, 104 mSolverCounterSat, 53 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 67 SdHoareTripleChecker+Valid, 229 SdHoareTripleChecker+Invalid, 157 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 53 IncrementalHoareTripleChecker+Valid, 104 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 12:36:42,796 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [67 Valid, 229 Invalid, 157 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [53 Valid, 104 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 12:36:42,796 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 170 states. [2022-04-08 12:36:42,966 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 170 to 170. [2022-04-08 12:36:42,966 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:36:42,975 INFO L82 GeneralOperation]: Start isEquivalent. First operand 170 states. Second operand has 170 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 126 states have internal predecessors, (149), 32 states have call successors, (32), 13 states have call predecessors, (32), 11 states have return successors, (30), 30 states have call predecessors, (30), 30 states have call successors, (30) [2022-04-08 12:36:42,975 INFO L74 IsIncluded]: Start isIncluded. First operand 170 states. Second operand has 170 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 126 states have internal predecessors, (149), 32 states have call successors, (32), 13 states have call predecessors, (32), 11 states have return successors, (30), 30 states have call predecessors, (30), 30 states have call successors, (30) [2022-04-08 12:36:42,976 INFO L87 Difference]: Start difference. First operand 170 states. Second operand has 170 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 126 states have internal predecessors, (149), 32 states have call successors, (32), 13 states have call predecessors, (32), 11 states have return successors, (30), 30 states have call predecessors, (30), 30 states have call successors, (30) [2022-04-08 12:36:42,978 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:42,978 INFO L93 Difference]: Finished difference Result 170 states and 211 transitions. [2022-04-08 12:36:42,978 INFO L276 IsEmpty]: Start isEmpty. Operand 170 states and 211 transitions. [2022-04-08 12:36:42,982 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:42,982 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:42,982 INFO L74 IsIncluded]: Start isIncluded. First operand has 170 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 126 states have internal predecessors, (149), 32 states have call successors, (32), 13 states have call predecessors, (32), 11 states have return successors, (30), 30 states have call predecessors, (30), 30 states have call successors, (30) Second operand 170 states. [2022-04-08 12:36:42,982 INFO L87 Difference]: Start difference. First operand has 170 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 126 states have internal predecessors, (149), 32 states have call successors, (32), 13 states have call predecessors, (32), 11 states have return successors, (30), 30 states have call predecessors, (30), 30 states have call successors, (30) Second operand 170 states. [2022-04-08 12:36:42,985 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:42,985 INFO L93 Difference]: Finished difference Result 170 states and 211 transitions. [2022-04-08 12:36:42,985 INFO L276 IsEmpty]: Start isEmpty. Operand 170 states and 211 transitions. [2022-04-08 12:36:42,985 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:42,985 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:42,985 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:36:42,985 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:36:42,985 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 170 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 126 states have internal predecessors, (149), 32 states have call successors, (32), 13 states have call predecessors, (32), 11 states have return successors, (30), 30 states have call predecessors, (30), 30 states have call successors, (30) [2022-04-08 12:36:42,987 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 170 states to 170 states and 211 transitions. [2022-04-08 12:36:42,987 INFO L78 Accepts]: Start accepts. Automaton has 170 states and 211 transitions. Word has length 83 [2022-04-08 12:36:42,988 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:36:42,988 INFO L478 AbstractCegarLoop]: Abstraction has 170 states and 211 transitions. [2022-04-08 12:36:42,988 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 5.2727272727272725) internal successors, (58), 10 states have internal predecessors, (58), 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-08 12:36:42,988 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 170 states and 211 transitions. [2022-04-08 12:36:45,208 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 211 edges. 210 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:45,209 INFO L276 IsEmpty]: Start isEmpty. Operand 170 states and 211 transitions. [2022-04-08 12:36:45,209 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 88 [2022-04-08 12:36:45,209 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:36:45,209 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 12:36:45,225 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Forceful destruction successful, exit code 0 [2022-04-08 12:36:45,415 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable22,24 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:36:45,415 INFO L403 AbstractCegarLoop]: === Iteration 24 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:36:45,415 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:36:45,416 INFO L85 PathProgramCache]: Analyzing trace with hash 1698627479, now seen corresponding path program 1 times [2022-04-08 12:36:45,416 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:45,416 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1420037326] [2022-04-08 12:36:45,416 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:36:45,416 INFO L85 PathProgramCache]: Analyzing trace with hash 1698627479, now seen corresponding path program 2 times [2022-04-08 12:36:45,416 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:36:45,416 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [318594260] [2022-04-08 12:36:45,416 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:36:45,416 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:36:45,427 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:36:45,427 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [77706836] [2022-04-08 12:36:45,427 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:36:45,427 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:36:45,427 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:36:45,428 INFO L229 MonitoredProcess]: Starting monitored process 25 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 12:36:45,428 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (25)] Waiting until timeout for monitored process [2022-04-08 12:36:45,471 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:36:45,471 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:36:45,471 INFO L263 TraceCheckSpWp]: Trace formula consists of 221 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-08 12:36:45,486 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:36:45,487 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:36:45,847 INFO L272 TraceCheckUtils]: 0: Hoare triple {22626#true} call ULTIMATE.init(); {22626#true} is VALID [2022-04-08 12:36:45,848 INFO L290 TraceCheckUtils]: 1: Hoare triple {22626#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; {22634#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:45,848 INFO L290 TraceCheckUtils]: 2: Hoare triple {22634#(<= ~counter~0 0)} assume true; {22634#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:45,848 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {22634#(<= ~counter~0 0)} {22626#true} #102#return; {22634#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:45,849 INFO L272 TraceCheckUtils]: 4: Hoare triple {22634#(<= ~counter~0 0)} call #t~ret9 := main(); {22634#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:45,849 INFO L290 TraceCheckUtils]: 5: Hoare triple {22634#(<= ~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; {22634#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:45,849 INFO L272 TraceCheckUtils]: 6: Hoare triple {22634#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {22634#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:45,850 INFO L290 TraceCheckUtils]: 7: Hoare triple {22634#(<= ~counter~0 0)} ~cond := #in~cond; {22634#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:45,850 INFO L290 TraceCheckUtils]: 8: Hoare triple {22634#(<= ~counter~0 0)} assume !(0 == ~cond); {22634#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:45,850 INFO L290 TraceCheckUtils]: 9: Hoare triple {22634#(<= ~counter~0 0)} assume true; {22634#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:45,850 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {22634#(<= ~counter~0 0)} {22634#(<= ~counter~0 0)} #90#return; {22634#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:45,851 INFO L272 TraceCheckUtils]: 11: Hoare triple {22634#(<= ~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)); {22634#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:45,851 INFO L290 TraceCheckUtils]: 12: Hoare triple {22634#(<= ~counter~0 0)} ~cond := #in~cond; {22634#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:45,851 INFO L290 TraceCheckUtils]: 13: Hoare triple {22634#(<= ~counter~0 0)} assume !(0 == ~cond); {22634#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:45,851 INFO L290 TraceCheckUtils]: 14: Hoare triple {22634#(<= ~counter~0 0)} assume true; {22634#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:45,852 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {22634#(<= ~counter~0 0)} {22634#(<= ~counter~0 0)} #92#return; {22634#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:45,852 INFO L290 TraceCheckUtils]: 16: Hoare triple {22634#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {22634#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:45,853 INFO L290 TraceCheckUtils]: 17: Hoare triple {22634#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22683#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:45,853 INFO L290 TraceCheckUtils]: 18: Hoare triple {22683#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {22683#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:45,853 INFO L272 TraceCheckUtils]: 19: Hoare triple {22683#(<= ~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)); {22683#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:45,854 INFO L290 TraceCheckUtils]: 20: Hoare triple {22683#(<= ~counter~0 1)} ~cond := #in~cond; {22683#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:45,854 INFO L290 TraceCheckUtils]: 21: Hoare triple {22683#(<= ~counter~0 1)} assume !(0 == ~cond); {22683#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:45,854 INFO L290 TraceCheckUtils]: 22: Hoare triple {22683#(<= ~counter~0 1)} assume true; {22683#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:45,855 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {22683#(<= ~counter~0 1)} {22683#(<= ~counter~0 1)} #94#return; {22683#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:45,855 INFO L290 TraceCheckUtils]: 24: Hoare triple {22683#(<= ~counter~0 1)} assume !!(0 != ~r~0); {22683#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:45,855 INFO L290 TraceCheckUtils]: 25: Hoare triple {22683#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22708#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:45,856 INFO L290 TraceCheckUtils]: 26: Hoare triple {22708#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {22708#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:45,856 INFO L272 TraceCheckUtils]: 27: Hoare triple {22708#(<= ~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)); {22708#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:45,856 INFO L290 TraceCheckUtils]: 28: Hoare triple {22708#(<= ~counter~0 2)} ~cond := #in~cond; {22708#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:45,857 INFO L290 TraceCheckUtils]: 29: Hoare triple {22708#(<= ~counter~0 2)} assume !(0 == ~cond); {22708#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:45,857 INFO L290 TraceCheckUtils]: 30: Hoare triple {22708#(<= ~counter~0 2)} assume true; {22708#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:45,857 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {22708#(<= ~counter~0 2)} {22708#(<= ~counter~0 2)} #96#return; {22708#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:45,857 INFO L290 TraceCheckUtils]: 32: Hoare triple {22708#(<= ~counter~0 2)} assume !(~r~0 > 0); {22708#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:45,858 INFO L290 TraceCheckUtils]: 33: Hoare triple {22708#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {22733#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:45,858 INFO L290 TraceCheckUtils]: 34: Hoare triple {22733#(<= ~counter~0 3)} assume !!(#t~post8 < 10);havoc #t~post8; {22733#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:45,859 INFO L272 TraceCheckUtils]: 35: Hoare triple {22733#(<= ~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)); {22733#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:45,859 INFO L290 TraceCheckUtils]: 36: Hoare triple {22733#(<= ~counter~0 3)} ~cond := #in~cond; {22733#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:45,859 INFO L290 TraceCheckUtils]: 37: Hoare triple {22733#(<= ~counter~0 3)} assume !(0 == ~cond); {22733#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:45,859 INFO L290 TraceCheckUtils]: 38: Hoare triple {22733#(<= ~counter~0 3)} assume true; {22733#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:45,860 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {22733#(<= ~counter~0 3)} {22733#(<= ~counter~0 3)} #98#return; {22733#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:45,860 INFO L290 TraceCheckUtils]: 40: Hoare triple {22733#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {22733#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:45,860 INFO L290 TraceCheckUtils]: 41: Hoare triple {22733#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {22758#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:45,861 INFO L290 TraceCheckUtils]: 42: Hoare triple {22758#(<= ~counter~0 4)} assume !!(#t~post8 < 10);havoc #t~post8; {22758#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:45,861 INFO L272 TraceCheckUtils]: 43: Hoare triple {22758#(<= ~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)); {22758#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:45,861 INFO L290 TraceCheckUtils]: 44: Hoare triple {22758#(<= ~counter~0 4)} ~cond := #in~cond; {22758#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:45,862 INFO L290 TraceCheckUtils]: 45: Hoare triple {22758#(<= ~counter~0 4)} assume !(0 == ~cond); {22758#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:45,862 INFO L290 TraceCheckUtils]: 46: Hoare triple {22758#(<= ~counter~0 4)} assume true; {22758#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:45,862 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {22758#(<= ~counter~0 4)} {22758#(<= ~counter~0 4)} #98#return; {22758#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:45,863 INFO L290 TraceCheckUtils]: 48: Hoare triple {22758#(<= ~counter~0 4)} assume !(~r~0 < 0); {22758#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:45,863 INFO L290 TraceCheckUtils]: 49: Hoare triple {22758#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22783#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:45,863 INFO L290 TraceCheckUtils]: 50: Hoare triple {22783#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {22783#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:45,864 INFO L272 TraceCheckUtils]: 51: Hoare triple {22783#(<= ~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)); {22783#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:45,864 INFO L290 TraceCheckUtils]: 52: Hoare triple {22783#(<= ~counter~0 5)} ~cond := #in~cond; {22783#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:45,864 INFO L290 TraceCheckUtils]: 53: Hoare triple {22783#(<= ~counter~0 5)} assume !(0 == ~cond); {22783#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:45,864 INFO L290 TraceCheckUtils]: 54: Hoare triple {22783#(<= ~counter~0 5)} assume true; {22783#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:45,865 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {22783#(<= ~counter~0 5)} {22783#(<= ~counter~0 5)} #94#return; {22783#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:45,865 INFO L290 TraceCheckUtils]: 56: Hoare triple {22783#(<= ~counter~0 5)} assume !!(0 != ~r~0); {22783#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:45,866 INFO L290 TraceCheckUtils]: 57: Hoare triple {22783#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22808#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:45,866 INFO L290 TraceCheckUtils]: 58: Hoare triple {22808#(<= ~counter~0 6)} assume !!(#t~post7 < 10);havoc #t~post7; {22808#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:45,866 INFO L272 TraceCheckUtils]: 59: Hoare triple {22808#(<= ~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)); {22808#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:45,866 INFO L290 TraceCheckUtils]: 60: Hoare triple {22808#(<= ~counter~0 6)} ~cond := #in~cond; {22808#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:45,867 INFO L290 TraceCheckUtils]: 61: Hoare triple {22808#(<= ~counter~0 6)} assume !(0 == ~cond); {22808#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:45,867 INFO L290 TraceCheckUtils]: 62: Hoare triple {22808#(<= ~counter~0 6)} assume true; {22808#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:45,867 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {22808#(<= ~counter~0 6)} {22808#(<= ~counter~0 6)} #96#return; {22808#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:45,868 INFO L290 TraceCheckUtils]: 64: Hoare triple {22808#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {22808#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:45,868 INFO L290 TraceCheckUtils]: 65: Hoare triple {22808#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22833#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:45,868 INFO L290 TraceCheckUtils]: 66: Hoare triple {22833#(<= ~counter~0 7)} assume !!(#t~post7 < 10);havoc #t~post7; {22833#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:45,869 INFO L272 TraceCheckUtils]: 67: Hoare triple {22833#(<= ~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)); {22833#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:45,869 INFO L290 TraceCheckUtils]: 68: Hoare triple {22833#(<= ~counter~0 7)} ~cond := #in~cond; {22833#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:45,869 INFO L290 TraceCheckUtils]: 69: Hoare triple {22833#(<= ~counter~0 7)} assume !(0 == ~cond); {22833#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:45,869 INFO L290 TraceCheckUtils]: 70: Hoare triple {22833#(<= ~counter~0 7)} assume true; {22833#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:45,870 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {22833#(<= ~counter~0 7)} {22833#(<= ~counter~0 7)} #96#return; {22833#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:45,870 INFO L290 TraceCheckUtils]: 72: Hoare triple {22833#(<= ~counter~0 7)} assume !(~r~0 > 0); {22833#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:45,871 INFO L290 TraceCheckUtils]: 73: Hoare triple {22833#(<= ~counter~0 7)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {22858#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:45,871 INFO L290 TraceCheckUtils]: 74: Hoare triple {22858#(<= ~counter~0 8)} assume !!(#t~post8 < 10);havoc #t~post8; {22858#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:45,871 INFO L272 TraceCheckUtils]: 75: Hoare triple {22858#(<= ~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)); {22858#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:45,872 INFO L290 TraceCheckUtils]: 76: Hoare triple {22858#(<= ~counter~0 8)} ~cond := #in~cond; {22858#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:45,872 INFO L290 TraceCheckUtils]: 77: Hoare triple {22858#(<= ~counter~0 8)} assume !(0 == ~cond); {22858#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:45,872 INFO L290 TraceCheckUtils]: 78: Hoare triple {22858#(<= ~counter~0 8)} assume true; {22858#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:45,872 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {22858#(<= ~counter~0 8)} {22858#(<= ~counter~0 8)} #98#return; {22858#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:45,873 INFO L290 TraceCheckUtils]: 80: Hoare triple {22858#(<= ~counter~0 8)} assume !(~r~0 < 0); {22858#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:45,873 INFO L290 TraceCheckUtils]: 81: Hoare triple {22858#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22883#(<= |main_#t~post6| 8)} is VALID [2022-04-08 12:36:45,873 INFO L290 TraceCheckUtils]: 82: Hoare triple {22883#(<= |main_#t~post6| 8)} assume !(#t~post6 < 10);havoc #t~post6; {22627#false} is VALID [2022-04-08 12:36:45,873 INFO L272 TraceCheckUtils]: 83: Hoare triple {22627#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)); {22627#false} is VALID [2022-04-08 12:36:45,873 INFO L290 TraceCheckUtils]: 84: Hoare triple {22627#false} ~cond := #in~cond; {22627#false} is VALID [2022-04-08 12:36:45,874 INFO L290 TraceCheckUtils]: 85: Hoare triple {22627#false} assume 0 == ~cond; {22627#false} is VALID [2022-04-08 12:36:45,874 INFO L290 TraceCheckUtils]: 86: Hoare triple {22627#false} assume !false; {22627#false} is VALID [2022-04-08 12:36:45,874 INFO L134 CoverageAnalysis]: Checked inductivity of 164 backedges. 16 proven. 144 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 12:36:45,874 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:36:46,227 INFO L290 TraceCheckUtils]: 86: Hoare triple {22627#false} assume !false; {22627#false} is VALID [2022-04-08 12:36:46,227 INFO L290 TraceCheckUtils]: 85: Hoare triple {22627#false} assume 0 == ~cond; {22627#false} is VALID [2022-04-08 12:36:46,227 INFO L290 TraceCheckUtils]: 84: Hoare triple {22627#false} ~cond := #in~cond; {22627#false} is VALID [2022-04-08 12:36:46,227 INFO L272 TraceCheckUtils]: 83: Hoare triple {22627#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)); {22627#false} is VALID [2022-04-08 12:36:46,227 INFO L290 TraceCheckUtils]: 82: Hoare triple {22911#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {22627#false} is VALID [2022-04-08 12:36:46,228 INFO L290 TraceCheckUtils]: 81: Hoare triple {22915#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22911#(< |main_#t~post6| 10)} is VALID [2022-04-08 12:36:46,228 INFO L290 TraceCheckUtils]: 80: Hoare triple {22915#(< ~counter~0 10)} assume !(~r~0 < 0); {22915#(< ~counter~0 10)} is VALID [2022-04-08 12:36:46,228 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {22626#true} {22915#(< ~counter~0 10)} #98#return; {22915#(< ~counter~0 10)} is VALID [2022-04-08 12:36:46,228 INFO L290 TraceCheckUtils]: 78: Hoare triple {22626#true} assume true; {22626#true} is VALID [2022-04-08 12:36:46,228 INFO L290 TraceCheckUtils]: 77: Hoare triple {22626#true} assume !(0 == ~cond); {22626#true} is VALID [2022-04-08 12:36:46,228 INFO L290 TraceCheckUtils]: 76: Hoare triple {22626#true} ~cond := #in~cond; {22626#true} is VALID [2022-04-08 12:36:46,228 INFO L272 TraceCheckUtils]: 75: Hoare triple {22915#(< ~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)); {22626#true} is VALID [2022-04-08 12:36:46,229 INFO L290 TraceCheckUtils]: 74: Hoare triple {22915#(< ~counter~0 10)} assume !!(#t~post8 < 10);havoc #t~post8; {22915#(< ~counter~0 10)} is VALID [2022-04-08 12:36:46,229 INFO L290 TraceCheckUtils]: 73: Hoare triple {22858#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {22915#(< ~counter~0 10)} is VALID [2022-04-08 12:36:46,230 INFO L290 TraceCheckUtils]: 72: Hoare triple {22858#(<= ~counter~0 8)} assume !(~r~0 > 0); {22858#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:46,230 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {22626#true} {22858#(<= ~counter~0 8)} #96#return; {22858#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:46,230 INFO L290 TraceCheckUtils]: 70: Hoare triple {22626#true} assume true; {22626#true} is VALID [2022-04-08 12:36:46,230 INFO L290 TraceCheckUtils]: 69: Hoare triple {22626#true} assume !(0 == ~cond); {22626#true} is VALID [2022-04-08 12:36:46,230 INFO L290 TraceCheckUtils]: 68: Hoare triple {22626#true} ~cond := #in~cond; {22626#true} is VALID [2022-04-08 12:36:46,230 INFO L272 TraceCheckUtils]: 67: Hoare triple {22858#(<= ~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)); {22626#true} is VALID [2022-04-08 12:36:46,231 INFO L290 TraceCheckUtils]: 66: Hoare triple {22858#(<= ~counter~0 8)} assume !!(#t~post7 < 10);havoc #t~post7; {22858#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:46,231 INFO L290 TraceCheckUtils]: 65: Hoare triple {22833#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22858#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:46,231 INFO L290 TraceCheckUtils]: 64: Hoare triple {22833#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {22833#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:46,232 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {22626#true} {22833#(<= ~counter~0 7)} #96#return; {22833#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:46,232 INFO L290 TraceCheckUtils]: 62: Hoare triple {22626#true} assume true; {22626#true} is VALID [2022-04-08 12:36:46,232 INFO L290 TraceCheckUtils]: 61: Hoare triple {22626#true} assume !(0 == ~cond); {22626#true} is VALID [2022-04-08 12:36:46,232 INFO L290 TraceCheckUtils]: 60: Hoare triple {22626#true} ~cond := #in~cond; {22626#true} is VALID [2022-04-08 12:36:46,232 INFO L272 TraceCheckUtils]: 59: Hoare triple {22833#(<= ~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)); {22626#true} is VALID [2022-04-08 12:36:46,248 INFO L290 TraceCheckUtils]: 58: Hoare triple {22833#(<= ~counter~0 7)} assume !!(#t~post7 < 10);havoc #t~post7; {22833#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:46,248 INFO L290 TraceCheckUtils]: 57: Hoare triple {22808#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22833#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:46,248 INFO L290 TraceCheckUtils]: 56: Hoare triple {22808#(<= ~counter~0 6)} assume !!(0 != ~r~0); {22808#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:46,249 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {22626#true} {22808#(<= ~counter~0 6)} #94#return; {22808#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:46,249 INFO L290 TraceCheckUtils]: 54: Hoare triple {22626#true} assume true; {22626#true} is VALID [2022-04-08 12:36:46,249 INFO L290 TraceCheckUtils]: 53: Hoare triple {22626#true} assume !(0 == ~cond); {22626#true} is VALID [2022-04-08 12:36:46,249 INFO L290 TraceCheckUtils]: 52: Hoare triple {22626#true} ~cond := #in~cond; {22626#true} is VALID [2022-04-08 12:36:46,249 INFO L272 TraceCheckUtils]: 51: Hoare triple {22808#(<= ~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)); {22626#true} is VALID [2022-04-08 12:36:46,249 INFO L290 TraceCheckUtils]: 50: Hoare triple {22808#(<= ~counter~0 6)} assume !!(#t~post6 < 10);havoc #t~post6; {22808#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:46,250 INFO L290 TraceCheckUtils]: 49: Hoare triple {22783#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22808#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:46,250 INFO L290 TraceCheckUtils]: 48: Hoare triple {22783#(<= ~counter~0 5)} assume !(~r~0 < 0); {22783#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:46,251 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {22626#true} {22783#(<= ~counter~0 5)} #98#return; {22783#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:46,251 INFO L290 TraceCheckUtils]: 46: Hoare triple {22626#true} assume true; {22626#true} is VALID [2022-04-08 12:36:46,251 INFO L290 TraceCheckUtils]: 45: Hoare triple {22626#true} assume !(0 == ~cond); {22626#true} is VALID [2022-04-08 12:36:46,251 INFO L290 TraceCheckUtils]: 44: Hoare triple {22626#true} ~cond := #in~cond; {22626#true} is VALID [2022-04-08 12:36:46,251 INFO L272 TraceCheckUtils]: 43: Hoare triple {22783#(<= ~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)); {22626#true} is VALID [2022-04-08 12:36:46,251 INFO L290 TraceCheckUtils]: 42: Hoare triple {22783#(<= ~counter~0 5)} assume !!(#t~post8 < 10);havoc #t~post8; {22783#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:46,252 INFO L290 TraceCheckUtils]: 41: Hoare triple {22758#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {22783#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:46,252 INFO L290 TraceCheckUtils]: 40: Hoare triple {22758#(<= ~counter~0 4)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {22758#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:46,252 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {22626#true} {22758#(<= ~counter~0 4)} #98#return; {22758#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:46,252 INFO L290 TraceCheckUtils]: 38: Hoare triple {22626#true} assume true; {22626#true} is VALID [2022-04-08 12:36:46,252 INFO L290 TraceCheckUtils]: 37: Hoare triple {22626#true} assume !(0 == ~cond); {22626#true} is VALID [2022-04-08 12:36:46,252 INFO L290 TraceCheckUtils]: 36: Hoare triple {22626#true} ~cond := #in~cond; {22626#true} is VALID [2022-04-08 12:36:46,252 INFO L272 TraceCheckUtils]: 35: Hoare triple {22758#(<= ~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)); {22626#true} is VALID [2022-04-08 12:36:46,253 INFO L290 TraceCheckUtils]: 34: Hoare triple {22758#(<= ~counter~0 4)} assume !!(#t~post8 < 10);havoc #t~post8; {22758#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:46,253 INFO L290 TraceCheckUtils]: 33: Hoare triple {22733#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {22758#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:46,253 INFO L290 TraceCheckUtils]: 32: Hoare triple {22733#(<= ~counter~0 3)} assume !(~r~0 > 0); {22733#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:46,254 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {22626#true} {22733#(<= ~counter~0 3)} #96#return; {22733#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:46,254 INFO L290 TraceCheckUtils]: 30: Hoare triple {22626#true} assume true; {22626#true} is VALID [2022-04-08 12:36:46,254 INFO L290 TraceCheckUtils]: 29: Hoare triple {22626#true} assume !(0 == ~cond); {22626#true} is VALID [2022-04-08 12:36:46,254 INFO L290 TraceCheckUtils]: 28: Hoare triple {22626#true} ~cond := #in~cond; {22626#true} is VALID [2022-04-08 12:36:46,254 INFO L272 TraceCheckUtils]: 27: Hoare triple {22733#(<= ~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)); {22626#true} is VALID [2022-04-08 12:36:46,254 INFO L290 TraceCheckUtils]: 26: Hoare triple {22733#(<= ~counter~0 3)} assume !!(#t~post7 < 10);havoc #t~post7; {22733#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:46,255 INFO L290 TraceCheckUtils]: 25: Hoare triple {22708#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22733#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:46,255 INFO L290 TraceCheckUtils]: 24: Hoare triple {22708#(<= ~counter~0 2)} assume !!(0 != ~r~0); {22708#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:46,255 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {22626#true} {22708#(<= ~counter~0 2)} #94#return; {22708#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:46,255 INFO L290 TraceCheckUtils]: 22: Hoare triple {22626#true} assume true; {22626#true} is VALID [2022-04-08 12:36:46,256 INFO L290 TraceCheckUtils]: 21: Hoare triple {22626#true} assume !(0 == ~cond); {22626#true} is VALID [2022-04-08 12:36:46,256 INFO L290 TraceCheckUtils]: 20: Hoare triple {22626#true} ~cond := #in~cond; {22626#true} is VALID [2022-04-08 12:36:46,256 INFO L272 TraceCheckUtils]: 19: Hoare triple {22708#(<= ~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)); {22626#true} is VALID [2022-04-08 12:36:46,256 INFO L290 TraceCheckUtils]: 18: Hoare triple {22708#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {22708#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:46,256 INFO L290 TraceCheckUtils]: 17: Hoare triple {22683#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22708#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:46,257 INFO L290 TraceCheckUtils]: 16: Hoare triple {22683#(<= ~counter~0 1)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {22683#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:46,257 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {22626#true} {22683#(<= ~counter~0 1)} #92#return; {22683#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:46,257 INFO L290 TraceCheckUtils]: 14: Hoare triple {22626#true} assume true; {22626#true} is VALID [2022-04-08 12:36:46,257 INFO L290 TraceCheckUtils]: 13: Hoare triple {22626#true} assume !(0 == ~cond); {22626#true} is VALID [2022-04-08 12:36:46,257 INFO L290 TraceCheckUtils]: 12: Hoare triple {22626#true} ~cond := #in~cond; {22626#true} is VALID [2022-04-08 12:36:46,257 INFO L272 TraceCheckUtils]: 11: Hoare triple {22683#(<= ~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)); {22626#true} is VALID [2022-04-08 12:36:46,258 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {22626#true} {22683#(<= ~counter~0 1)} #90#return; {22683#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:46,258 INFO L290 TraceCheckUtils]: 9: Hoare triple {22626#true} assume true; {22626#true} is VALID [2022-04-08 12:36:46,258 INFO L290 TraceCheckUtils]: 8: Hoare triple {22626#true} assume !(0 == ~cond); {22626#true} is VALID [2022-04-08 12:36:46,258 INFO L290 TraceCheckUtils]: 7: Hoare triple {22626#true} ~cond := #in~cond; {22626#true} is VALID [2022-04-08 12:36:46,258 INFO L272 TraceCheckUtils]: 6: Hoare triple {22683#(<= ~counter~0 1)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {22626#true} is VALID [2022-04-08 12:36:46,258 INFO L290 TraceCheckUtils]: 5: Hoare triple {22683#(<= ~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; {22683#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:46,258 INFO L272 TraceCheckUtils]: 4: Hoare triple {22683#(<= ~counter~0 1)} call #t~ret9 := main(); {22683#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:46,259 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {22683#(<= ~counter~0 1)} {22626#true} #102#return; {22683#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:46,259 INFO L290 TraceCheckUtils]: 2: Hoare triple {22683#(<= ~counter~0 1)} assume true; {22683#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:46,259 INFO L290 TraceCheckUtils]: 1: Hoare triple {22626#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; {22683#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:46,259 INFO L272 TraceCheckUtils]: 0: Hoare triple {22626#true} call ULTIMATE.init(); {22626#true} is VALID [2022-04-08 12:36:46,259 INFO L134 CoverageAnalysis]: Checked inductivity of 164 backedges. 16 proven. 32 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-08 12:36:46,260 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:36:46,260 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [318594260] [2022-04-08 12:36:46,260 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:36:46,260 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [77706836] [2022-04-08 12:36:46,260 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [77706836] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:36:46,260 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:36:46,260 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 14 [2022-04-08 12:36:46,260 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:36:46,260 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1420037326] [2022-04-08 12:36:46,260 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1420037326] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:36:46,260 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:36:46,260 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-08 12:36:46,260 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1724974406] [2022-04-08 12:36:46,260 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:36:46,261 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 5.0) internal successors, (60), 11 states have internal predecessors, (60), 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 87 [2022-04-08 12:36:46,261 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:36:46,261 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 5.0) internal successors, (60), 11 states have internal predecessors, (60), 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-08 12:36:46,312 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 84 edges. 84 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:46,312 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-08 12:36:46,312 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:46,313 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-08 12:36:46,313 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-08 12:36:46,313 INFO L87 Difference]: Start difference. First operand 170 states and 211 transitions. Second operand has 12 states, 12 states have (on average 5.0) internal successors, (60), 11 states have internal predecessors, (60), 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-08 12:36:46,944 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:46,944 INFO L93 Difference]: Finished difference Result 192 states and 238 transitions. [2022-04-08 12:36:46,944 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-04-08 12:36:46,944 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 5.0) internal successors, (60), 11 states have internal predecessors, (60), 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 87 [2022-04-08 12:36:46,944 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:36:46,944 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 5.0) internal successors, (60), 11 states have internal predecessors, (60), 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-08 12:36:46,945 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 175 transitions. [2022-04-08 12:36:46,946 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 5.0) internal successors, (60), 11 states have internal predecessors, (60), 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-08 12:36:46,947 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 175 transitions. [2022-04-08 12:36:46,947 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 17 states and 175 transitions. [2022-04-08 12:36:47,077 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 175 edges. 175 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:47,080 INFO L225 Difference]: With dead ends: 192 [2022-04-08 12:36:47,080 INFO L226 Difference]: Without dead ends: 187 [2022-04-08 12:36:47,080 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 178 GetRequests, 160 SyntacticMatches, 1 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 28 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=124, Invalid=218, Unknown=0, NotChecked=0, Total=342 [2022-04-08 12:36:47,080 INFO L913 BasicCegarLoop]: 54 mSDtfsCounter, 92 mSDsluCounter, 156 mSDsCounter, 0 mSdLazyCounter, 109 mSolverCounterSat, 72 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 92 SdHoareTripleChecker+Valid, 210 SdHoareTripleChecker+Invalid, 181 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 72 IncrementalHoareTripleChecker+Valid, 109 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 12:36:47,080 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [92 Valid, 210 Invalid, 181 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [72 Valid, 109 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 12:36:47,081 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 187 states. [2022-04-08 12:36:47,253 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 187 to 181. [2022-04-08 12:36:47,253 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:36:47,253 INFO L82 GeneralOperation]: Start isEquivalent. First operand 187 states. Second operand has 181 states, 132 states have (on average 1.1818181818181819) internal successors, (156), 135 states have internal predecessors, (156), 36 states have call successors, (36), 14 states have call predecessors, (36), 12 states have return successors, (34), 31 states have call predecessors, (34), 34 states have call successors, (34) [2022-04-08 12:36:47,253 INFO L74 IsIncluded]: Start isIncluded. First operand 187 states. Second operand has 181 states, 132 states have (on average 1.1818181818181819) internal successors, (156), 135 states have internal predecessors, (156), 36 states have call successors, (36), 14 states have call predecessors, (36), 12 states have return successors, (34), 31 states have call predecessors, (34), 34 states have call successors, (34) [2022-04-08 12:36:47,254 INFO L87 Difference]: Start difference. First operand 187 states. Second operand has 181 states, 132 states have (on average 1.1818181818181819) internal successors, (156), 135 states have internal predecessors, (156), 36 states have call successors, (36), 14 states have call predecessors, (36), 12 states have return successors, (34), 31 states have call predecessors, (34), 34 states have call successors, (34) [2022-04-08 12:36:47,261 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:47,261 INFO L93 Difference]: Finished difference Result 187 states and 233 transitions. [2022-04-08 12:36:47,261 INFO L276 IsEmpty]: Start isEmpty. Operand 187 states and 233 transitions. [2022-04-08 12:36:47,261 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:47,261 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:47,261 INFO L74 IsIncluded]: Start isIncluded. First operand has 181 states, 132 states have (on average 1.1818181818181819) internal successors, (156), 135 states have internal predecessors, (156), 36 states have call successors, (36), 14 states have call predecessors, (36), 12 states have return successors, (34), 31 states have call predecessors, (34), 34 states have call successors, (34) Second operand 187 states. [2022-04-08 12:36:47,262 INFO L87 Difference]: Start difference. First operand has 181 states, 132 states have (on average 1.1818181818181819) internal successors, (156), 135 states have internal predecessors, (156), 36 states have call successors, (36), 14 states have call predecessors, (36), 12 states have return successors, (34), 31 states have call predecessors, (34), 34 states have call successors, (34) Second operand 187 states. [2022-04-08 12:36:47,264 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:47,264 INFO L93 Difference]: Finished difference Result 187 states and 233 transitions. [2022-04-08 12:36:47,264 INFO L276 IsEmpty]: Start isEmpty. Operand 187 states and 233 transitions. [2022-04-08 12:36:47,264 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:47,264 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:47,264 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:36:47,264 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:36:47,265 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 181 states, 132 states have (on average 1.1818181818181819) internal successors, (156), 135 states have internal predecessors, (156), 36 states have call successors, (36), 14 states have call predecessors, (36), 12 states have return successors, (34), 31 states have call predecessors, (34), 34 states have call successors, (34) [2022-04-08 12:36:47,267 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 181 states to 181 states and 226 transitions. [2022-04-08 12:36:47,267 INFO L78 Accepts]: Start accepts. Automaton has 181 states and 226 transitions. Word has length 87 [2022-04-08 12:36:47,267 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:36:47,267 INFO L478 AbstractCegarLoop]: Abstraction has 181 states and 226 transitions. [2022-04-08 12:36:47,267 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 5.0) internal successors, (60), 11 states have internal predecessors, (60), 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-08 12:36:47,267 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 181 states and 226 transitions. [2022-04-08 12:36:48,560 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 226 edges. 226 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:48,560 INFO L276 IsEmpty]: Start isEmpty. Operand 181 states and 226 transitions. [2022-04-08 12:36:48,561 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 90 [2022-04-08 12:36:48,561 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:36:48,561 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 4, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 12:36:48,580 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (25)] Ended with exit code 0 [2022-04-08 12:36:48,777 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable23,25 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:36:48,777 INFO L403 AbstractCegarLoop]: === Iteration 25 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:36:48,777 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:36:48,777 INFO L85 PathProgramCache]: Analyzing trace with hash 2133755932, now seen corresponding path program 3 times [2022-04-08 12:36:48,777 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:48,777 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1868587632] [2022-04-08 12:36:48,778 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:36:48,778 INFO L85 PathProgramCache]: Analyzing trace with hash 2133755932, now seen corresponding path program 4 times [2022-04-08 12:36:48,778 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:36:48,778 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2077658756] [2022-04-08 12:36:48,778 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:36:48,778 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:36:48,787 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:36:48,787 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [422277122] [2022-04-08 12:36:48,787 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 12:36:48,787 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:36:48,787 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:36:48,794 INFO L229 MonitoredProcess]: Starting monitored process 26 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 12:36:48,801 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (26)] Waiting until timeout for monitored process [2022-04-08 12:36:48,842 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 12:36:48,842 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:36:48,843 INFO L263 TraceCheckSpWp]: Trace formula consists of 197 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-08 12:36:48,853 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:36:48,854 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:36:49,044 INFO L272 TraceCheckUtils]: 0: Hoare triple {24291#true} call ULTIMATE.init(); {24291#true} is VALID [2022-04-08 12:36:49,045 INFO L290 TraceCheckUtils]: 1: Hoare triple {24291#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; {24291#true} is VALID [2022-04-08 12:36:49,045 INFO L290 TraceCheckUtils]: 2: Hoare triple {24291#true} assume true; {24291#true} is VALID [2022-04-08 12:36:49,045 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24291#true} {24291#true} #102#return; {24291#true} is VALID [2022-04-08 12:36:49,045 INFO L272 TraceCheckUtils]: 4: Hoare triple {24291#true} call #t~ret9 := main(); {24291#true} is VALID [2022-04-08 12:36:49,045 INFO L290 TraceCheckUtils]: 5: Hoare triple {24291#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; {24291#true} is VALID [2022-04-08 12:36:49,045 INFO L272 TraceCheckUtils]: 6: Hoare triple {24291#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {24291#true} is VALID [2022-04-08 12:36:49,045 INFO L290 TraceCheckUtils]: 7: Hoare triple {24291#true} ~cond := #in~cond; {24291#true} is VALID [2022-04-08 12:36:49,045 INFO L290 TraceCheckUtils]: 8: Hoare triple {24291#true} assume !(0 == ~cond); {24291#true} is VALID [2022-04-08 12:36:49,045 INFO L290 TraceCheckUtils]: 9: Hoare triple {24291#true} assume true; {24291#true} is VALID [2022-04-08 12:36:49,045 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {24291#true} {24291#true} #90#return; {24291#true} is VALID [2022-04-08 12:36:49,045 INFO L272 TraceCheckUtils]: 11: Hoare triple {24291#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)); {24291#true} is VALID [2022-04-08 12:36:49,045 INFO L290 TraceCheckUtils]: 12: Hoare triple {24291#true} ~cond := #in~cond; {24291#true} is VALID [2022-04-08 12:36:49,045 INFO L290 TraceCheckUtils]: 13: Hoare triple {24291#true} assume !(0 == ~cond); {24291#true} is VALID [2022-04-08 12:36:49,045 INFO L290 TraceCheckUtils]: 14: Hoare triple {24291#true} assume true; {24291#true} is VALID [2022-04-08 12:36:49,045 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {24291#true} {24291#true} #92#return; {24291#true} is VALID [2022-04-08 12:36:49,046 INFO L290 TraceCheckUtils]: 16: Hoare triple {24291#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,046 INFO L290 TraceCheckUtils]: 17: Hoare triple {24344#(<= main_~v~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,046 INFO L290 TraceCheckUtils]: 18: Hoare triple {24344#(<= main_~v~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,046 INFO L272 TraceCheckUtils]: 19: Hoare triple {24344#(<= 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)); {24291#true} is VALID [2022-04-08 12:36:49,046 INFO L290 TraceCheckUtils]: 20: Hoare triple {24291#true} ~cond := #in~cond; {24291#true} is VALID [2022-04-08 12:36:49,046 INFO L290 TraceCheckUtils]: 21: Hoare triple {24291#true} assume !(0 == ~cond); {24291#true} is VALID [2022-04-08 12:36:49,046 INFO L290 TraceCheckUtils]: 22: Hoare triple {24291#true} assume true; {24291#true} is VALID [2022-04-08 12:36:49,047 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {24291#true} {24344#(<= main_~v~0 1)} #94#return; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,047 INFO L290 TraceCheckUtils]: 24: Hoare triple {24344#(<= main_~v~0 1)} assume !!(0 != ~r~0); {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,047 INFO L290 TraceCheckUtils]: 25: Hoare triple {24344#(<= main_~v~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,047 INFO L290 TraceCheckUtils]: 26: Hoare triple {24344#(<= main_~v~0 1)} assume !!(#t~post7 < 10);havoc #t~post7; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,048 INFO L272 TraceCheckUtils]: 27: Hoare triple {24344#(<= 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)); {24291#true} is VALID [2022-04-08 12:36:49,048 INFO L290 TraceCheckUtils]: 28: Hoare triple {24291#true} ~cond := #in~cond; {24291#true} is VALID [2022-04-08 12:36:49,048 INFO L290 TraceCheckUtils]: 29: Hoare triple {24291#true} assume !(0 == ~cond); {24291#true} is VALID [2022-04-08 12:36:49,048 INFO L290 TraceCheckUtils]: 30: Hoare triple {24291#true} assume true; {24291#true} is VALID [2022-04-08 12:36:49,048 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {24291#true} {24344#(<= main_~v~0 1)} #96#return; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,048 INFO L290 TraceCheckUtils]: 32: Hoare triple {24344#(<= main_~v~0 1)} assume !(~r~0 > 0); {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,049 INFO L290 TraceCheckUtils]: 33: Hoare triple {24344#(<= main_~v~0 1)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,049 INFO L290 TraceCheckUtils]: 34: Hoare triple {24344#(<= main_~v~0 1)} assume !!(#t~post8 < 10);havoc #t~post8; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,049 INFO L272 TraceCheckUtils]: 35: Hoare triple {24344#(<= 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)); {24291#true} is VALID [2022-04-08 12:36:49,049 INFO L290 TraceCheckUtils]: 36: Hoare triple {24291#true} ~cond := #in~cond; {24291#true} is VALID [2022-04-08 12:36:49,049 INFO L290 TraceCheckUtils]: 37: Hoare triple {24291#true} assume !(0 == ~cond); {24291#true} is VALID [2022-04-08 12:36:49,049 INFO L290 TraceCheckUtils]: 38: Hoare triple {24291#true} assume true; {24291#true} is VALID [2022-04-08 12:36:49,049 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {24291#true} {24344#(<= main_~v~0 1)} #98#return; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,050 INFO L290 TraceCheckUtils]: 40: Hoare triple {24344#(<= main_~v~0 1)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,050 INFO L290 TraceCheckUtils]: 41: Hoare triple {24344#(<= main_~v~0 1)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,050 INFO L290 TraceCheckUtils]: 42: Hoare triple {24344#(<= main_~v~0 1)} assume !!(#t~post8 < 10);havoc #t~post8; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,050 INFO L272 TraceCheckUtils]: 43: Hoare triple {24344#(<= 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)); {24291#true} is VALID [2022-04-08 12:36:49,050 INFO L290 TraceCheckUtils]: 44: Hoare triple {24291#true} ~cond := #in~cond; {24291#true} is VALID [2022-04-08 12:36:49,050 INFO L290 TraceCheckUtils]: 45: Hoare triple {24291#true} assume !(0 == ~cond); {24291#true} is VALID [2022-04-08 12:36:49,050 INFO L290 TraceCheckUtils]: 46: Hoare triple {24291#true} assume true; {24291#true} is VALID [2022-04-08 12:36:49,051 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {24291#true} {24344#(<= main_~v~0 1)} #98#return; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,051 INFO L290 TraceCheckUtils]: 48: Hoare triple {24344#(<= main_~v~0 1)} assume !(~r~0 < 0); {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,051 INFO L290 TraceCheckUtils]: 49: Hoare triple {24344#(<= main_~v~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,052 INFO L290 TraceCheckUtils]: 50: Hoare triple {24344#(<= main_~v~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,052 INFO L272 TraceCheckUtils]: 51: Hoare triple {24344#(<= 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)); {24291#true} is VALID [2022-04-08 12:36:49,052 INFO L290 TraceCheckUtils]: 52: Hoare triple {24291#true} ~cond := #in~cond; {24291#true} is VALID [2022-04-08 12:36:49,052 INFO L290 TraceCheckUtils]: 53: Hoare triple {24291#true} assume !(0 == ~cond); {24291#true} is VALID [2022-04-08 12:36:49,052 INFO L290 TraceCheckUtils]: 54: Hoare triple {24291#true} assume true; {24291#true} is VALID [2022-04-08 12:36:49,052 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {24291#true} {24344#(<= main_~v~0 1)} #94#return; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,052 INFO L290 TraceCheckUtils]: 56: Hoare triple {24344#(<= main_~v~0 1)} assume !!(0 != ~r~0); {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,053 INFO L290 TraceCheckUtils]: 57: Hoare triple {24344#(<= main_~v~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,053 INFO L290 TraceCheckUtils]: 58: Hoare triple {24344#(<= main_~v~0 1)} assume !!(#t~post7 < 10);havoc #t~post7; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,053 INFO L272 TraceCheckUtils]: 59: Hoare triple {24344#(<= 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)); {24291#true} is VALID [2022-04-08 12:36:49,053 INFO L290 TraceCheckUtils]: 60: Hoare triple {24291#true} ~cond := #in~cond; {24291#true} is VALID [2022-04-08 12:36:49,053 INFO L290 TraceCheckUtils]: 61: Hoare triple {24291#true} assume !(0 == ~cond); {24291#true} is VALID [2022-04-08 12:36:49,053 INFO L290 TraceCheckUtils]: 62: Hoare triple {24291#true} assume true; {24291#true} is VALID [2022-04-08 12:36:49,053 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {24291#true} {24344#(<= main_~v~0 1)} #96#return; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,054 INFO L290 TraceCheckUtils]: 64: Hoare triple {24344#(<= main_~v~0 1)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24489#(< 0 (+ main_~r~0 1))} is VALID [2022-04-08 12:36:49,054 INFO L290 TraceCheckUtils]: 65: Hoare triple {24489#(< 0 (+ main_~r~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24489#(< 0 (+ main_~r~0 1))} is VALID [2022-04-08 12:36:49,054 INFO L290 TraceCheckUtils]: 66: Hoare triple {24489#(< 0 (+ main_~r~0 1))} assume !!(#t~post7 < 10);havoc #t~post7; {24489#(< 0 (+ main_~r~0 1))} is VALID [2022-04-08 12:36:49,055 INFO L272 TraceCheckUtils]: 67: Hoare triple {24489#(< 0 (+ main_~r~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)); {24291#true} is VALID [2022-04-08 12:36:49,055 INFO L290 TraceCheckUtils]: 68: Hoare triple {24291#true} ~cond := #in~cond; {24291#true} is VALID [2022-04-08 12:36:49,055 INFO L290 TraceCheckUtils]: 69: Hoare triple {24291#true} assume !(0 == ~cond); {24291#true} is VALID [2022-04-08 12:36:49,055 INFO L290 TraceCheckUtils]: 70: Hoare triple {24291#true} assume true; {24291#true} is VALID [2022-04-08 12:36:49,055 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {24291#true} {24489#(< 0 (+ main_~r~0 1))} #96#return; {24489#(< 0 (+ main_~r~0 1))} is VALID [2022-04-08 12:36:49,055 INFO L290 TraceCheckUtils]: 72: Hoare triple {24489#(< 0 (+ main_~r~0 1))} assume !(~r~0 > 0); {24489#(< 0 (+ main_~r~0 1))} is VALID [2022-04-08 12:36:49,056 INFO L290 TraceCheckUtils]: 73: Hoare triple {24489#(< 0 (+ main_~r~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {24489#(< 0 (+ main_~r~0 1))} is VALID [2022-04-08 12:36:49,056 INFO L290 TraceCheckUtils]: 74: Hoare triple {24489#(< 0 (+ main_~r~0 1))} assume !!(#t~post8 < 10);havoc #t~post8; {24489#(< 0 (+ main_~r~0 1))} is VALID [2022-04-08 12:36:49,056 INFO L272 TraceCheckUtils]: 75: Hoare triple {24489#(< 0 (+ main_~r~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)); {24291#true} is VALID [2022-04-08 12:36:49,056 INFO L290 TraceCheckUtils]: 76: Hoare triple {24291#true} ~cond := #in~cond; {24291#true} is VALID [2022-04-08 12:36:49,056 INFO L290 TraceCheckUtils]: 77: Hoare triple {24291#true} assume !(0 == ~cond); {24291#true} is VALID [2022-04-08 12:36:49,056 INFO L290 TraceCheckUtils]: 78: Hoare triple {24291#true} assume true; {24291#true} is VALID [2022-04-08 12:36:49,056 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {24291#true} {24489#(< 0 (+ main_~r~0 1))} #98#return; {24489#(< 0 (+ main_~r~0 1))} is VALID [2022-04-08 12:36:49,057 INFO L290 TraceCheckUtils]: 80: Hoare triple {24489#(< 0 (+ main_~r~0 1))} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {24292#false} is VALID [2022-04-08 12:36:49,057 INFO L290 TraceCheckUtils]: 81: Hoare triple {24292#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {24292#false} is VALID [2022-04-08 12:36:49,057 INFO L290 TraceCheckUtils]: 82: Hoare triple {24292#false} assume !(#t~post8 < 10);havoc #t~post8; {24292#false} is VALID [2022-04-08 12:36:49,057 INFO L290 TraceCheckUtils]: 83: Hoare triple {24292#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24292#false} is VALID [2022-04-08 12:36:49,057 INFO L290 TraceCheckUtils]: 84: Hoare triple {24292#false} assume !(#t~post6 < 10);havoc #t~post6; {24292#false} is VALID [2022-04-08 12:36:49,058 INFO L272 TraceCheckUtils]: 85: Hoare triple {24292#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)); {24292#false} is VALID [2022-04-08 12:36:49,058 INFO L290 TraceCheckUtils]: 86: Hoare triple {24292#false} ~cond := #in~cond; {24292#false} is VALID [2022-04-08 12:36:49,058 INFO L290 TraceCheckUtils]: 87: Hoare triple {24292#false} assume 0 == ~cond; {24292#false} is VALID [2022-04-08 12:36:49,058 INFO L290 TraceCheckUtils]: 88: Hoare triple {24292#false} assume !false; {24292#false} is VALID [2022-04-08 12:36:49,058 INFO L134 CoverageAnalysis]: Checked inductivity of 170 backedges. 26 proven. 16 refuted. 0 times theorem prover too weak. 128 trivial. 0 not checked. [2022-04-08 12:36:49,058 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:36:49,280 INFO L290 TraceCheckUtils]: 88: Hoare triple {24292#false} assume !false; {24292#false} is VALID [2022-04-08 12:36:49,280 INFO L290 TraceCheckUtils]: 87: Hoare triple {24292#false} assume 0 == ~cond; {24292#false} is VALID [2022-04-08 12:36:49,280 INFO L290 TraceCheckUtils]: 86: Hoare triple {24292#false} ~cond := #in~cond; {24292#false} is VALID [2022-04-08 12:36:49,280 INFO L272 TraceCheckUtils]: 85: Hoare triple {24292#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)); {24292#false} is VALID [2022-04-08 12:36:49,280 INFO L290 TraceCheckUtils]: 84: Hoare triple {24292#false} assume !(#t~post6 < 10);havoc #t~post6; {24292#false} is VALID [2022-04-08 12:36:49,280 INFO L290 TraceCheckUtils]: 83: Hoare triple {24292#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24292#false} is VALID [2022-04-08 12:36:49,280 INFO L290 TraceCheckUtils]: 82: Hoare triple {24292#false} assume !(#t~post8 < 10);havoc #t~post8; {24292#false} is VALID [2022-04-08 12:36:49,280 INFO L290 TraceCheckUtils]: 81: Hoare triple {24292#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {24292#false} is VALID [2022-04-08 12:36:49,281 INFO L290 TraceCheckUtils]: 80: Hoare triple {24489#(< 0 (+ main_~r~0 1))} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {24292#false} is VALID [2022-04-08 12:36:49,282 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {24291#true} {24489#(< 0 (+ main_~r~0 1))} #98#return; {24489#(< 0 (+ main_~r~0 1))} is VALID [2022-04-08 12:36:49,282 INFO L290 TraceCheckUtils]: 78: Hoare triple {24291#true} assume true; {24291#true} is VALID [2022-04-08 12:36:49,282 INFO L290 TraceCheckUtils]: 77: Hoare triple {24291#true} assume !(0 == ~cond); {24291#true} is VALID [2022-04-08 12:36:49,282 INFO L290 TraceCheckUtils]: 76: Hoare triple {24291#true} ~cond := #in~cond; {24291#true} is VALID [2022-04-08 12:36:49,282 INFO L272 TraceCheckUtils]: 75: Hoare triple {24489#(< 0 (+ main_~r~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)); {24291#true} is VALID [2022-04-08 12:36:49,282 INFO L290 TraceCheckUtils]: 74: Hoare triple {24489#(< 0 (+ main_~r~0 1))} assume !!(#t~post8 < 10);havoc #t~post8; {24489#(< 0 (+ main_~r~0 1))} is VALID [2022-04-08 12:36:49,282 INFO L290 TraceCheckUtils]: 73: Hoare triple {24489#(< 0 (+ main_~r~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {24489#(< 0 (+ main_~r~0 1))} is VALID [2022-04-08 12:36:49,283 INFO L290 TraceCheckUtils]: 72: Hoare triple {24489#(< 0 (+ main_~r~0 1))} assume !(~r~0 > 0); {24489#(< 0 (+ main_~r~0 1))} is VALID [2022-04-08 12:36:49,283 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {24291#true} {24489#(< 0 (+ main_~r~0 1))} #96#return; {24489#(< 0 (+ main_~r~0 1))} is VALID [2022-04-08 12:36:49,283 INFO L290 TraceCheckUtils]: 70: Hoare triple {24291#true} assume true; {24291#true} is VALID [2022-04-08 12:36:49,283 INFO L290 TraceCheckUtils]: 69: Hoare triple {24291#true} assume !(0 == ~cond); {24291#true} is VALID [2022-04-08 12:36:49,283 INFO L290 TraceCheckUtils]: 68: Hoare triple {24291#true} ~cond := #in~cond; {24291#true} is VALID [2022-04-08 12:36:49,283 INFO L272 TraceCheckUtils]: 67: Hoare triple {24489#(< 0 (+ main_~r~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)); {24291#true} is VALID [2022-04-08 12:36:49,283 INFO L290 TraceCheckUtils]: 66: Hoare triple {24489#(< 0 (+ main_~r~0 1))} assume !!(#t~post7 < 10);havoc #t~post7; {24489#(< 0 (+ main_~r~0 1))} is VALID [2022-04-08 12:36:49,284 INFO L290 TraceCheckUtils]: 65: Hoare triple {24489#(< 0 (+ main_~r~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24489#(< 0 (+ main_~r~0 1))} is VALID [2022-04-08 12:36:49,284 INFO L290 TraceCheckUtils]: 64: Hoare triple {24344#(<= main_~v~0 1)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {24489#(< 0 (+ main_~r~0 1))} is VALID [2022-04-08 12:36:49,303 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {24291#true} {24344#(<= main_~v~0 1)} #96#return; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,303 INFO L290 TraceCheckUtils]: 62: Hoare triple {24291#true} assume true; {24291#true} is VALID [2022-04-08 12:36:49,303 INFO L290 TraceCheckUtils]: 61: Hoare triple {24291#true} assume !(0 == ~cond); {24291#true} is VALID [2022-04-08 12:36:49,303 INFO L290 TraceCheckUtils]: 60: Hoare triple {24291#true} ~cond := #in~cond; {24291#true} is VALID [2022-04-08 12:36:49,303 INFO L272 TraceCheckUtils]: 59: Hoare triple {24344#(<= 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)); {24291#true} is VALID [2022-04-08 12:36:49,303 INFO L290 TraceCheckUtils]: 58: Hoare triple {24344#(<= main_~v~0 1)} assume !!(#t~post7 < 10);havoc #t~post7; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,304 INFO L290 TraceCheckUtils]: 57: Hoare triple {24344#(<= main_~v~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,304 INFO L290 TraceCheckUtils]: 56: Hoare triple {24344#(<= main_~v~0 1)} assume !!(0 != ~r~0); {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,304 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {24291#true} {24344#(<= main_~v~0 1)} #94#return; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,304 INFO L290 TraceCheckUtils]: 54: Hoare triple {24291#true} assume true; {24291#true} is VALID [2022-04-08 12:36:49,304 INFO L290 TraceCheckUtils]: 53: Hoare triple {24291#true} assume !(0 == ~cond); {24291#true} is VALID [2022-04-08 12:36:49,304 INFO L290 TraceCheckUtils]: 52: Hoare triple {24291#true} ~cond := #in~cond; {24291#true} is VALID [2022-04-08 12:36:49,304 INFO L272 TraceCheckUtils]: 51: Hoare triple {24344#(<= 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)); {24291#true} is VALID [2022-04-08 12:36:49,305 INFO L290 TraceCheckUtils]: 50: Hoare triple {24344#(<= main_~v~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,305 INFO L290 TraceCheckUtils]: 49: Hoare triple {24344#(<= main_~v~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,305 INFO L290 TraceCheckUtils]: 48: Hoare triple {24344#(<= main_~v~0 1)} assume !(~r~0 < 0); {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,306 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {24291#true} {24344#(<= main_~v~0 1)} #98#return; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,306 INFO L290 TraceCheckUtils]: 46: Hoare triple {24291#true} assume true; {24291#true} is VALID [2022-04-08 12:36:49,306 INFO L290 TraceCheckUtils]: 45: Hoare triple {24291#true} assume !(0 == ~cond); {24291#true} is VALID [2022-04-08 12:36:49,306 INFO L290 TraceCheckUtils]: 44: Hoare triple {24291#true} ~cond := #in~cond; {24291#true} is VALID [2022-04-08 12:36:49,306 INFO L272 TraceCheckUtils]: 43: Hoare triple {24344#(<= 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)); {24291#true} is VALID [2022-04-08 12:36:49,306 INFO L290 TraceCheckUtils]: 42: Hoare triple {24344#(<= main_~v~0 1)} assume !!(#t~post8 < 10);havoc #t~post8; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,306 INFO L290 TraceCheckUtils]: 41: Hoare triple {24344#(<= main_~v~0 1)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,307 INFO L290 TraceCheckUtils]: 40: Hoare triple {24344#(<= main_~v~0 1)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,307 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {24291#true} {24344#(<= main_~v~0 1)} #98#return; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,307 INFO L290 TraceCheckUtils]: 38: Hoare triple {24291#true} assume true; {24291#true} is VALID [2022-04-08 12:36:49,307 INFO L290 TraceCheckUtils]: 37: Hoare triple {24291#true} assume !(0 == ~cond); {24291#true} is VALID [2022-04-08 12:36:49,307 INFO L290 TraceCheckUtils]: 36: Hoare triple {24291#true} ~cond := #in~cond; {24291#true} is VALID [2022-04-08 12:36:49,307 INFO L272 TraceCheckUtils]: 35: Hoare triple {24344#(<= 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)); {24291#true} is VALID [2022-04-08 12:36:49,308 INFO L290 TraceCheckUtils]: 34: Hoare triple {24344#(<= main_~v~0 1)} assume !!(#t~post8 < 10);havoc #t~post8; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,308 INFO L290 TraceCheckUtils]: 33: Hoare triple {24344#(<= main_~v~0 1)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,308 INFO L290 TraceCheckUtils]: 32: Hoare triple {24344#(<= main_~v~0 1)} assume !(~r~0 > 0); {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,309 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {24291#true} {24344#(<= main_~v~0 1)} #96#return; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,309 INFO L290 TraceCheckUtils]: 30: Hoare triple {24291#true} assume true; {24291#true} is VALID [2022-04-08 12:36:49,309 INFO L290 TraceCheckUtils]: 29: Hoare triple {24291#true} assume !(0 == ~cond); {24291#true} is VALID [2022-04-08 12:36:49,309 INFO L290 TraceCheckUtils]: 28: Hoare triple {24291#true} ~cond := #in~cond; {24291#true} is VALID [2022-04-08 12:36:49,309 INFO L272 TraceCheckUtils]: 27: Hoare triple {24344#(<= 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)); {24291#true} is VALID [2022-04-08 12:36:49,309 INFO L290 TraceCheckUtils]: 26: Hoare triple {24344#(<= main_~v~0 1)} assume !!(#t~post7 < 10);havoc #t~post7; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,309 INFO L290 TraceCheckUtils]: 25: Hoare triple {24344#(<= main_~v~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,309 INFO L290 TraceCheckUtils]: 24: Hoare triple {24344#(<= main_~v~0 1)} assume !!(0 != ~r~0); {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,310 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {24291#true} {24344#(<= main_~v~0 1)} #94#return; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,310 INFO L290 TraceCheckUtils]: 22: Hoare triple {24291#true} assume true; {24291#true} is VALID [2022-04-08 12:36:49,310 INFO L290 TraceCheckUtils]: 21: Hoare triple {24291#true} assume !(0 == ~cond); {24291#true} is VALID [2022-04-08 12:36:49,310 INFO L290 TraceCheckUtils]: 20: Hoare triple {24291#true} ~cond := #in~cond; {24291#true} is VALID [2022-04-08 12:36:49,310 INFO L272 TraceCheckUtils]: 19: Hoare triple {24344#(<= 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)); {24291#true} is VALID [2022-04-08 12:36:49,310 INFO L290 TraceCheckUtils]: 18: Hoare triple {24344#(<= main_~v~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,311 INFO L290 TraceCheckUtils]: 17: Hoare triple {24344#(<= main_~v~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,311 INFO L290 TraceCheckUtils]: 16: Hoare triple {24291#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {24344#(<= main_~v~0 1)} is VALID [2022-04-08 12:36:49,311 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {24291#true} {24291#true} #92#return; {24291#true} is VALID [2022-04-08 12:36:49,311 INFO L290 TraceCheckUtils]: 14: Hoare triple {24291#true} assume true; {24291#true} is VALID [2022-04-08 12:36:49,311 INFO L290 TraceCheckUtils]: 13: Hoare triple {24291#true} assume !(0 == ~cond); {24291#true} is VALID [2022-04-08 12:36:49,311 INFO L290 TraceCheckUtils]: 12: Hoare triple {24291#true} ~cond := #in~cond; {24291#true} is VALID [2022-04-08 12:36:49,311 INFO L272 TraceCheckUtils]: 11: Hoare triple {24291#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)); {24291#true} is VALID [2022-04-08 12:36:49,311 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {24291#true} {24291#true} #90#return; {24291#true} is VALID [2022-04-08 12:36:49,311 INFO L290 TraceCheckUtils]: 9: Hoare triple {24291#true} assume true; {24291#true} is VALID [2022-04-08 12:36:49,311 INFO L290 TraceCheckUtils]: 8: Hoare triple {24291#true} assume !(0 == ~cond); {24291#true} is VALID [2022-04-08 12:36:49,312 INFO L290 TraceCheckUtils]: 7: Hoare triple {24291#true} ~cond := #in~cond; {24291#true} is VALID [2022-04-08 12:36:49,312 INFO L272 TraceCheckUtils]: 6: Hoare triple {24291#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {24291#true} is VALID [2022-04-08 12:36:49,312 INFO L290 TraceCheckUtils]: 5: Hoare triple {24291#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; {24291#true} is VALID [2022-04-08 12:36:49,312 INFO L272 TraceCheckUtils]: 4: Hoare triple {24291#true} call #t~ret9 := main(); {24291#true} is VALID [2022-04-08 12:36:49,312 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24291#true} {24291#true} #102#return; {24291#true} is VALID [2022-04-08 12:36:49,312 INFO L290 TraceCheckUtils]: 2: Hoare triple {24291#true} assume true; {24291#true} is VALID [2022-04-08 12:36:49,312 INFO L290 TraceCheckUtils]: 1: Hoare triple {24291#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; {24291#true} is VALID [2022-04-08 12:36:49,312 INFO L272 TraceCheckUtils]: 0: Hoare triple {24291#true} call ULTIMATE.init(); {24291#true} is VALID [2022-04-08 12:36:49,312 INFO L134 CoverageAnalysis]: Checked inductivity of 170 backedges. 26 proven. 16 refuted. 0 times theorem prover too weak. 128 trivial. 0 not checked. [2022-04-08 12:36:49,312 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:36:49,312 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2077658756] [2022-04-08 12:36:49,312 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:36:49,312 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [422277122] [2022-04-08 12:36:49,312 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [422277122] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:36:49,312 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:36:49,313 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4] total 4 [2022-04-08 12:36:49,313 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:36:49,313 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1868587632] [2022-04-08 12:36:49,313 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1868587632] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:36:49,313 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:36:49,313 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 12:36:49,313 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [800049001] [2022-04-08 12:36:49,313 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:36:49,313 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 8.5) internal successors, (34), 4 states have internal predecessors, (34), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) Word has length 89 [2022-04-08 12:36:49,313 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:36:49,313 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 8.5) internal successors, (34), 4 states have internal predecessors, (34), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 12:36:49,346 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:49,346 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-08 12:36:49,346 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:49,347 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-08 12:36:49,347 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-08 12:36:49,347 INFO L87 Difference]: Start difference. First operand 181 states and 226 transitions. Second operand has 4 states, 4 states have (on average 8.5) internal successors, (34), 4 states have internal predecessors, (34), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 12:36:49,902 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:49,902 INFO L93 Difference]: Finished difference Result 411 states and 546 transitions. [2022-04-08 12:36:49,902 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 12:36:49,903 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 8.5) internal successors, (34), 4 states have internal predecessors, (34), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) Word has length 89 [2022-04-08 12:36:49,903 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:36:49,903 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 8.5) internal successors, (34), 4 states have internal predecessors, (34), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 12:36:49,904 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 127 transitions. [2022-04-08 12:36:49,904 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 8.5) internal successors, (34), 4 states have internal predecessors, (34), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 12:36:49,904 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 127 transitions. [2022-04-08 12:36:49,905 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 127 transitions. [2022-04-08 12:36:49,983 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 127 edges. 127 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:49,989 INFO L225 Difference]: With dead ends: 411 [2022-04-08 12:36:49,989 INFO L226 Difference]: Without dead ends: 305 [2022-04-08 12:36:49,989 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 178 GetRequests, 174 SyntacticMatches, 1 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-04-08 12:36:49,989 INFO L913 BasicCegarLoop]: 75 mSDtfsCounter, 12 mSDsluCounter, 73 mSDsCounter, 0 mSdLazyCounter, 45 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 148 SdHoareTripleChecker+Invalid, 48 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 45 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 12:36:49,989 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [13 Valid, 148 Invalid, 48 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 45 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 12:36:49,990 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 305 states. [2022-04-08 12:36:50,360 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 305 to 300. [2022-04-08 12:36:50,361 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:36:50,361 INFO L82 GeneralOperation]: Start isEquivalent. First operand 305 states. Second operand has 300 states, 222 states have (on average 1.2162162162162162) internal successors, (270), 228 states have internal predecessors, (270), 65 states have call successors, (65), 14 states have call predecessors, (65), 12 states have return successors, (63), 57 states have call predecessors, (63), 63 states have call successors, (63) [2022-04-08 12:36:50,371 INFO L74 IsIncluded]: Start isIncluded. First operand 305 states. Second operand has 300 states, 222 states have (on average 1.2162162162162162) internal successors, (270), 228 states have internal predecessors, (270), 65 states have call successors, (65), 14 states have call predecessors, (65), 12 states have return successors, (63), 57 states have call predecessors, (63), 63 states have call successors, (63) [2022-04-08 12:36:50,372 INFO L87 Difference]: Start difference. First operand 305 states. Second operand has 300 states, 222 states have (on average 1.2162162162162162) internal successors, (270), 228 states have internal predecessors, (270), 65 states have call successors, (65), 14 states have call predecessors, (65), 12 states have return successors, (63), 57 states have call predecessors, (63), 63 states have call successors, (63) [2022-04-08 12:36:50,376 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:50,376 INFO L93 Difference]: Finished difference Result 305 states and 404 transitions. [2022-04-08 12:36:50,377 INFO L276 IsEmpty]: Start isEmpty. Operand 305 states and 404 transitions. [2022-04-08 12:36:50,377 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:50,377 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:50,377 INFO L74 IsIncluded]: Start isIncluded. First operand has 300 states, 222 states have (on average 1.2162162162162162) internal successors, (270), 228 states have internal predecessors, (270), 65 states have call successors, (65), 14 states have call predecessors, (65), 12 states have return successors, (63), 57 states have call predecessors, (63), 63 states have call successors, (63) Second operand 305 states. [2022-04-08 12:36:50,378 INFO L87 Difference]: Start difference. First operand has 300 states, 222 states have (on average 1.2162162162162162) internal successors, (270), 228 states have internal predecessors, (270), 65 states have call successors, (65), 14 states have call predecessors, (65), 12 states have return successors, (63), 57 states have call predecessors, (63), 63 states have call successors, (63) Second operand 305 states. [2022-04-08 12:36:50,383 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:50,383 INFO L93 Difference]: Finished difference Result 305 states and 404 transitions. [2022-04-08 12:36:50,383 INFO L276 IsEmpty]: Start isEmpty. Operand 305 states and 404 transitions. [2022-04-08 12:36:50,383 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:50,383 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:50,383 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:36:50,383 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:36:50,384 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 300 states, 222 states have (on average 1.2162162162162162) internal successors, (270), 228 states have internal predecessors, (270), 65 states have call successors, (65), 14 states have call predecessors, (65), 12 states have return successors, (63), 57 states have call predecessors, (63), 63 states have call successors, (63) [2022-04-08 12:36:50,389 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 300 states to 300 states and 398 transitions. [2022-04-08 12:36:50,389 INFO L78 Accepts]: Start accepts. Automaton has 300 states and 398 transitions. Word has length 89 [2022-04-08 12:36:50,389 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:36:50,389 INFO L478 AbstractCegarLoop]: Abstraction has 300 states and 398 transitions. [2022-04-08 12:36:50,389 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 8.5) internal successors, (34), 4 states have internal predecessors, (34), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 12:36:50,389 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 300 states and 398 transitions. [2022-04-08 12:36:52,810 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 398 edges. 397 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:52,811 INFO L276 IsEmpty]: Start isEmpty. Operand 300 states and 398 transitions. [2022-04-08 12:36:52,812 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 90 [2022-04-08 12:36:52,812 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:36:52,812 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 4, 4, 4, 4, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 12:36:52,828 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (26)] Ended with exit code 0 [2022-04-08 12:36:53,028 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 26 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable24 [2022-04-08 12:36:53,028 INFO L403 AbstractCegarLoop]: === Iteration 26 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:36:53,028 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:36:53,029 INFO L85 PathProgramCache]: Analyzing trace with hash -1322512306, now seen corresponding path program 5 times [2022-04-08 12:36:53,029 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:53,029 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [52422059] [2022-04-08 12:36:53,029 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:36:53,029 INFO L85 PathProgramCache]: Analyzing trace with hash -1322512306, now seen corresponding path program 6 times [2022-04-08 12:36:53,029 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:36:53,029 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1892543653] [2022-04-08 12:36:53,029 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:36:53,029 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:36:53,044 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:36:53,044 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2112493823] [2022-04-08 12:36:53,044 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 12:36:53,044 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:36:53,044 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:36:53,045 INFO L229 MonitoredProcess]: Starting monitored process 27 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 12:36:53,045 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (27)] Waiting until timeout for monitored process [2022-04-08 12:36:53,167 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 6 check-sat command(s) [2022-04-08 12:36:53,168 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:36:53,169 INFO L263 TraceCheckSpWp]: Trace formula consists of 230 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-08 12:36:53,185 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:36:53,186 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:36:53,574 INFO L272 TraceCheckUtils]: 0: Hoare triple {26862#true} call ULTIMATE.init(); {26862#true} is VALID [2022-04-08 12:36:53,575 INFO L290 TraceCheckUtils]: 1: Hoare triple {26862#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; {26870#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:53,575 INFO L290 TraceCheckUtils]: 2: Hoare triple {26870#(<= ~counter~0 0)} assume true; {26870#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:53,575 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {26870#(<= ~counter~0 0)} {26862#true} #102#return; {26870#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:53,575 INFO L272 TraceCheckUtils]: 4: Hoare triple {26870#(<= ~counter~0 0)} call #t~ret9 := main(); {26870#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:53,576 INFO L290 TraceCheckUtils]: 5: Hoare triple {26870#(<= ~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; {26870#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:53,576 INFO L272 TraceCheckUtils]: 6: Hoare triple {26870#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {26870#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:53,576 INFO L290 TraceCheckUtils]: 7: Hoare triple {26870#(<= ~counter~0 0)} ~cond := #in~cond; {26870#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:53,577 INFO L290 TraceCheckUtils]: 8: Hoare triple {26870#(<= ~counter~0 0)} assume !(0 == ~cond); {26870#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:53,577 INFO L290 TraceCheckUtils]: 9: Hoare triple {26870#(<= ~counter~0 0)} assume true; {26870#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:53,577 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {26870#(<= ~counter~0 0)} {26870#(<= ~counter~0 0)} #90#return; {26870#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:53,578 INFO L272 TraceCheckUtils]: 11: Hoare triple {26870#(<= ~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)); {26870#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:53,578 INFO L290 TraceCheckUtils]: 12: Hoare triple {26870#(<= ~counter~0 0)} ~cond := #in~cond; {26870#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:53,578 INFO L290 TraceCheckUtils]: 13: Hoare triple {26870#(<= ~counter~0 0)} assume !(0 == ~cond); {26870#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:53,578 INFO L290 TraceCheckUtils]: 14: Hoare triple {26870#(<= ~counter~0 0)} assume true; {26870#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:53,579 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {26870#(<= ~counter~0 0)} {26870#(<= ~counter~0 0)} #92#return; {26870#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:53,579 INFO L290 TraceCheckUtils]: 16: Hoare triple {26870#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {26870#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:53,580 INFO L290 TraceCheckUtils]: 17: Hoare triple {26870#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26919#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:53,583 INFO L290 TraceCheckUtils]: 18: Hoare triple {26919#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {26919#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:53,584 INFO L272 TraceCheckUtils]: 19: Hoare triple {26919#(<= ~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)); {26919#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:53,584 INFO L290 TraceCheckUtils]: 20: Hoare triple {26919#(<= ~counter~0 1)} ~cond := #in~cond; {26919#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:53,584 INFO L290 TraceCheckUtils]: 21: Hoare triple {26919#(<= ~counter~0 1)} assume !(0 == ~cond); {26919#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:53,585 INFO L290 TraceCheckUtils]: 22: Hoare triple {26919#(<= ~counter~0 1)} assume true; {26919#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:53,586 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {26919#(<= ~counter~0 1)} {26919#(<= ~counter~0 1)} #94#return; {26919#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:53,586 INFO L290 TraceCheckUtils]: 24: Hoare triple {26919#(<= ~counter~0 1)} assume !!(0 != ~r~0); {26919#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:53,587 INFO L290 TraceCheckUtils]: 25: Hoare triple {26919#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {26944#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:53,587 INFO L290 TraceCheckUtils]: 26: Hoare triple {26944#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {26944#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:53,587 INFO L272 TraceCheckUtils]: 27: Hoare triple {26944#(<= ~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)); {26944#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:53,588 INFO L290 TraceCheckUtils]: 28: Hoare triple {26944#(<= ~counter~0 2)} ~cond := #in~cond; {26944#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:53,588 INFO L290 TraceCheckUtils]: 29: Hoare triple {26944#(<= ~counter~0 2)} assume !(0 == ~cond); {26944#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:53,588 INFO L290 TraceCheckUtils]: 30: Hoare triple {26944#(<= ~counter~0 2)} assume true; {26944#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:53,588 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {26944#(<= ~counter~0 2)} {26944#(<= ~counter~0 2)} #96#return; {26944#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:53,589 INFO L290 TraceCheckUtils]: 32: Hoare triple {26944#(<= ~counter~0 2)} assume !(~r~0 > 0); {26944#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:53,589 INFO L290 TraceCheckUtils]: 33: Hoare triple {26944#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {26969#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:53,589 INFO L290 TraceCheckUtils]: 34: Hoare triple {26969#(<= ~counter~0 3)} assume !!(#t~post8 < 10);havoc #t~post8; {26969#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:53,590 INFO L272 TraceCheckUtils]: 35: Hoare triple {26969#(<= ~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)); {26969#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:53,590 INFO L290 TraceCheckUtils]: 36: Hoare triple {26969#(<= ~counter~0 3)} ~cond := #in~cond; {26969#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:53,590 INFO L290 TraceCheckUtils]: 37: Hoare triple {26969#(<= ~counter~0 3)} assume !(0 == ~cond); {26969#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:53,591 INFO L290 TraceCheckUtils]: 38: Hoare triple {26969#(<= ~counter~0 3)} assume true; {26969#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:53,591 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {26969#(<= ~counter~0 3)} {26969#(<= ~counter~0 3)} #98#return; {26969#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:53,591 INFO L290 TraceCheckUtils]: 40: Hoare triple {26969#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {26969#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:53,592 INFO L290 TraceCheckUtils]: 41: Hoare triple {26969#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {26994#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:53,592 INFO L290 TraceCheckUtils]: 42: Hoare triple {26994#(<= ~counter~0 4)} assume !!(#t~post8 < 10);havoc #t~post8; {26994#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:53,593 INFO L272 TraceCheckUtils]: 43: Hoare triple {26994#(<= ~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)); {26994#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:53,593 INFO L290 TraceCheckUtils]: 44: Hoare triple {26994#(<= ~counter~0 4)} ~cond := #in~cond; {26994#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:53,593 INFO L290 TraceCheckUtils]: 45: Hoare triple {26994#(<= ~counter~0 4)} assume !(0 == ~cond); {26994#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:53,593 INFO L290 TraceCheckUtils]: 46: Hoare triple {26994#(<= ~counter~0 4)} assume true; {26994#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:53,594 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {26994#(<= ~counter~0 4)} {26994#(<= ~counter~0 4)} #98#return; {26994#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:53,594 INFO L290 TraceCheckUtils]: 48: Hoare triple {26994#(<= ~counter~0 4)} assume !(~r~0 < 0); {26994#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:53,594 INFO L290 TraceCheckUtils]: 49: Hoare triple {26994#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27019#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:53,595 INFO L290 TraceCheckUtils]: 50: Hoare triple {27019#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {27019#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:53,595 INFO L272 TraceCheckUtils]: 51: Hoare triple {27019#(<= ~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)); {27019#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:53,595 INFO L290 TraceCheckUtils]: 52: Hoare triple {27019#(<= ~counter~0 5)} ~cond := #in~cond; {27019#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:53,596 INFO L290 TraceCheckUtils]: 53: Hoare triple {27019#(<= ~counter~0 5)} assume !(0 == ~cond); {27019#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:53,596 INFO L290 TraceCheckUtils]: 54: Hoare triple {27019#(<= ~counter~0 5)} assume true; {27019#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:53,596 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {27019#(<= ~counter~0 5)} {27019#(<= ~counter~0 5)} #94#return; {27019#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:53,597 INFO L290 TraceCheckUtils]: 56: Hoare triple {27019#(<= ~counter~0 5)} assume !!(0 != ~r~0); {27019#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:53,597 INFO L290 TraceCheckUtils]: 57: Hoare triple {27019#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {27044#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:53,597 INFO L290 TraceCheckUtils]: 58: Hoare triple {27044#(<= ~counter~0 6)} assume !!(#t~post7 < 10);havoc #t~post7; {27044#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:53,598 INFO L272 TraceCheckUtils]: 59: Hoare triple {27044#(<= ~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)); {27044#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:53,598 INFO L290 TraceCheckUtils]: 60: Hoare triple {27044#(<= ~counter~0 6)} ~cond := #in~cond; {27044#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:53,598 INFO L290 TraceCheckUtils]: 61: Hoare triple {27044#(<= ~counter~0 6)} assume !(0 == ~cond); {27044#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:53,604 INFO L290 TraceCheckUtils]: 62: Hoare triple {27044#(<= ~counter~0 6)} assume true; {27044#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:53,608 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {27044#(<= ~counter~0 6)} {27044#(<= ~counter~0 6)} #96#return; {27044#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:53,608 INFO L290 TraceCheckUtils]: 64: Hoare triple {27044#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {27044#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:53,609 INFO L290 TraceCheckUtils]: 65: Hoare triple {27044#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {27069#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:53,609 INFO L290 TraceCheckUtils]: 66: Hoare triple {27069#(<= ~counter~0 7)} assume !!(#t~post7 < 10);havoc #t~post7; {27069#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:53,610 INFO L272 TraceCheckUtils]: 67: Hoare triple {27069#(<= ~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)); {27069#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:53,610 INFO L290 TraceCheckUtils]: 68: Hoare triple {27069#(<= ~counter~0 7)} ~cond := #in~cond; {27069#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:53,610 INFO L290 TraceCheckUtils]: 69: Hoare triple {27069#(<= ~counter~0 7)} assume !(0 == ~cond); {27069#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:53,611 INFO L290 TraceCheckUtils]: 70: Hoare triple {27069#(<= ~counter~0 7)} assume true; {27069#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:53,611 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {27069#(<= ~counter~0 7)} {27069#(<= ~counter~0 7)} #96#return; {27069#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:53,612 INFO L290 TraceCheckUtils]: 72: Hoare triple {27069#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {27069#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:53,612 INFO L290 TraceCheckUtils]: 73: Hoare triple {27069#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {27094#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:53,612 INFO L290 TraceCheckUtils]: 74: Hoare triple {27094#(<= ~counter~0 8)} assume !!(#t~post7 < 10);havoc #t~post7; {27094#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:53,613 INFO L272 TraceCheckUtils]: 75: Hoare triple {27094#(<= ~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)); {27094#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:53,613 INFO L290 TraceCheckUtils]: 76: Hoare triple {27094#(<= ~counter~0 8)} ~cond := #in~cond; {27094#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:53,613 INFO L290 TraceCheckUtils]: 77: Hoare triple {27094#(<= ~counter~0 8)} assume !(0 == ~cond); {27094#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:53,614 INFO L290 TraceCheckUtils]: 78: Hoare triple {27094#(<= ~counter~0 8)} assume true; {27094#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:53,614 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {27094#(<= ~counter~0 8)} {27094#(<= ~counter~0 8)} #96#return; {27094#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:53,614 INFO L290 TraceCheckUtils]: 80: Hoare triple {27094#(<= ~counter~0 8)} assume !(~r~0 > 0); {27094#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:53,615 INFO L290 TraceCheckUtils]: 81: Hoare triple {27094#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {27119#(<= ~counter~0 9)} is VALID [2022-04-08 12:36:53,615 INFO L290 TraceCheckUtils]: 82: Hoare triple {27119#(<= ~counter~0 9)} assume !(#t~post8 < 10);havoc #t~post8; {27119#(<= ~counter~0 9)} is VALID [2022-04-08 12:36:53,615 INFO L290 TraceCheckUtils]: 83: Hoare triple {27119#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27126#(<= |main_#t~post6| 9)} is VALID [2022-04-08 12:36:53,616 INFO L290 TraceCheckUtils]: 84: Hoare triple {27126#(<= |main_#t~post6| 9)} assume !(#t~post6 < 10);havoc #t~post6; {26863#false} is VALID [2022-04-08 12:36:53,616 INFO L272 TraceCheckUtils]: 85: Hoare triple {26863#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)); {26863#false} is VALID [2022-04-08 12:36:53,616 INFO L290 TraceCheckUtils]: 86: Hoare triple {26863#false} ~cond := #in~cond; {26863#false} is VALID [2022-04-08 12:36:53,616 INFO L290 TraceCheckUtils]: 87: Hoare triple {26863#false} assume 0 == ~cond; {26863#false} is VALID [2022-04-08 12:36:53,616 INFO L290 TraceCheckUtils]: 88: Hoare triple {26863#false} assume !false; {26863#false} is VALID [2022-04-08 12:36:53,616 INFO L134 CoverageAnalysis]: Checked inductivity of 172 backedges. 16 proven. 152 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 12:36:53,616 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:36:53,957 INFO L290 TraceCheckUtils]: 88: Hoare triple {26863#false} assume !false; {26863#false} is VALID [2022-04-08 12:36:53,957 INFO L290 TraceCheckUtils]: 87: Hoare triple {26863#false} assume 0 == ~cond; {26863#false} is VALID [2022-04-08 12:36:53,957 INFO L290 TraceCheckUtils]: 86: Hoare triple {26863#false} ~cond := #in~cond; {26863#false} is VALID [2022-04-08 12:36:53,957 INFO L272 TraceCheckUtils]: 85: Hoare triple {26863#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)); {26863#false} is VALID [2022-04-08 12:36:53,960 INFO L290 TraceCheckUtils]: 84: Hoare triple {27126#(<= |main_#t~post6| 9)} assume !(#t~post6 < 10);havoc #t~post6; {26863#false} is VALID [2022-04-08 12:36:53,960 INFO L290 TraceCheckUtils]: 83: Hoare triple {27119#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27126#(<= |main_#t~post6| 9)} is VALID [2022-04-08 12:36:53,961 INFO L290 TraceCheckUtils]: 82: Hoare triple {27119#(<= ~counter~0 9)} assume !(#t~post8 < 10);havoc #t~post8; {27119#(<= ~counter~0 9)} is VALID [2022-04-08 12:36:53,961 INFO L290 TraceCheckUtils]: 81: Hoare triple {27094#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {27119#(<= ~counter~0 9)} is VALID [2022-04-08 12:36:53,962 INFO L290 TraceCheckUtils]: 80: Hoare triple {27094#(<= ~counter~0 8)} assume !(~r~0 > 0); {27094#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:53,962 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {26862#true} {27094#(<= ~counter~0 8)} #96#return; {27094#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:53,962 INFO L290 TraceCheckUtils]: 78: Hoare triple {26862#true} assume true; {26862#true} is VALID [2022-04-08 12:36:53,962 INFO L290 TraceCheckUtils]: 77: Hoare triple {26862#true} assume !(0 == ~cond); {26862#true} is VALID [2022-04-08 12:36:53,962 INFO L290 TraceCheckUtils]: 76: Hoare triple {26862#true} ~cond := #in~cond; {26862#true} is VALID [2022-04-08 12:36:53,962 INFO L272 TraceCheckUtils]: 75: Hoare triple {27094#(<= ~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)); {26862#true} is VALID [2022-04-08 12:36:53,963 INFO L290 TraceCheckUtils]: 74: Hoare triple {27094#(<= ~counter~0 8)} assume !!(#t~post7 < 10);havoc #t~post7; {27094#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:53,963 INFO L290 TraceCheckUtils]: 73: Hoare triple {27069#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {27094#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:53,963 INFO L290 TraceCheckUtils]: 72: Hoare triple {27069#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {27069#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:53,964 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {26862#true} {27069#(<= ~counter~0 7)} #96#return; {27069#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:53,964 INFO L290 TraceCheckUtils]: 70: Hoare triple {26862#true} assume true; {26862#true} is VALID [2022-04-08 12:36:53,964 INFO L290 TraceCheckUtils]: 69: Hoare triple {26862#true} assume !(0 == ~cond); {26862#true} is VALID [2022-04-08 12:36:53,964 INFO L290 TraceCheckUtils]: 68: Hoare triple {26862#true} ~cond := #in~cond; {26862#true} is VALID [2022-04-08 12:36:53,964 INFO L272 TraceCheckUtils]: 67: Hoare triple {27069#(<= ~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)); {26862#true} is VALID [2022-04-08 12:36:53,964 INFO L290 TraceCheckUtils]: 66: Hoare triple {27069#(<= ~counter~0 7)} assume !!(#t~post7 < 10);havoc #t~post7; {27069#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:53,965 INFO L290 TraceCheckUtils]: 65: Hoare triple {27044#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {27069#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:53,965 INFO L290 TraceCheckUtils]: 64: Hoare triple {27044#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {27044#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:53,965 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {26862#true} {27044#(<= ~counter~0 6)} #96#return; {27044#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:53,965 INFO L290 TraceCheckUtils]: 62: Hoare triple {26862#true} assume true; {26862#true} is VALID [2022-04-08 12:36:53,966 INFO L290 TraceCheckUtils]: 61: Hoare triple {26862#true} assume !(0 == ~cond); {26862#true} is VALID [2022-04-08 12:36:53,966 INFO L290 TraceCheckUtils]: 60: Hoare triple {26862#true} ~cond := #in~cond; {26862#true} is VALID [2022-04-08 12:36:53,966 INFO L272 TraceCheckUtils]: 59: Hoare triple {27044#(<= ~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)); {26862#true} is VALID [2022-04-08 12:36:53,966 INFO L290 TraceCheckUtils]: 58: Hoare triple {27044#(<= ~counter~0 6)} assume !!(#t~post7 < 10);havoc #t~post7; {27044#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:53,966 INFO L290 TraceCheckUtils]: 57: Hoare triple {27019#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {27044#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:53,967 INFO L290 TraceCheckUtils]: 56: Hoare triple {27019#(<= ~counter~0 5)} assume !!(0 != ~r~0); {27019#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:53,967 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {26862#true} {27019#(<= ~counter~0 5)} #94#return; {27019#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:53,967 INFO L290 TraceCheckUtils]: 54: Hoare triple {26862#true} assume true; {26862#true} is VALID [2022-04-08 12:36:53,967 INFO L290 TraceCheckUtils]: 53: Hoare triple {26862#true} assume !(0 == ~cond); {26862#true} is VALID [2022-04-08 12:36:53,967 INFO L290 TraceCheckUtils]: 52: Hoare triple {26862#true} ~cond := #in~cond; {26862#true} is VALID [2022-04-08 12:36:53,967 INFO L272 TraceCheckUtils]: 51: Hoare triple {27019#(<= ~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)); {26862#true} is VALID [2022-04-08 12:36:53,967 INFO L290 TraceCheckUtils]: 50: Hoare triple {27019#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {27019#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:53,968 INFO L290 TraceCheckUtils]: 49: Hoare triple {26994#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27019#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:53,968 INFO L290 TraceCheckUtils]: 48: Hoare triple {26994#(<= ~counter~0 4)} assume !(~r~0 < 0); {26994#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:53,969 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {26862#true} {26994#(<= ~counter~0 4)} #98#return; {26994#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:53,969 INFO L290 TraceCheckUtils]: 46: Hoare triple {26862#true} assume true; {26862#true} is VALID [2022-04-08 12:36:53,969 INFO L290 TraceCheckUtils]: 45: Hoare triple {26862#true} assume !(0 == ~cond); {26862#true} is VALID [2022-04-08 12:36:53,969 INFO L290 TraceCheckUtils]: 44: Hoare triple {26862#true} ~cond := #in~cond; {26862#true} is VALID [2022-04-08 12:36:53,969 INFO L272 TraceCheckUtils]: 43: Hoare triple {26994#(<= ~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)); {26862#true} is VALID [2022-04-08 12:36:53,969 INFO L290 TraceCheckUtils]: 42: Hoare triple {26994#(<= ~counter~0 4)} assume !!(#t~post8 < 10);havoc #t~post8; {26994#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:53,970 INFO L290 TraceCheckUtils]: 41: Hoare triple {26969#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {26994#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:53,970 INFO L290 TraceCheckUtils]: 40: Hoare triple {26969#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {26969#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:53,970 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {26862#true} {26969#(<= ~counter~0 3)} #98#return; {26969#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:53,970 INFO L290 TraceCheckUtils]: 38: Hoare triple {26862#true} assume true; {26862#true} is VALID [2022-04-08 12:36:53,970 INFO L290 TraceCheckUtils]: 37: Hoare triple {26862#true} assume !(0 == ~cond); {26862#true} is VALID [2022-04-08 12:36:53,970 INFO L290 TraceCheckUtils]: 36: Hoare triple {26862#true} ~cond := #in~cond; {26862#true} is VALID [2022-04-08 12:36:53,970 INFO L272 TraceCheckUtils]: 35: Hoare triple {26969#(<= ~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)); {26862#true} is VALID [2022-04-08 12:36:53,971 INFO L290 TraceCheckUtils]: 34: Hoare triple {26969#(<= ~counter~0 3)} assume !!(#t~post8 < 10);havoc #t~post8; {26969#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:53,971 INFO L290 TraceCheckUtils]: 33: Hoare triple {26944#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {26969#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:53,971 INFO L290 TraceCheckUtils]: 32: Hoare triple {26944#(<= ~counter~0 2)} assume !(~r~0 > 0); {26944#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:53,972 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {26862#true} {26944#(<= ~counter~0 2)} #96#return; {26944#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:53,972 INFO L290 TraceCheckUtils]: 30: Hoare triple {26862#true} assume true; {26862#true} is VALID [2022-04-08 12:36:53,972 INFO L290 TraceCheckUtils]: 29: Hoare triple {26862#true} assume !(0 == ~cond); {26862#true} is VALID [2022-04-08 12:36:53,972 INFO L290 TraceCheckUtils]: 28: Hoare triple {26862#true} ~cond := #in~cond; {26862#true} is VALID [2022-04-08 12:36:53,972 INFO L272 TraceCheckUtils]: 27: Hoare triple {26944#(<= ~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)); {26862#true} is VALID [2022-04-08 12:36:53,972 INFO L290 TraceCheckUtils]: 26: Hoare triple {26944#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {26944#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:53,973 INFO L290 TraceCheckUtils]: 25: Hoare triple {26919#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {26944#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:53,973 INFO L290 TraceCheckUtils]: 24: Hoare triple {26919#(<= ~counter~0 1)} assume !!(0 != ~r~0); {26919#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:53,973 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {26862#true} {26919#(<= ~counter~0 1)} #94#return; {26919#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:53,974 INFO L290 TraceCheckUtils]: 22: Hoare triple {26862#true} assume true; {26862#true} is VALID [2022-04-08 12:36:53,974 INFO L290 TraceCheckUtils]: 21: Hoare triple {26862#true} assume !(0 == ~cond); {26862#true} is VALID [2022-04-08 12:36:53,974 INFO L290 TraceCheckUtils]: 20: Hoare triple {26862#true} ~cond := #in~cond; {26862#true} is VALID [2022-04-08 12:36:53,974 INFO L272 TraceCheckUtils]: 19: Hoare triple {26919#(<= ~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)); {26862#true} is VALID [2022-04-08 12:36:53,974 INFO L290 TraceCheckUtils]: 18: Hoare triple {26919#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {26919#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:53,974 INFO L290 TraceCheckUtils]: 17: Hoare triple {26870#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26919#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:53,975 INFO L290 TraceCheckUtils]: 16: Hoare triple {26870#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {26870#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:53,975 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {26862#true} {26870#(<= ~counter~0 0)} #92#return; {26870#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:53,975 INFO L290 TraceCheckUtils]: 14: Hoare triple {26862#true} assume true; {26862#true} is VALID [2022-04-08 12:36:53,975 INFO L290 TraceCheckUtils]: 13: Hoare triple {26862#true} assume !(0 == ~cond); {26862#true} is VALID [2022-04-08 12:36:53,975 INFO L290 TraceCheckUtils]: 12: Hoare triple {26862#true} ~cond := #in~cond; {26862#true} is VALID [2022-04-08 12:36:53,975 INFO L272 TraceCheckUtils]: 11: Hoare triple {26870#(<= ~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)); {26862#true} is VALID [2022-04-08 12:36:53,976 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {26862#true} {26870#(<= ~counter~0 0)} #90#return; {26870#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:53,976 INFO L290 TraceCheckUtils]: 9: Hoare triple {26862#true} assume true; {26862#true} is VALID [2022-04-08 12:36:53,976 INFO L290 TraceCheckUtils]: 8: Hoare triple {26862#true} assume !(0 == ~cond); {26862#true} is VALID [2022-04-08 12:36:53,976 INFO L290 TraceCheckUtils]: 7: Hoare triple {26862#true} ~cond := #in~cond; {26862#true} is VALID [2022-04-08 12:36:53,976 INFO L272 TraceCheckUtils]: 6: Hoare triple {26870#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {26862#true} is VALID [2022-04-08 12:36:53,976 INFO L290 TraceCheckUtils]: 5: Hoare triple {26870#(<= ~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; {26870#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:53,976 INFO L272 TraceCheckUtils]: 4: Hoare triple {26870#(<= ~counter~0 0)} call #t~ret9 := main(); {26870#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:53,977 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {26870#(<= ~counter~0 0)} {26862#true} #102#return; {26870#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:53,977 INFO L290 TraceCheckUtils]: 2: Hoare triple {26870#(<= ~counter~0 0)} assume true; {26870#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:53,977 INFO L290 TraceCheckUtils]: 1: Hoare triple {26862#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; {26870#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:53,977 INFO L272 TraceCheckUtils]: 0: Hoare triple {26862#true} call ULTIMATE.init(); {26862#true} is VALID [2022-04-08 12:36:53,978 INFO L134 CoverageAnalysis]: Checked inductivity of 172 backedges. 16 proven. 40 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-08 12:36:53,978 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:36:53,978 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1892543653] [2022-04-08 12:36:53,978 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:36:53,978 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2112493823] [2022-04-08 12:36:53,978 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2112493823] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:36:53,978 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:36:53,978 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 13 [2022-04-08 12:36:53,978 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:36:53,978 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [52422059] [2022-04-08 12:36:53,978 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [52422059] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:36:53,978 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:36:53,978 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-08 12:36:53,979 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [744142618] [2022-04-08 12:36:53,979 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:36:53,979 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 4.769230769230769) internal successors, (62), 12 states have internal predecessors, (62), 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 89 [2022-04-08 12:36:53,979 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:36:53,979 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 4.769230769230769) internal successors, (62), 12 states have internal predecessors, (62), 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-08 12:36:54,032 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 86 edges. 86 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:54,033 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-08 12:36:54,033 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:54,034 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-08 12:36:54,034 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=68, Invalid=88, Unknown=0, NotChecked=0, Total=156 [2022-04-08 12:36:54,034 INFO L87 Difference]: Start difference. First operand 300 states and 398 transitions. Second operand has 13 states, 13 states have (on average 4.769230769230769) internal successors, (62), 12 states have internal predecessors, (62), 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-08 12:36:55,022 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:55,022 INFO L93 Difference]: Finished difference Result 366 states and 489 transitions. [2022-04-08 12:36:55,022 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2022-04-08 12:36:55,022 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 4.769230769230769) internal successors, (62), 12 states have internal predecessors, (62), 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 89 [2022-04-08 12:36:55,022 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:36:55,022 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 4.769230769230769) internal successors, (62), 12 states have internal predecessors, (62), 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-08 12:36:55,024 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 197 transitions. [2022-04-08 12:36:55,024 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 4.769230769230769) internal successors, (62), 12 states have internal predecessors, (62), 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-08 12:36:55,025 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 197 transitions. [2022-04-08 12:36:55,025 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 19 states and 197 transitions. [2022-04-08 12:36:55,158 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 197 edges. 197 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:55,165 INFO L225 Difference]: With dead ends: 366 [2022-04-08 12:36:55,166 INFO L226 Difference]: Without dead ends: 361 [2022-04-08 12:36:55,166 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 183 GetRequests, 165 SyntacticMatches, 1 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 33 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=125, Invalid=217, Unknown=0, NotChecked=0, Total=342 [2022-04-08 12:36:55,166 INFO L913 BasicCegarLoop]: 57 mSDtfsCounter, 153 mSDsluCounter, 189 mSDsCounter, 0 mSdLazyCounter, 102 mSolverCounterSat, 95 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 153 SdHoareTripleChecker+Valid, 246 SdHoareTripleChecker+Invalid, 197 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 95 IncrementalHoareTripleChecker+Valid, 102 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 12:36:55,166 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [153 Valid, 246 Invalid, 197 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [95 Valid, 102 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 12:36:55,167 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 361 states. [2022-04-08 12:36:55,614 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 361 to 346. [2022-04-08 12:36:55,614 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:36:55,614 INFO L82 GeneralOperation]: Start isEquivalent. First operand 361 states. Second operand has 346 states, 258 states have (on average 1.2286821705426356) internal successors, (317), 264 states have internal predecessors, (317), 74 states have call successors, (74), 15 states have call predecessors, (74), 13 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 12:36:55,615 INFO L74 IsIncluded]: Start isIncluded. First operand 361 states. Second operand has 346 states, 258 states have (on average 1.2286821705426356) internal successors, (317), 264 states have internal predecessors, (317), 74 states have call successors, (74), 15 states have call predecessors, (74), 13 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 12:36:55,623 INFO L87 Difference]: Start difference. First operand 361 states. Second operand has 346 states, 258 states have (on average 1.2286821705426356) internal successors, (317), 264 states have internal predecessors, (317), 74 states have call successors, (74), 15 states have call predecessors, (74), 13 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 12:36:55,629 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:55,629 INFO L93 Difference]: Finished difference Result 361 states and 480 transitions. [2022-04-08 12:36:55,629 INFO L276 IsEmpty]: Start isEmpty. Operand 361 states and 480 transitions. [2022-04-08 12:36:55,629 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:55,629 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:55,630 INFO L74 IsIncluded]: Start isIncluded. First operand has 346 states, 258 states have (on average 1.2286821705426356) internal successors, (317), 264 states have internal predecessors, (317), 74 states have call successors, (74), 15 states have call predecessors, (74), 13 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) Second operand 361 states. [2022-04-08 12:36:55,630 INFO L87 Difference]: Start difference. First operand has 346 states, 258 states have (on average 1.2286821705426356) internal successors, (317), 264 states have internal predecessors, (317), 74 states have call successors, (74), 15 states have call predecessors, (74), 13 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) Second operand 361 states. [2022-04-08 12:36:55,636 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:55,636 INFO L93 Difference]: Finished difference Result 361 states and 480 transitions. [2022-04-08 12:36:55,636 INFO L276 IsEmpty]: Start isEmpty. Operand 361 states and 480 transitions. [2022-04-08 12:36:55,636 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:55,636 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:55,636 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:36:55,636 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:36:55,637 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 346 states, 258 states have (on average 1.2286821705426356) internal successors, (317), 264 states have internal predecessors, (317), 74 states have call successors, (74), 15 states have call predecessors, (74), 13 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 12:36:55,643 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 346 states to 346 states and 463 transitions. [2022-04-08 12:36:55,643 INFO L78 Accepts]: Start accepts. Automaton has 346 states and 463 transitions. Word has length 89 [2022-04-08 12:36:55,643 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:36:55,643 INFO L478 AbstractCegarLoop]: Abstraction has 346 states and 463 transitions. [2022-04-08 12:36:55,643 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 4.769230769230769) internal successors, (62), 12 states have internal predecessors, (62), 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-08 12:36:55,643 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 346 states and 463 transitions. [2022-04-08 12:36:57,104 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 463 edges. 463 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:57,105 INFO L276 IsEmpty]: Start isEmpty. Operand 346 states and 463 transitions. [2022-04-08 12:36:57,105 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-04-08 12:36:57,105 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:36:57,106 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 5, 4, 4, 4, 3, 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, 1, 1, 1, 1, 1] [2022-04-08 12:36:57,110 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (27)] Ended with exit code 0 [2022-04-08 12:36:57,310 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 27 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable25 [2022-04-08 12:36:57,310 INFO L403 AbstractCegarLoop]: === Iteration 27 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:36:57,311 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:36:57,311 INFO L85 PathProgramCache]: Analyzing trace with hash -345961389, now seen corresponding path program 5 times [2022-04-08 12:36:57,311 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:57,311 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1877692450] [2022-04-08 12:36:57,311 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:36:57,311 INFO L85 PathProgramCache]: Analyzing trace with hash -345961389, now seen corresponding path program 6 times [2022-04-08 12:36:57,311 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:36:57,312 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [944559797] [2022-04-08 12:36:57,312 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:36:57,312 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:36:57,324 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:36:57,325 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [19316882] [2022-04-08 12:36:57,325 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 12:36:57,325 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:36:57,325 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:36:57,326 INFO L229 MonitoredProcess]: Starting monitored process 28 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 12:36:57,326 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (28)] Waiting until timeout for monitored process [2022-04-08 12:36:57,467 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 6 check-sat command(s) [2022-04-08 12:36:57,467 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:36:57,468 INFO L263 TraceCheckSpWp]: Trace formula consists of 239 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-08 12:36:57,483 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:36:57,484 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:36:57,849 INFO L272 TraceCheckUtils]: 0: Hoare triple {29566#true} call ULTIMATE.init(); {29566#true} is VALID [2022-04-08 12:36:57,850 INFO L290 TraceCheckUtils]: 1: Hoare triple {29566#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; {29574#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:57,850 INFO L290 TraceCheckUtils]: 2: Hoare triple {29574#(<= ~counter~0 0)} assume true; {29574#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:57,851 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {29574#(<= ~counter~0 0)} {29566#true} #102#return; {29574#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:57,851 INFO L272 TraceCheckUtils]: 4: Hoare triple {29574#(<= ~counter~0 0)} call #t~ret9 := main(); {29574#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:57,851 INFO L290 TraceCheckUtils]: 5: Hoare triple {29574#(<= ~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; {29574#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:57,851 INFO L272 TraceCheckUtils]: 6: Hoare triple {29574#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {29574#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:57,852 INFO L290 TraceCheckUtils]: 7: Hoare triple {29574#(<= ~counter~0 0)} ~cond := #in~cond; {29574#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:57,852 INFO L290 TraceCheckUtils]: 8: Hoare triple {29574#(<= ~counter~0 0)} assume !(0 == ~cond); {29574#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:57,852 INFO L290 TraceCheckUtils]: 9: Hoare triple {29574#(<= ~counter~0 0)} assume true; {29574#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:57,853 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {29574#(<= ~counter~0 0)} {29574#(<= ~counter~0 0)} #90#return; {29574#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:57,853 INFO L272 TraceCheckUtils]: 11: Hoare triple {29574#(<= ~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)); {29574#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:57,854 INFO L290 TraceCheckUtils]: 12: Hoare triple {29574#(<= ~counter~0 0)} ~cond := #in~cond; {29574#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:57,854 INFO L290 TraceCheckUtils]: 13: Hoare triple {29574#(<= ~counter~0 0)} assume !(0 == ~cond); {29574#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:57,854 INFO L290 TraceCheckUtils]: 14: Hoare triple {29574#(<= ~counter~0 0)} assume true; {29574#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:57,855 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {29574#(<= ~counter~0 0)} {29574#(<= ~counter~0 0)} #92#return; {29574#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:57,855 INFO L290 TraceCheckUtils]: 16: Hoare triple {29574#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {29574#(<= ~counter~0 0)} is VALID [2022-04-08 12:36:57,856 INFO L290 TraceCheckUtils]: 17: Hoare triple {29574#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {29623#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:57,856 INFO L290 TraceCheckUtils]: 18: Hoare triple {29623#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {29623#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:57,856 INFO L272 TraceCheckUtils]: 19: Hoare triple {29623#(<= ~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)); {29623#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:57,857 INFO L290 TraceCheckUtils]: 20: Hoare triple {29623#(<= ~counter~0 1)} ~cond := #in~cond; {29623#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:57,857 INFO L290 TraceCheckUtils]: 21: Hoare triple {29623#(<= ~counter~0 1)} assume !(0 == ~cond); {29623#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:57,857 INFO L290 TraceCheckUtils]: 22: Hoare triple {29623#(<= ~counter~0 1)} assume true; {29623#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:57,858 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {29623#(<= ~counter~0 1)} {29623#(<= ~counter~0 1)} #94#return; {29623#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:57,858 INFO L290 TraceCheckUtils]: 24: Hoare triple {29623#(<= ~counter~0 1)} assume !!(0 != ~r~0); {29623#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:57,858 INFO L290 TraceCheckUtils]: 25: Hoare triple {29623#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {29648#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:57,859 INFO L290 TraceCheckUtils]: 26: Hoare triple {29648#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {29648#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:57,859 INFO L272 TraceCheckUtils]: 27: Hoare triple {29648#(<= ~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)); {29648#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:57,859 INFO L290 TraceCheckUtils]: 28: Hoare triple {29648#(<= ~counter~0 2)} ~cond := #in~cond; {29648#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:57,860 INFO L290 TraceCheckUtils]: 29: Hoare triple {29648#(<= ~counter~0 2)} assume !(0 == ~cond); {29648#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:57,860 INFO L290 TraceCheckUtils]: 30: Hoare triple {29648#(<= ~counter~0 2)} assume true; {29648#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:57,860 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {29648#(<= ~counter~0 2)} {29648#(<= ~counter~0 2)} #96#return; {29648#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:57,860 INFO L290 TraceCheckUtils]: 32: Hoare triple {29648#(<= ~counter~0 2)} assume !(~r~0 > 0); {29648#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:57,861 INFO L290 TraceCheckUtils]: 33: Hoare triple {29648#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {29673#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:57,861 INFO L290 TraceCheckUtils]: 34: Hoare triple {29673#(<= ~counter~0 3)} assume !!(#t~post8 < 10);havoc #t~post8; {29673#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:57,862 INFO L272 TraceCheckUtils]: 35: Hoare triple {29673#(<= ~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)); {29673#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:57,862 INFO L290 TraceCheckUtils]: 36: Hoare triple {29673#(<= ~counter~0 3)} ~cond := #in~cond; {29673#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:57,862 INFO L290 TraceCheckUtils]: 37: Hoare triple {29673#(<= ~counter~0 3)} assume !(0 == ~cond); {29673#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:57,862 INFO L290 TraceCheckUtils]: 38: Hoare triple {29673#(<= ~counter~0 3)} assume true; {29673#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:57,863 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {29673#(<= ~counter~0 3)} {29673#(<= ~counter~0 3)} #98#return; {29673#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:57,863 INFO L290 TraceCheckUtils]: 40: Hoare triple {29673#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {29673#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:57,864 INFO L290 TraceCheckUtils]: 41: Hoare triple {29673#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {29698#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:57,864 INFO L290 TraceCheckUtils]: 42: Hoare triple {29698#(<= ~counter~0 4)} assume !!(#t~post8 < 10);havoc #t~post8; {29698#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:57,864 INFO L272 TraceCheckUtils]: 43: Hoare triple {29698#(<= ~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)); {29698#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:57,864 INFO L290 TraceCheckUtils]: 44: Hoare triple {29698#(<= ~counter~0 4)} ~cond := #in~cond; {29698#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:57,865 INFO L290 TraceCheckUtils]: 45: Hoare triple {29698#(<= ~counter~0 4)} assume !(0 == ~cond); {29698#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:57,865 INFO L290 TraceCheckUtils]: 46: Hoare triple {29698#(<= ~counter~0 4)} assume true; {29698#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:57,865 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {29698#(<= ~counter~0 4)} {29698#(<= ~counter~0 4)} #98#return; {29698#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:57,866 INFO L290 TraceCheckUtils]: 48: Hoare triple {29698#(<= ~counter~0 4)} assume !(~r~0 < 0); {29698#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:57,866 INFO L290 TraceCheckUtils]: 49: Hoare triple {29698#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {29723#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:57,866 INFO L290 TraceCheckUtils]: 50: Hoare triple {29723#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {29723#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:57,867 INFO L272 TraceCheckUtils]: 51: Hoare triple {29723#(<= ~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)); {29723#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:57,867 INFO L290 TraceCheckUtils]: 52: Hoare triple {29723#(<= ~counter~0 5)} ~cond := #in~cond; {29723#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:57,867 INFO L290 TraceCheckUtils]: 53: Hoare triple {29723#(<= ~counter~0 5)} assume !(0 == ~cond); {29723#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:57,867 INFO L290 TraceCheckUtils]: 54: Hoare triple {29723#(<= ~counter~0 5)} assume true; {29723#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:57,868 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {29723#(<= ~counter~0 5)} {29723#(<= ~counter~0 5)} #94#return; {29723#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:57,868 INFO L290 TraceCheckUtils]: 56: Hoare triple {29723#(<= ~counter~0 5)} assume !!(0 != ~r~0); {29723#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:57,869 INFO L290 TraceCheckUtils]: 57: Hoare triple {29723#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {29748#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:57,869 INFO L290 TraceCheckUtils]: 58: Hoare triple {29748#(<= ~counter~0 6)} assume !!(#t~post7 < 10);havoc #t~post7; {29748#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:57,869 INFO L272 TraceCheckUtils]: 59: Hoare triple {29748#(<= ~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)); {29748#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:57,870 INFO L290 TraceCheckUtils]: 60: Hoare triple {29748#(<= ~counter~0 6)} ~cond := #in~cond; {29748#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:57,870 INFO L290 TraceCheckUtils]: 61: Hoare triple {29748#(<= ~counter~0 6)} assume !(0 == ~cond); {29748#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:57,870 INFO L290 TraceCheckUtils]: 62: Hoare triple {29748#(<= ~counter~0 6)} assume true; {29748#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:57,870 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {29748#(<= ~counter~0 6)} {29748#(<= ~counter~0 6)} #96#return; {29748#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:57,871 INFO L290 TraceCheckUtils]: 64: Hoare triple {29748#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {29748#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:57,871 INFO L290 TraceCheckUtils]: 65: Hoare triple {29748#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {29773#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:57,871 INFO L290 TraceCheckUtils]: 66: Hoare triple {29773#(<= ~counter~0 7)} assume !!(#t~post7 < 10);havoc #t~post7; {29773#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:57,872 INFO L272 TraceCheckUtils]: 67: Hoare triple {29773#(<= ~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)); {29773#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:57,872 INFO L290 TraceCheckUtils]: 68: Hoare triple {29773#(<= ~counter~0 7)} ~cond := #in~cond; {29773#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:57,872 INFO L290 TraceCheckUtils]: 69: Hoare triple {29773#(<= ~counter~0 7)} assume !(0 == ~cond); {29773#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:57,873 INFO L290 TraceCheckUtils]: 70: Hoare triple {29773#(<= ~counter~0 7)} assume true; {29773#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:57,873 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {29773#(<= ~counter~0 7)} {29773#(<= ~counter~0 7)} #96#return; {29773#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:57,873 INFO L290 TraceCheckUtils]: 72: Hoare triple {29773#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {29773#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:57,874 INFO L290 TraceCheckUtils]: 73: Hoare triple {29773#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {29798#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:57,874 INFO L290 TraceCheckUtils]: 74: Hoare triple {29798#(<= ~counter~0 8)} assume !!(#t~post7 < 10);havoc #t~post7; {29798#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:57,874 INFO L272 TraceCheckUtils]: 75: Hoare triple {29798#(<= ~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)); {29798#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:57,875 INFO L290 TraceCheckUtils]: 76: Hoare triple {29798#(<= ~counter~0 8)} ~cond := #in~cond; {29798#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:57,879 INFO L290 TraceCheckUtils]: 77: Hoare triple {29798#(<= ~counter~0 8)} assume !(0 == ~cond); {29798#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:57,880 INFO L290 TraceCheckUtils]: 78: Hoare triple {29798#(<= ~counter~0 8)} assume true; {29798#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:57,880 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {29798#(<= ~counter~0 8)} {29798#(<= ~counter~0 8)} #96#return; {29798#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:57,881 INFO L290 TraceCheckUtils]: 80: Hoare triple {29798#(<= ~counter~0 8)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {29798#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:57,881 INFO L290 TraceCheckUtils]: 81: Hoare triple {29798#(<= ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {29823#(<= |main_#t~post7| 8)} is VALID [2022-04-08 12:36:57,881 INFO L290 TraceCheckUtils]: 82: Hoare triple {29823#(<= |main_#t~post7| 8)} assume !(#t~post7 < 10);havoc #t~post7; {29567#false} is VALID [2022-04-08 12:36:57,881 INFO L290 TraceCheckUtils]: 83: Hoare triple {29567#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {29567#false} is VALID [2022-04-08 12:36:57,881 INFO L290 TraceCheckUtils]: 84: Hoare triple {29567#false} assume !(#t~post8 < 10);havoc #t~post8; {29567#false} is VALID [2022-04-08 12:36:57,881 INFO L290 TraceCheckUtils]: 85: Hoare triple {29567#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {29567#false} is VALID [2022-04-08 12:36:57,882 INFO L290 TraceCheckUtils]: 86: Hoare triple {29567#false} assume !(#t~post6 < 10);havoc #t~post6; {29567#false} is VALID [2022-04-08 12:36:57,882 INFO L272 TraceCheckUtils]: 87: Hoare triple {29567#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)); {29567#false} is VALID [2022-04-08 12:36:57,882 INFO L290 TraceCheckUtils]: 88: Hoare triple {29567#false} ~cond := #in~cond; {29567#false} is VALID [2022-04-08 12:36:57,882 INFO L290 TraceCheckUtils]: 89: Hoare triple {29567#false} assume 0 == ~cond; {29567#false} is VALID [2022-04-08 12:36:57,882 INFO L290 TraceCheckUtils]: 90: Hoare triple {29567#false} assume !false; {29567#false} is VALID [2022-04-08 12:36:57,882 INFO L134 CoverageAnalysis]: Checked inductivity of 180 backedges. 24 proven. 152 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 12:36:57,882 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:36:58,260 INFO L290 TraceCheckUtils]: 90: Hoare triple {29567#false} assume !false; {29567#false} is VALID [2022-04-08 12:36:58,260 INFO L290 TraceCheckUtils]: 89: Hoare triple {29567#false} assume 0 == ~cond; {29567#false} is VALID [2022-04-08 12:36:58,260 INFO L290 TraceCheckUtils]: 88: Hoare triple {29567#false} ~cond := #in~cond; {29567#false} is VALID [2022-04-08 12:36:58,260 INFO L272 TraceCheckUtils]: 87: Hoare triple {29567#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)); {29567#false} is VALID [2022-04-08 12:36:58,260 INFO L290 TraceCheckUtils]: 86: Hoare triple {29567#false} assume !(#t~post6 < 10);havoc #t~post6; {29567#false} is VALID [2022-04-08 12:36:58,260 INFO L290 TraceCheckUtils]: 85: Hoare triple {29567#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {29567#false} is VALID [2022-04-08 12:36:58,260 INFO L290 TraceCheckUtils]: 84: Hoare triple {29567#false} assume !(#t~post8 < 10);havoc #t~post8; {29567#false} is VALID [2022-04-08 12:36:58,260 INFO L290 TraceCheckUtils]: 83: Hoare triple {29567#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {29567#false} is VALID [2022-04-08 12:36:58,261 INFO L290 TraceCheckUtils]: 82: Hoare triple {29875#(< |main_#t~post7| 10)} assume !(#t~post7 < 10);havoc #t~post7; {29567#false} is VALID [2022-04-08 12:36:58,261 INFO L290 TraceCheckUtils]: 81: Hoare triple {29879#(< ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {29875#(< |main_#t~post7| 10)} is VALID [2022-04-08 12:36:58,261 INFO L290 TraceCheckUtils]: 80: Hoare triple {29879#(< ~counter~0 10)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {29879#(< ~counter~0 10)} is VALID [2022-04-08 12:36:58,262 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {29566#true} {29879#(< ~counter~0 10)} #96#return; {29879#(< ~counter~0 10)} is VALID [2022-04-08 12:36:58,262 INFO L290 TraceCheckUtils]: 78: Hoare triple {29566#true} assume true; {29566#true} is VALID [2022-04-08 12:36:58,262 INFO L290 TraceCheckUtils]: 77: Hoare triple {29566#true} assume !(0 == ~cond); {29566#true} is VALID [2022-04-08 12:36:58,262 INFO L290 TraceCheckUtils]: 76: Hoare triple {29566#true} ~cond := #in~cond; {29566#true} is VALID [2022-04-08 12:36:58,262 INFO L272 TraceCheckUtils]: 75: Hoare triple {29879#(< ~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)); {29566#true} is VALID [2022-04-08 12:36:58,262 INFO L290 TraceCheckUtils]: 74: Hoare triple {29879#(< ~counter~0 10)} assume !!(#t~post7 < 10);havoc #t~post7; {29879#(< ~counter~0 10)} is VALID [2022-04-08 12:36:58,263 INFO L290 TraceCheckUtils]: 73: Hoare triple {29798#(<= ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {29879#(< ~counter~0 10)} is VALID [2022-04-08 12:36:58,263 INFO L290 TraceCheckUtils]: 72: Hoare triple {29798#(<= ~counter~0 8)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {29798#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:58,264 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {29566#true} {29798#(<= ~counter~0 8)} #96#return; {29798#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:58,264 INFO L290 TraceCheckUtils]: 70: Hoare triple {29566#true} assume true; {29566#true} is VALID [2022-04-08 12:36:58,264 INFO L290 TraceCheckUtils]: 69: Hoare triple {29566#true} assume !(0 == ~cond); {29566#true} is VALID [2022-04-08 12:36:58,264 INFO L290 TraceCheckUtils]: 68: Hoare triple {29566#true} ~cond := #in~cond; {29566#true} is VALID [2022-04-08 12:36:58,264 INFO L272 TraceCheckUtils]: 67: Hoare triple {29798#(<= ~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)); {29566#true} is VALID [2022-04-08 12:36:58,264 INFO L290 TraceCheckUtils]: 66: Hoare triple {29798#(<= ~counter~0 8)} assume !!(#t~post7 < 10);havoc #t~post7; {29798#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:58,265 INFO L290 TraceCheckUtils]: 65: Hoare triple {29773#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {29798#(<= ~counter~0 8)} is VALID [2022-04-08 12:36:58,265 INFO L290 TraceCheckUtils]: 64: Hoare triple {29773#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {29773#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:58,266 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {29566#true} {29773#(<= ~counter~0 7)} #96#return; {29773#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:58,266 INFO L290 TraceCheckUtils]: 62: Hoare triple {29566#true} assume true; {29566#true} is VALID [2022-04-08 12:36:58,266 INFO L290 TraceCheckUtils]: 61: Hoare triple {29566#true} assume !(0 == ~cond); {29566#true} is VALID [2022-04-08 12:36:58,266 INFO L290 TraceCheckUtils]: 60: Hoare triple {29566#true} ~cond := #in~cond; {29566#true} is VALID [2022-04-08 12:36:58,266 INFO L272 TraceCheckUtils]: 59: Hoare triple {29773#(<= ~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)); {29566#true} is VALID [2022-04-08 12:36:58,266 INFO L290 TraceCheckUtils]: 58: Hoare triple {29773#(<= ~counter~0 7)} assume !!(#t~post7 < 10);havoc #t~post7; {29773#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:58,267 INFO L290 TraceCheckUtils]: 57: Hoare triple {29748#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {29773#(<= ~counter~0 7)} is VALID [2022-04-08 12:36:58,267 INFO L290 TraceCheckUtils]: 56: Hoare triple {29748#(<= ~counter~0 6)} assume !!(0 != ~r~0); {29748#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:58,267 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {29566#true} {29748#(<= ~counter~0 6)} #94#return; {29748#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:58,267 INFO L290 TraceCheckUtils]: 54: Hoare triple {29566#true} assume true; {29566#true} is VALID [2022-04-08 12:36:58,267 INFO L290 TraceCheckUtils]: 53: Hoare triple {29566#true} assume !(0 == ~cond); {29566#true} is VALID [2022-04-08 12:36:58,268 INFO L290 TraceCheckUtils]: 52: Hoare triple {29566#true} ~cond := #in~cond; {29566#true} is VALID [2022-04-08 12:36:58,268 INFO L272 TraceCheckUtils]: 51: Hoare triple {29748#(<= ~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)); {29566#true} is VALID [2022-04-08 12:36:58,268 INFO L290 TraceCheckUtils]: 50: Hoare triple {29748#(<= ~counter~0 6)} assume !!(#t~post6 < 10);havoc #t~post6; {29748#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:58,268 INFO L290 TraceCheckUtils]: 49: Hoare triple {29723#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {29748#(<= ~counter~0 6)} is VALID [2022-04-08 12:36:58,269 INFO L290 TraceCheckUtils]: 48: Hoare triple {29723#(<= ~counter~0 5)} assume !(~r~0 < 0); {29723#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:58,269 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {29566#true} {29723#(<= ~counter~0 5)} #98#return; {29723#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:58,269 INFO L290 TraceCheckUtils]: 46: Hoare triple {29566#true} assume true; {29566#true} is VALID [2022-04-08 12:36:58,269 INFO L290 TraceCheckUtils]: 45: Hoare triple {29566#true} assume !(0 == ~cond); {29566#true} is VALID [2022-04-08 12:36:58,269 INFO L290 TraceCheckUtils]: 44: Hoare triple {29566#true} ~cond := #in~cond; {29566#true} is VALID [2022-04-08 12:36:58,269 INFO L272 TraceCheckUtils]: 43: Hoare triple {29723#(<= ~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)); {29566#true} is VALID [2022-04-08 12:36:58,270 INFO L290 TraceCheckUtils]: 42: Hoare triple {29723#(<= ~counter~0 5)} assume !!(#t~post8 < 10);havoc #t~post8; {29723#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:58,270 INFO L290 TraceCheckUtils]: 41: Hoare triple {29698#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {29723#(<= ~counter~0 5)} is VALID [2022-04-08 12:36:58,270 INFO L290 TraceCheckUtils]: 40: Hoare triple {29698#(<= ~counter~0 4)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {29698#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:58,271 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {29566#true} {29698#(<= ~counter~0 4)} #98#return; {29698#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:58,271 INFO L290 TraceCheckUtils]: 38: Hoare triple {29566#true} assume true; {29566#true} is VALID [2022-04-08 12:36:58,271 INFO L290 TraceCheckUtils]: 37: Hoare triple {29566#true} assume !(0 == ~cond); {29566#true} is VALID [2022-04-08 12:36:58,271 INFO L290 TraceCheckUtils]: 36: Hoare triple {29566#true} ~cond := #in~cond; {29566#true} is VALID [2022-04-08 12:36:58,271 INFO L272 TraceCheckUtils]: 35: Hoare triple {29698#(<= ~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)); {29566#true} is VALID [2022-04-08 12:36:58,271 INFO L290 TraceCheckUtils]: 34: Hoare triple {29698#(<= ~counter~0 4)} assume !!(#t~post8 < 10);havoc #t~post8; {29698#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:58,272 INFO L290 TraceCheckUtils]: 33: Hoare triple {29673#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {29698#(<= ~counter~0 4)} is VALID [2022-04-08 12:36:58,272 INFO L290 TraceCheckUtils]: 32: Hoare triple {29673#(<= ~counter~0 3)} assume !(~r~0 > 0); {29673#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:58,273 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {29566#true} {29673#(<= ~counter~0 3)} #96#return; {29673#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:58,273 INFO L290 TraceCheckUtils]: 30: Hoare triple {29566#true} assume true; {29566#true} is VALID [2022-04-08 12:36:58,273 INFO L290 TraceCheckUtils]: 29: Hoare triple {29566#true} assume !(0 == ~cond); {29566#true} is VALID [2022-04-08 12:36:58,273 INFO L290 TraceCheckUtils]: 28: Hoare triple {29566#true} ~cond := #in~cond; {29566#true} is VALID [2022-04-08 12:36:58,273 INFO L272 TraceCheckUtils]: 27: Hoare triple {29673#(<= ~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)); {29566#true} is VALID [2022-04-08 12:36:58,273 INFO L290 TraceCheckUtils]: 26: Hoare triple {29673#(<= ~counter~0 3)} assume !!(#t~post7 < 10);havoc #t~post7; {29673#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:58,274 INFO L290 TraceCheckUtils]: 25: Hoare triple {29648#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {29673#(<= ~counter~0 3)} is VALID [2022-04-08 12:36:58,274 INFO L290 TraceCheckUtils]: 24: Hoare triple {29648#(<= ~counter~0 2)} assume !!(0 != ~r~0); {29648#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:58,274 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {29566#true} {29648#(<= ~counter~0 2)} #94#return; {29648#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:58,274 INFO L290 TraceCheckUtils]: 22: Hoare triple {29566#true} assume true; {29566#true} is VALID [2022-04-08 12:36:58,274 INFO L290 TraceCheckUtils]: 21: Hoare triple {29566#true} assume !(0 == ~cond); {29566#true} is VALID [2022-04-08 12:36:58,274 INFO L290 TraceCheckUtils]: 20: Hoare triple {29566#true} ~cond := #in~cond; {29566#true} is VALID [2022-04-08 12:36:58,275 INFO L272 TraceCheckUtils]: 19: Hoare triple {29648#(<= ~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)); {29566#true} is VALID [2022-04-08 12:36:58,275 INFO L290 TraceCheckUtils]: 18: Hoare triple {29648#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {29648#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:58,275 INFO L290 TraceCheckUtils]: 17: Hoare triple {29623#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {29648#(<= ~counter~0 2)} is VALID [2022-04-08 12:36:58,276 INFO L290 TraceCheckUtils]: 16: Hoare triple {29623#(<= ~counter~0 1)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {29623#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:58,276 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {29566#true} {29623#(<= ~counter~0 1)} #92#return; {29623#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:58,276 INFO L290 TraceCheckUtils]: 14: Hoare triple {29566#true} assume true; {29566#true} is VALID [2022-04-08 12:36:58,276 INFO L290 TraceCheckUtils]: 13: Hoare triple {29566#true} assume !(0 == ~cond); {29566#true} is VALID [2022-04-08 12:36:58,276 INFO L290 TraceCheckUtils]: 12: Hoare triple {29566#true} ~cond := #in~cond; {29566#true} is VALID [2022-04-08 12:36:58,276 INFO L272 TraceCheckUtils]: 11: Hoare triple {29623#(<= ~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)); {29566#true} is VALID [2022-04-08 12:36:58,277 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {29566#true} {29623#(<= ~counter~0 1)} #90#return; {29623#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:58,277 INFO L290 TraceCheckUtils]: 9: Hoare triple {29566#true} assume true; {29566#true} is VALID [2022-04-08 12:36:58,277 INFO L290 TraceCheckUtils]: 8: Hoare triple {29566#true} assume !(0 == ~cond); {29566#true} is VALID [2022-04-08 12:36:58,277 INFO L290 TraceCheckUtils]: 7: Hoare triple {29566#true} ~cond := #in~cond; {29566#true} is VALID [2022-04-08 12:36:58,277 INFO L272 TraceCheckUtils]: 6: Hoare triple {29623#(<= ~counter~0 1)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {29566#true} is VALID [2022-04-08 12:36:58,277 INFO L290 TraceCheckUtils]: 5: Hoare triple {29623#(<= ~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; {29623#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:58,277 INFO L272 TraceCheckUtils]: 4: Hoare triple {29623#(<= ~counter~0 1)} call #t~ret9 := main(); {29623#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:58,278 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {29623#(<= ~counter~0 1)} {29566#true} #102#return; {29623#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:58,278 INFO L290 TraceCheckUtils]: 2: Hoare triple {29623#(<= ~counter~0 1)} assume true; {29623#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:58,278 INFO L290 TraceCheckUtils]: 1: Hoare triple {29566#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; {29623#(<= ~counter~0 1)} is VALID [2022-04-08 12:36:58,278 INFO L272 TraceCheckUtils]: 0: Hoare triple {29566#true} call ULTIMATE.init(); {29566#true} is VALID [2022-04-08 12:36:58,278 INFO L134 CoverageAnalysis]: Checked inductivity of 180 backedges. 24 proven. 40 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-08 12:36:58,279 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:36:58,279 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [944559797] [2022-04-08 12:36:58,279 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:36:58,279 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [19316882] [2022-04-08 12:36:58,279 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [19316882] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:36:58,279 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:36:58,279 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 14 [2022-04-08 12:36:58,279 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:36:58,279 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1877692450] [2022-04-08 12:36:58,279 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1877692450] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:36:58,279 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:36:58,279 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-08 12:36:58,279 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2012690567] [2022-04-08 12:36:58,279 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:36:58,280 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 5.333333333333333) internal successors, (64), 11 states have internal predecessors, (64), 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 91 [2022-04-08 12:36:58,280 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:36:58,280 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 5.333333333333333) internal successors, (64), 11 states have internal predecessors, (64), 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-08 12:36:58,338 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 88 edges. 88 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:58,338 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-08 12:36:58,338 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:58,338 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-08 12:36:58,339 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-08 12:36:58,339 INFO L87 Difference]: Start difference. First operand 346 states and 463 transitions. Second operand has 12 states, 12 states have (on average 5.333333333333333) internal successors, (64), 11 states have internal predecessors, (64), 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-08 12:36:59,293 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:59,293 INFO L93 Difference]: Finished difference Result 431 states and 588 transitions. [2022-04-08 12:36:59,293 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2022-04-08 12:36:59,293 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 5.333333333333333) internal successors, (64), 11 states have internal predecessors, (64), 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 91 [2022-04-08 12:36:59,293 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:36:59,293 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 5.333333333333333) internal successors, (64), 11 states have internal predecessors, (64), 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-08 12:36:59,295 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 197 transitions. [2022-04-08 12:36:59,295 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 5.333333333333333) internal successors, (64), 11 states have internal predecessors, (64), 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-08 12:36:59,296 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 197 transitions. [2022-04-08 12:36:59,296 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 19 states and 197 transitions. [2022-04-08 12:36:59,422 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 197 edges. 197 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:59,428 INFO L225 Difference]: With dead ends: 431 [2022-04-08 12:36:59,428 INFO L226 Difference]: Without dead ends: 346 [2022-04-08 12:36:59,428 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 188 GetRequests, 168 SyntacticMatches, 1 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 39 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=155, Invalid=265, Unknown=0, NotChecked=0, Total=420 [2022-04-08 12:36:59,428 INFO L913 BasicCegarLoop]: 54 mSDtfsCounter, 125 mSDsluCounter, 163 mSDsCounter, 0 mSdLazyCounter, 118 mSolverCounterSat, 104 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 125 SdHoareTripleChecker+Valid, 217 SdHoareTripleChecker+Invalid, 222 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 104 IncrementalHoareTripleChecker+Valid, 118 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 12:36:59,429 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [125 Valid, 217 Invalid, 222 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [104 Valid, 118 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 12:36:59,429 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 346 states. [2022-04-08 12:36:59,860 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 346 to 346. [2022-04-08 12:36:59,860 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:36:59,860 INFO L82 GeneralOperation]: Start isEquivalent. First operand 346 states. Second operand has 346 states, 258 states have (on average 1.2131782945736433) internal successors, (313), 264 states have internal predecessors, (313), 74 states have call successors, (74), 15 states have call predecessors, (74), 13 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 12:36:59,861 INFO L74 IsIncluded]: Start isIncluded. First operand 346 states. Second operand has 346 states, 258 states have (on average 1.2131782945736433) internal successors, (313), 264 states have internal predecessors, (313), 74 states have call successors, (74), 15 states have call predecessors, (74), 13 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 12:36:59,861 INFO L87 Difference]: Start difference. First operand 346 states. Second operand has 346 states, 258 states have (on average 1.2131782945736433) internal successors, (313), 264 states have internal predecessors, (313), 74 states have call successors, (74), 15 states have call predecessors, (74), 13 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 12:36:59,866 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:59,866 INFO L93 Difference]: Finished difference Result 346 states and 459 transitions. [2022-04-08 12:36:59,866 INFO L276 IsEmpty]: Start isEmpty. Operand 346 states and 459 transitions. [2022-04-08 12:36:59,867 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:59,867 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:59,867 INFO L74 IsIncluded]: Start isIncluded. First operand has 346 states, 258 states have (on average 1.2131782945736433) internal successors, (313), 264 states have internal predecessors, (313), 74 states have call successors, (74), 15 states have call predecessors, (74), 13 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) Second operand 346 states. [2022-04-08 12:36:59,868 INFO L87 Difference]: Start difference. First operand has 346 states, 258 states have (on average 1.2131782945736433) internal successors, (313), 264 states have internal predecessors, (313), 74 states have call successors, (74), 15 states have call predecessors, (74), 13 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) Second operand 346 states. [2022-04-08 12:36:59,873 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:59,873 INFO L93 Difference]: Finished difference Result 346 states and 459 transitions. [2022-04-08 12:36:59,873 INFO L276 IsEmpty]: Start isEmpty. Operand 346 states and 459 transitions. [2022-04-08 12:36:59,874 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:59,874 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:59,874 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:36:59,874 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:36:59,874 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 346 states, 258 states have (on average 1.2131782945736433) internal successors, (313), 264 states have internal predecessors, (313), 74 states have call successors, (74), 15 states have call predecessors, (74), 13 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 12:36:59,881 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 346 states to 346 states and 459 transitions. [2022-04-08 12:36:59,881 INFO L78 Accepts]: Start accepts. Automaton has 346 states and 459 transitions. Word has length 91 [2022-04-08 12:36:59,881 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:36:59,881 INFO L478 AbstractCegarLoop]: Abstraction has 346 states and 459 transitions. [2022-04-08 12:36:59,881 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 5.333333333333333) internal successors, (64), 11 states have internal predecessors, (64), 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-08 12:36:59,881 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 346 states and 459 transitions. [2022-04-08 12:37:01,838 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 459 edges. 459 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:37:01,838 INFO L276 IsEmpty]: Start isEmpty. Operand 346 states and 459 transitions. [2022-04-08 12:37:01,839 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 98 [2022-04-08 12:37:01,839 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:37:01,839 INFO L499 BasicCegarLoop]: trace histogram [10, 9, 9, 4, 4, 4, 4, 4, 3, 3, 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, 1, 1] [2022-04-08 12:37:01,843 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (28)] Forceful destruction successful, exit code 0 [2022-04-08 12:37:02,043 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 28 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable26 [2022-04-08 12:37:02,043 INFO L403 AbstractCegarLoop]: === Iteration 28 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:37:02,044 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:37:02,044 INFO L85 PathProgramCache]: Analyzing trace with hash 1660747519, now seen corresponding path program 7 times [2022-04-08 12:37:02,044 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:37:02,044 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2125787487] [2022-04-08 12:37:02,044 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:37:02,044 INFO L85 PathProgramCache]: Analyzing trace with hash 1660747519, now seen corresponding path program 8 times [2022-04-08 12:37:02,044 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:37:02,044 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1230152712] [2022-04-08 12:37:02,044 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:37:02,044 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:37:02,061 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:37:02,061 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2091016983] [2022-04-08 12:37:02,061 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:37:02,061 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:37:02,061 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:37:02,062 INFO L229 MonitoredProcess]: Starting monitored process 29 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 12:37:02,071 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (29)] Waiting until timeout for monitored process [2022-04-08 12:37:02,118 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:37:02,118 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:37:02,119 INFO L263 TraceCheckSpWp]: Trace formula consists of 249 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-08 12:37:02,136 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:37:02,137 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:37:02,563 INFO L272 TraceCheckUtils]: 0: Hoare triple {32385#true} call ULTIMATE.init(); {32385#true} is VALID [2022-04-08 12:37:02,563 INFO L290 TraceCheckUtils]: 1: Hoare triple {32385#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; {32393#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:02,563 INFO L290 TraceCheckUtils]: 2: Hoare triple {32393#(<= ~counter~0 0)} assume true; {32393#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:02,564 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {32393#(<= ~counter~0 0)} {32385#true} #102#return; {32393#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:02,564 INFO L272 TraceCheckUtils]: 4: Hoare triple {32393#(<= ~counter~0 0)} call #t~ret9 := main(); {32393#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:02,564 INFO L290 TraceCheckUtils]: 5: Hoare triple {32393#(<= ~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; {32393#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:02,565 INFO L272 TraceCheckUtils]: 6: Hoare triple {32393#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {32393#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:02,565 INFO L290 TraceCheckUtils]: 7: Hoare triple {32393#(<= ~counter~0 0)} ~cond := #in~cond; {32393#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:02,565 INFO L290 TraceCheckUtils]: 8: Hoare triple {32393#(<= ~counter~0 0)} assume !(0 == ~cond); {32393#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:02,565 INFO L290 TraceCheckUtils]: 9: Hoare triple {32393#(<= ~counter~0 0)} assume true; {32393#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:02,566 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {32393#(<= ~counter~0 0)} {32393#(<= ~counter~0 0)} #90#return; {32393#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:02,566 INFO L272 TraceCheckUtils]: 11: Hoare triple {32393#(<= ~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)); {32393#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:02,566 INFO L290 TraceCheckUtils]: 12: Hoare triple {32393#(<= ~counter~0 0)} ~cond := #in~cond; {32393#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:02,566 INFO L290 TraceCheckUtils]: 13: Hoare triple {32393#(<= ~counter~0 0)} assume !(0 == ~cond); {32393#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:02,567 INFO L290 TraceCheckUtils]: 14: Hoare triple {32393#(<= ~counter~0 0)} assume true; {32393#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:02,567 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {32393#(<= ~counter~0 0)} {32393#(<= ~counter~0 0)} #92#return; {32393#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:02,567 INFO L290 TraceCheckUtils]: 16: Hoare triple {32393#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {32393#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:02,568 INFO L290 TraceCheckUtils]: 17: Hoare triple {32393#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {32442#(<= ~counter~0 1)} is VALID [2022-04-08 12:37:02,568 INFO L290 TraceCheckUtils]: 18: Hoare triple {32442#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {32442#(<= ~counter~0 1)} is VALID [2022-04-08 12:37:02,569 INFO L272 TraceCheckUtils]: 19: Hoare triple {32442#(<= ~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)); {32442#(<= ~counter~0 1)} is VALID [2022-04-08 12:37:02,569 INFO L290 TraceCheckUtils]: 20: Hoare triple {32442#(<= ~counter~0 1)} ~cond := #in~cond; {32442#(<= ~counter~0 1)} is VALID [2022-04-08 12:37:02,569 INFO L290 TraceCheckUtils]: 21: Hoare triple {32442#(<= ~counter~0 1)} assume !(0 == ~cond); {32442#(<= ~counter~0 1)} is VALID [2022-04-08 12:37:02,569 INFO L290 TraceCheckUtils]: 22: Hoare triple {32442#(<= ~counter~0 1)} assume true; {32442#(<= ~counter~0 1)} is VALID [2022-04-08 12:37:02,570 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {32442#(<= ~counter~0 1)} {32442#(<= ~counter~0 1)} #94#return; {32442#(<= ~counter~0 1)} is VALID [2022-04-08 12:37:02,570 INFO L290 TraceCheckUtils]: 24: Hoare triple {32442#(<= ~counter~0 1)} assume !!(0 != ~r~0); {32442#(<= ~counter~0 1)} is VALID [2022-04-08 12:37:02,571 INFO L290 TraceCheckUtils]: 25: Hoare triple {32442#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {32467#(<= ~counter~0 2)} is VALID [2022-04-08 12:37:02,571 INFO L290 TraceCheckUtils]: 26: Hoare triple {32467#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {32467#(<= ~counter~0 2)} is VALID [2022-04-08 12:37:02,571 INFO L272 TraceCheckUtils]: 27: Hoare triple {32467#(<= ~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)); {32467#(<= ~counter~0 2)} is VALID [2022-04-08 12:37:02,572 INFO L290 TraceCheckUtils]: 28: Hoare triple {32467#(<= ~counter~0 2)} ~cond := #in~cond; {32467#(<= ~counter~0 2)} is VALID [2022-04-08 12:37:02,572 INFO L290 TraceCheckUtils]: 29: Hoare triple {32467#(<= ~counter~0 2)} assume !(0 == ~cond); {32467#(<= ~counter~0 2)} is VALID [2022-04-08 12:37:02,572 INFO L290 TraceCheckUtils]: 30: Hoare triple {32467#(<= ~counter~0 2)} assume true; {32467#(<= ~counter~0 2)} is VALID [2022-04-08 12:37:02,572 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {32467#(<= ~counter~0 2)} {32467#(<= ~counter~0 2)} #96#return; {32467#(<= ~counter~0 2)} is VALID [2022-04-08 12:37:02,573 INFO L290 TraceCheckUtils]: 32: Hoare triple {32467#(<= ~counter~0 2)} assume !(~r~0 > 0); {32467#(<= ~counter~0 2)} is VALID [2022-04-08 12:37:02,573 INFO L290 TraceCheckUtils]: 33: Hoare triple {32467#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {32492#(<= ~counter~0 3)} is VALID [2022-04-08 12:37:02,573 INFO L290 TraceCheckUtils]: 34: Hoare triple {32492#(<= ~counter~0 3)} assume !!(#t~post8 < 10);havoc #t~post8; {32492#(<= ~counter~0 3)} is VALID [2022-04-08 12:37:02,574 INFO L272 TraceCheckUtils]: 35: Hoare triple {32492#(<= ~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)); {32492#(<= ~counter~0 3)} is VALID [2022-04-08 12:37:02,574 INFO L290 TraceCheckUtils]: 36: Hoare triple {32492#(<= ~counter~0 3)} ~cond := #in~cond; {32492#(<= ~counter~0 3)} is VALID [2022-04-08 12:37:02,574 INFO L290 TraceCheckUtils]: 37: Hoare triple {32492#(<= ~counter~0 3)} assume !(0 == ~cond); {32492#(<= ~counter~0 3)} is VALID [2022-04-08 12:37:02,575 INFO L290 TraceCheckUtils]: 38: Hoare triple {32492#(<= ~counter~0 3)} assume true; {32492#(<= ~counter~0 3)} is VALID [2022-04-08 12:37:02,575 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {32492#(<= ~counter~0 3)} {32492#(<= ~counter~0 3)} #98#return; {32492#(<= ~counter~0 3)} is VALID [2022-04-08 12:37:02,575 INFO L290 TraceCheckUtils]: 40: Hoare triple {32492#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {32492#(<= ~counter~0 3)} is VALID [2022-04-08 12:37:02,576 INFO L290 TraceCheckUtils]: 41: Hoare triple {32492#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {32517#(<= ~counter~0 4)} is VALID [2022-04-08 12:37:02,576 INFO L290 TraceCheckUtils]: 42: Hoare triple {32517#(<= ~counter~0 4)} assume !!(#t~post8 < 10);havoc #t~post8; {32517#(<= ~counter~0 4)} is VALID [2022-04-08 12:37:02,576 INFO L272 TraceCheckUtils]: 43: Hoare triple {32517#(<= ~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)); {32517#(<= ~counter~0 4)} is VALID [2022-04-08 12:37:02,577 INFO L290 TraceCheckUtils]: 44: Hoare triple {32517#(<= ~counter~0 4)} ~cond := #in~cond; {32517#(<= ~counter~0 4)} is VALID [2022-04-08 12:37:02,577 INFO L290 TraceCheckUtils]: 45: Hoare triple {32517#(<= ~counter~0 4)} assume !(0 == ~cond); {32517#(<= ~counter~0 4)} is VALID [2022-04-08 12:37:02,577 INFO L290 TraceCheckUtils]: 46: Hoare triple {32517#(<= ~counter~0 4)} assume true; {32517#(<= ~counter~0 4)} is VALID [2022-04-08 12:37:02,578 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {32517#(<= ~counter~0 4)} {32517#(<= ~counter~0 4)} #98#return; {32517#(<= ~counter~0 4)} is VALID [2022-04-08 12:37:02,578 INFO L290 TraceCheckUtils]: 48: Hoare triple {32517#(<= ~counter~0 4)} assume !(~r~0 < 0); {32517#(<= ~counter~0 4)} is VALID [2022-04-08 12:37:02,578 INFO L290 TraceCheckUtils]: 49: Hoare triple {32517#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {32542#(<= ~counter~0 5)} is VALID [2022-04-08 12:37:02,578 INFO L290 TraceCheckUtils]: 50: Hoare triple {32542#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {32542#(<= ~counter~0 5)} is VALID [2022-04-08 12:37:02,579 INFO L272 TraceCheckUtils]: 51: Hoare triple {32542#(<= ~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)); {32542#(<= ~counter~0 5)} is VALID [2022-04-08 12:37:02,579 INFO L290 TraceCheckUtils]: 52: Hoare triple {32542#(<= ~counter~0 5)} ~cond := #in~cond; {32542#(<= ~counter~0 5)} is VALID [2022-04-08 12:37:02,579 INFO L290 TraceCheckUtils]: 53: Hoare triple {32542#(<= ~counter~0 5)} assume !(0 == ~cond); {32542#(<= ~counter~0 5)} is VALID [2022-04-08 12:37:02,580 INFO L290 TraceCheckUtils]: 54: Hoare triple {32542#(<= ~counter~0 5)} assume true; {32542#(<= ~counter~0 5)} is VALID [2022-04-08 12:37:02,580 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {32542#(<= ~counter~0 5)} {32542#(<= ~counter~0 5)} #94#return; {32542#(<= ~counter~0 5)} is VALID [2022-04-08 12:37:02,580 INFO L290 TraceCheckUtils]: 56: Hoare triple {32542#(<= ~counter~0 5)} assume !!(0 != ~r~0); {32542#(<= ~counter~0 5)} is VALID [2022-04-08 12:37:02,581 INFO L290 TraceCheckUtils]: 57: Hoare triple {32542#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {32567#(<= ~counter~0 6)} is VALID [2022-04-08 12:37:02,581 INFO L290 TraceCheckUtils]: 58: Hoare triple {32567#(<= ~counter~0 6)} assume !!(#t~post7 < 10);havoc #t~post7; {32567#(<= ~counter~0 6)} is VALID [2022-04-08 12:37:02,582 INFO L272 TraceCheckUtils]: 59: Hoare triple {32567#(<= ~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)); {32567#(<= ~counter~0 6)} is VALID [2022-04-08 12:37:02,582 INFO L290 TraceCheckUtils]: 60: Hoare triple {32567#(<= ~counter~0 6)} ~cond := #in~cond; {32567#(<= ~counter~0 6)} is VALID [2022-04-08 12:37:02,582 INFO L290 TraceCheckUtils]: 61: Hoare triple {32567#(<= ~counter~0 6)} assume !(0 == ~cond); {32567#(<= ~counter~0 6)} is VALID [2022-04-08 12:37:02,582 INFO L290 TraceCheckUtils]: 62: Hoare triple {32567#(<= ~counter~0 6)} assume true; {32567#(<= ~counter~0 6)} is VALID [2022-04-08 12:37:02,583 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {32567#(<= ~counter~0 6)} {32567#(<= ~counter~0 6)} #96#return; {32567#(<= ~counter~0 6)} is VALID [2022-04-08 12:37:02,583 INFO L290 TraceCheckUtils]: 64: Hoare triple {32567#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {32567#(<= ~counter~0 6)} is VALID [2022-04-08 12:37:02,583 INFO L290 TraceCheckUtils]: 65: Hoare triple {32567#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {32592#(<= ~counter~0 7)} is VALID [2022-04-08 12:37:02,584 INFO L290 TraceCheckUtils]: 66: Hoare triple {32592#(<= ~counter~0 7)} assume !!(#t~post7 < 10);havoc #t~post7; {32592#(<= ~counter~0 7)} is VALID [2022-04-08 12:37:02,584 INFO L272 TraceCheckUtils]: 67: Hoare triple {32592#(<= ~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)); {32592#(<= ~counter~0 7)} is VALID [2022-04-08 12:37:02,584 INFO L290 TraceCheckUtils]: 68: Hoare triple {32592#(<= ~counter~0 7)} ~cond := #in~cond; {32592#(<= ~counter~0 7)} is VALID [2022-04-08 12:37:02,585 INFO L290 TraceCheckUtils]: 69: Hoare triple {32592#(<= ~counter~0 7)} assume !(0 == ~cond); {32592#(<= ~counter~0 7)} is VALID [2022-04-08 12:37:02,585 INFO L290 TraceCheckUtils]: 70: Hoare triple {32592#(<= ~counter~0 7)} assume true; {32592#(<= ~counter~0 7)} is VALID [2022-04-08 12:37:02,585 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {32592#(<= ~counter~0 7)} {32592#(<= ~counter~0 7)} #96#return; {32592#(<= ~counter~0 7)} is VALID [2022-04-08 12:37:02,585 INFO L290 TraceCheckUtils]: 72: Hoare triple {32592#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {32592#(<= ~counter~0 7)} is VALID [2022-04-08 12:37:02,586 INFO L290 TraceCheckUtils]: 73: Hoare triple {32592#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {32617#(<= ~counter~0 8)} is VALID [2022-04-08 12:37:02,586 INFO L290 TraceCheckUtils]: 74: Hoare triple {32617#(<= ~counter~0 8)} assume !!(#t~post7 < 10);havoc #t~post7; {32617#(<= ~counter~0 8)} is VALID [2022-04-08 12:37:02,587 INFO L272 TraceCheckUtils]: 75: Hoare triple {32617#(<= ~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)); {32617#(<= ~counter~0 8)} is VALID [2022-04-08 12:37:02,587 INFO L290 TraceCheckUtils]: 76: Hoare triple {32617#(<= ~counter~0 8)} ~cond := #in~cond; {32617#(<= ~counter~0 8)} is VALID [2022-04-08 12:37:02,587 INFO L290 TraceCheckUtils]: 77: Hoare triple {32617#(<= ~counter~0 8)} assume !(0 == ~cond); {32617#(<= ~counter~0 8)} is VALID [2022-04-08 12:37:02,587 INFO L290 TraceCheckUtils]: 78: Hoare triple {32617#(<= ~counter~0 8)} assume true; {32617#(<= ~counter~0 8)} is VALID [2022-04-08 12:37:02,588 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {32617#(<= ~counter~0 8)} {32617#(<= ~counter~0 8)} #96#return; {32617#(<= ~counter~0 8)} is VALID [2022-04-08 12:37:02,588 INFO L290 TraceCheckUtils]: 80: Hoare triple {32617#(<= ~counter~0 8)} assume !(~r~0 > 0); {32617#(<= ~counter~0 8)} is VALID [2022-04-08 12:37:02,588 INFO L290 TraceCheckUtils]: 81: Hoare triple {32617#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {32642#(<= ~counter~0 9)} is VALID [2022-04-08 12:37:02,589 INFO L290 TraceCheckUtils]: 82: Hoare triple {32642#(<= ~counter~0 9)} assume !!(#t~post8 < 10);havoc #t~post8; {32642#(<= ~counter~0 9)} is VALID [2022-04-08 12:37:02,589 INFO L272 TraceCheckUtils]: 83: Hoare triple {32642#(<= ~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)); {32642#(<= ~counter~0 9)} is VALID [2022-04-08 12:37:02,589 INFO L290 TraceCheckUtils]: 84: Hoare triple {32642#(<= ~counter~0 9)} ~cond := #in~cond; {32642#(<= ~counter~0 9)} is VALID [2022-04-08 12:37:02,590 INFO L290 TraceCheckUtils]: 85: Hoare triple {32642#(<= ~counter~0 9)} assume !(0 == ~cond); {32642#(<= ~counter~0 9)} is VALID [2022-04-08 12:37:02,590 INFO L290 TraceCheckUtils]: 86: Hoare triple {32642#(<= ~counter~0 9)} assume true; {32642#(<= ~counter~0 9)} is VALID [2022-04-08 12:37:02,590 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {32642#(<= ~counter~0 9)} {32642#(<= ~counter~0 9)} #98#return; {32642#(<= ~counter~0 9)} is VALID [2022-04-08 12:37:02,591 INFO L290 TraceCheckUtils]: 88: Hoare triple {32642#(<= ~counter~0 9)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {32642#(<= ~counter~0 9)} is VALID [2022-04-08 12:37:02,591 INFO L290 TraceCheckUtils]: 89: Hoare triple {32642#(<= ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {32667#(<= |main_#t~post8| 9)} is VALID [2022-04-08 12:37:02,591 INFO L290 TraceCheckUtils]: 90: Hoare triple {32667#(<= |main_#t~post8| 9)} assume !(#t~post8 < 10);havoc #t~post8; {32386#false} is VALID [2022-04-08 12:37:02,591 INFO L290 TraceCheckUtils]: 91: Hoare triple {32386#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {32386#false} is VALID [2022-04-08 12:37:02,591 INFO L290 TraceCheckUtils]: 92: Hoare triple {32386#false} assume !(#t~post6 < 10);havoc #t~post6; {32386#false} is VALID [2022-04-08 12:37:02,591 INFO L272 TraceCheckUtils]: 93: Hoare triple {32386#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)); {32386#false} is VALID [2022-04-08 12:37:02,591 INFO L290 TraceCheckUtils]: 94: Hoare triple {32386#false} ~cond := #in~cond; {32386#false} is VALID [2022-04-08 12:37:02,591 INFO L290 TraceCheckUtils]: 95: Hoare triple {32386#false} assume 0 == ~cond; {32386#false} is VALID [2022-04-08 12:37:02,591 INFO L290 TraceCheckUtils]: 96: Hoare triple {32386#false} assume !false; {32386#false} is VALID [2022-04-08 12:37:02,592 INFO L134 CoverageAnalysis]: Checked inductivity of 216 backedges. 22 proven. 190 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 12:37:02,592 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:37:02,947 INFO L290 TraceCheckUtils]: 96: Hoare triple {32386#false} assume !false; {32386#false} is VALID [2022-04-08 12:37:02,947 INFO L290 TraceCheckUtils]: 95: Hoare triple {32386#false} assume 0 == ~cond; {32386#false} is VALID [2022-04-08 12:37:02,948 INFO L290 TraceCheckUtils]: 94: Hoare triple {32386#false} ~cond := #in~cond; {32386#false} is VALID [2022-04-08 12:37:02,948 INFO L272 TraceCheckUtils]: 93: Hoare triple {32386#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)); {32386#false} is VALID [2022-04-08 12:37:02,948 INFO L290 TraceCheckUtils]: 92: Hoare triple {32386#false} assume !(#t~post6 < 10);havoc #t~post6; {32386#false} is VALID [2022-04-08 12:37:02,948 INFO L290 TraceCheckUtils]: 91: Hoare triple {32386#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {32386#false} is VALID [2022-04-08 12:37:02,948 INFO L290 TraceCheckUtils]: 90: Hoare triple {32667#(<= |main_#t~post8| 9)} assume !(#t~post8 < 10);havoc #t~post8; {32386#false} is VALID [2022-04-08 12:37:02,948 INFO L290 TraceCheckUtils]: 89: Hoare triple {32642#(<= ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {32667#(<= |main_#t~post8| 9)} is VALID [2022-04-08 12:37:02,949 INFO L290 TraceCheckUtils]: 88: Hoare triple {32642#(<= ~counter~0 9)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {32642#(<= ~counter~0 9)} is VALID [2022-04-08 12:37:02,949 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {32385#true} {32642#(<= ~counter~0 9)} #98#return; {32642#(<= ~counter~0 9)} is VALID [2022-04-08 12:37:02,949 INFO L290 TraceCheckUtils]: 86: Hoare triple {32385#true} assume true; {32385#true} is VALID [2022-04-08 12:37:02,949 INFO L290 TraceCheckUtils]: 85: Hoare triple {32385#true} assume !(0 == ~cond); {32385#true} is VALID [2022-04-08 12:37:02,949 INFO L290 TraceCheckUtils]: 84: Hoare triple {32385#true} ~cond := #in~cond; {32385#true} is VALID [2022-04-08 12:37:02,949 INFO L272 TraceCheckUtils]: 83: Hoare triple {32642#(<= ~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)); {32385#true} is VALID [2022-04-08 12:37:02,949 INFO L290 TraceCheckUtils]: 82: Hoare triple {32642#(<= ~counter~0 9)} assume !!(#t~post8 < 10);havoc #t~post8; {32642#(<= ~counter~0 9)} is VALID [2022-04-08 12:37:02,950 INFO L290 TraceCheckUtils]: 81: Hoare triple {32617#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {32642#(<= ~counter~0 9)} is VALID [2022-04-08 12:37:02,950 INFO L290 TraceCheckUtils]: 80: Hoare triple {32617#(<= ~counter~0 8)} assume !(~r~0 > 0); {32617#(<= ~counter~0 8)} is VALID [2022-04-08 12:37:02,951 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {32385#true} {32617#(<= ~counter~0 8)} #96#return; {32617#(<= ~counter~0 8)} is VALID [2022-04-08 12:37:02,951 INFO L290 TraceCheckUtils]: 78: Hoare triple {32385#true} assume true; {32385#true} is VALID [2022-04-08 12:37:02,951 INFO L290 TraceCheckUtils]: 77: Hoare triple {32385#true} assume !(0 == ~cond); {32385#true} is VALID [2022-04-08 12:37:02,951 INFO L290 TraceCheckUtils]: 76: Hoare triple {32385#true} ~cond := #in~cond; {32385#true} is VALID [2022-04-08 12:37:02,951 INFO L272 TraceCheckUtils]: 75: Hoare triple {32617#(<= ~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)); {32385#true} is VALID [2022-04-08 12:37:02,951 INFO L290 TraceCheckUtils]: 74: Hoare triple {32617#(<= ~counter~0 8)} assume !!(#t~post7 < 10);havoc #t~post7; {32617#(<= ~counter~0 8)} is VALID [2022-04-08 12:37:02,952 INFO L290 TraceCheckUtils]: 73: Hoare triple {32592#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {32617#(<= ~counter~0 8)} is VALID [2022-04-08 12:37:02,952 INFO L290 TraceCheckUtils]: 72: Hoare triple {32592#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {32592#(<= ~counter~0 7)} is VALID [2022-04-08 12:37:02,953 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {32385#true} {32592#(<= ~counter~0 7)} #96#return; {32592#(<= ~counter~0 7)} is VALID [2022-04-08 12:37:02,953 INFO L290 TraceCheckUtils]: 70: Hoare triple {32385#true} assume true; {32385#true} is VALID [2022-04-08 12:37:02,953 INFO L290 TraceCheckUtils]: 69: Hoare triple {32385#true} assume !(0 == ~cond); {32385#true} is VALID [2022-04-08 12:37:02,953 INFO L290 TraceCheckUtils]: 68: Hoare triple {32385#true} ~cond := #in~cond; {32385#true} is VALID [2022-04-08 12:37:02,953 INFO L272 TraceCheckUtils]: 67: Hoare triple {32592#(<= ~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)); {32385#true} is VALID [2022-04-08 12:37:02,953 INFO L290 TraceCheckUtils]: 66: Hoare triple {32592#(<= ~counter~0 7)} assume !!(#t~post7 < 10);havoc #t~post7; {32592#(<= ~counter~0 7)} is VALID [2022-04-08 12:37:02,954 INFO L290 TraceCheckUtils]: 65: Hoare triple {32567#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {32592#(<= ~counter~0 7)} is VALID [2022-04-08 12:37:02,954 INFO L290 TraceCheckUtils]: 64: Hoare triple {32567#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {32567#(<= ~counter~0 6)} is VALID [2022-04-08 12:37:02,954 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {32385#true} {32567#(<= ~counter~0 6)} #96#return; {32567#(<= ~counter~0 6)} is VALID [2022-04-08 12:37:02,954 INFO L290 TraceCheckUtils]: 62: Hoare triple {32385#true} assume true; {32385#true} is VALID [2022-04-08 12:37:02,954 INFO L290 TraceCheckUtils]: 61: Hoare triple {32385#true} assume !(0 == ~cond); {32385#true} is VALID [2022-04-08 12:37:02,954 INFO L290 TraceCheckUtils]: 60: Hoare triple {32385#true} ~cond := #in~cond; {32385#true} is VALID [2022-04-08 12:37:02,954 INFO L272 TraceCheckUtils]: 59: Hoare triple {32567#(<= ~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)); {32385#true} is VALID [2022-04-08 12:37:02,955 INFO L290 TraceCheckUtils]: 58: Hoare triple {32567#(<= ~counter~0 6)} assume !!(#t~post7 < 10);havoc #t~post7; {32567#(<= ~counter~0 6)} is VALID [2022-04-08 12:37:02,955 INFO L290 TraceCheckUtils]: 57: Hoare triple {32542#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {32567#(<= ~counter~0 6)} is VALID [2022-04-08 12:37:02,955 INFO L290 TraceCheckUtils]: 56: Hoare triple {32542#(<= ~counter~0 5)} assume !!(0 != ~r~0); {32542#(<= ~counter~0 5)} is VALID [2022-04-08 12:37:02,956 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {32385#true} {32542#(<= ~counter~0 5)} #94#return; {32542#(<= ~counter~0 5)} is VALID [2022-04-08 12:37:02,956 INFO L290 TraceCheckUtils]: 54: Hoare triple {32385#true} assume true; {32385#true} is VALID [2022-04-08 12:37:02,956 INFO L290 TraceCheckUtils]: 53: Hoare triple {32385#true} assume !(0 == ~cond); {32385#true} is VALID [2022-04-08 12:37:02,956 INFO L290 TraceCheckUtils]: 52: Hoare triple {32385#true} ~cond := #in~cond; {32385#true} is VALID [2022-04-08 12:37:02,956 INFO L272 TraceCheckUtils]: 51: Hoare triple {32542#(<= ~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)); {32385#true} is VALID [2022-04-08 12:37:02,956 INFO L290 TraceCheckUtils]: 50: Hoare triple {32542#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {32542#(<= ~counter~0 5)} is VALID [2022-04-08 12:37:02,957 INFO L290 TraceCheckUtils]: 49: Hoare triple {32517#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {32542#(<= ~counter~0 5)} is VALID [2022-04-08 12:37:02,957 INFO L290 TraceCheckUtils]: 48: Hoare triple {32517#(<= ~counter~0 4)} assume !(~r~0 < 0); {32517#(<= ~counter~0 4)} is VALID [2022-04-08 12:37:02,957 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {32385#true} {32517#(<= ~counter~0 4)} #98#return; {32517#(<= ~counter~0 4)} is VALID [2022-04-08 12:37:02,958 INFO L290 TraceCheckUtils]: 46: Hoare triple {32385#true} assume true; {32385#true} is VALID [2022-04-08 12:37:02,958 INFO L290 TraceCheckUtils]: 45: Hoare triple {32385#true} assume !(0 == ~cond); {32385#true} is VALID [2022-04-08 12:37:02,958 INFO L290 TraceCheckUtils]: 44: Hoare triple {32385#true} ~cond := #in~cond; {32385#true} is VALID [2022-04-08 12:37:02,958 INFO L272 TraceCheckUtils]: 43: Hoare triple {32517#(<= ~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)); {32385#true} is VALID [2022-04-08 12:37:02,958 INFO L290 TraceCheckUtils]: 42: Hoare triple {32517#(<= ~counter~0 4)} assume !!(#t~post8 < 10);havoc #t~post8; {32517#(<= ~counter~0 4)} is VALID [2022-04-08 12:37:02,958 INFO L290 TraceCheckUtils]: 41: Hoare triple {32492#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {32517#(<= ~counter~0 4)} is VALID [2022-04-08 12:37:02,959 INFO L290 TraceCheckUtils]: 40: Hoare triple {32492#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {32492#(<= ~counter~0 3)} is VALID [2022-04-08 12:37:02,959 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {32385#true} {32492#(<= ~counter~0 3)} #98#return; {32492#(<= ~counter~0 3)} is VALID [2022-04-08 12:37:02,959 INFO L290 TraceCheckUtils]: 38: Hoare triple {32385#true} assume true; {32385#true} is VALID [2022-04-08 12:37:02,959 INFO L290 TraceCheckUtils]: 37: Hoare triple {32385#true} assume !(0 == ~cond); {32385#true} is VALID [2022-04-08 12:37:02,959 INFO L290 TraceCheckUtils]: 36: Hoare triple {32385#true} ~cond := #in~cond; {32385#true} is VALID [2022-04-08 12:37:02,959 INFO L272 TraceCheckUtils]: 35: Hoare triple {32492#(<= ~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)); {32385#true} is VALID [2022-04-08 12:37:02,959 INFO L290 TraceCheckUtils]: 34: Hoare triple {32492#(<= ~counter~0 3)} assume !!(#t~post8 < 10);havoc #t~post8; {32492#(<= ~counter~0 3)} is VALID [2022-04-08 12:37:02,960 INFO L290 TraceCheckUtils]: 33: Hoare triple {32467#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {32492#(<= ~counter~0 3)} is VALID [2022-04-08 12:37:02,960 INFO L290 TraceCheckUtils]: 32: Hoare triple {32467#(<= ~counter~0 2)} assume !(~r~0 > 0); {32467#(<= ~counter~0 2)} is VALID [2022-04-08 12:37:02,961 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {32385#true} {32467#(<= ~counter~0 2)} #96#return; {32467#(<= ~counter~0 2)} is VALID [2022-04-08 12:37:02,961 INFO L290 TraceCheckUtils]: 30: Hoare triple {32385#true} assume true; {32385#true} is VALID [2022-04-08 12:37:02,961 INFO L290 TraceCheckUtils]: 29: Hoare triple {32385#true} assume !(0 == ~cond); {32385#true} is VALID [2022-04-08 12:37:02,961 INFO L290 TraceCheckUtils]: 28: Hoare triple {32385#true} ~cond := #in~cond; {32385#true} is VALID [2022-04-08 12:37:02,961 INFO L272 TraceCheckUtils]: 27: Hoare triple {32467#(<= ~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)); {32385#true} is VALID [2022-04-08 12:37:02,961 INFO L290 TraceCheckUtils]: 26: Hoare triple {32467#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {32467#(<= ~counter~0 2)} is VALID [2022-04-08 12:37:02,962 INFO L290 TraceCheckUtils]: 25: Hoare triple {32442#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {32467#(<= ~counter~0 2)} is VALID [2022-04-08 12:37:02,962 INFO L290 TraceCheckUtils]: 24: Hoare triple {32442#(<= ~counter~0 1)} assume !!(0 != ~r~0); {32442#(<= ~counter~0 1)} is VALID [2022-04-08 12:37:02,962 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {32385#true} {32442#(<= ~counter~0 1)} #94#return; {32442#(<= ~counter~0 1)} is VALID [2022-04-08 12:37:02,962 INFO L290 TraceCheckUtils]: 22: Hoare triple {32385#true} assume true; {32385#true} is VALID [2022-04-08 12:37:02,962 INFO L290 TraceCheckUtils]: 21: Hoare triple {32385#true} assume !(0 == ~cond); {32385#true} is VALID [2022-04-08 12:37:02,962 INFO L290 TraceCheckUtils]: 20: Hoare triple {32385#true} ~cond := #in~cond; {32385#true} is VALID [2022-04-08 12:37:02,963 INFO L272 TraceCheckUtils]: 19: Hoare triple {32442#(<= ~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)); {32385#true} is VALID [2022-04-08 12:37:02,963 INFO L290 TraceCheckUtils]: 18: Hoare triple {32442#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {32442#(<= ~counter~0 1)} is VALID [2022-04-08 12:37:02,963 INFO L290 TraceCheckUtils]: 17: Hoare triple {32393#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {32442#(<= ~counter~0 1)} is VALID [2022-04-08 12:37:02,963 INFO L290 TraceCheckUtils]: 16: Hoare triple {32393#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {32393#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:02,964 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {32385#true} {32393#(<= ~counter~0 0)} #92#return; {32393#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:02,964 INFO L290 TraceCheckUtils]: 14: Hoare triple {32385#true} assume true; {32385#true} is VALID [2022-04-08 12:37:02,964 INFO L290 TraceCheckUtils]: 13: Hoare triple {32385#true} assume !(0 == ~cond); {32385#true} is VALID [2022-04-08 12:37:02,964 INFO L290 TraceCheckUtils]: 12: Hoare triple {32385#true} ~cond := #in~cond; {32385#true} is VALID [2022-04-08 12:37:02,964 INFO L272 TraceCheckUtils]: 11: Hoare triple {32393#(<= ~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)); {32385#true} is VALID [2022-04-08 12:37:02,964 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {32385#true} {32393#(<= ~counter~0 0)} #90#return; {32393#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:02,964 INFO L290 TraceCheckUtils]: 9: Hoare triple {32385#true} assume true; {32385#true} is VALID [2022-04-08 12:37:02,965 INFO L290 TraceCheckUtils]: 8: Hoare triple {32385#true} assume !(0 == ~cond); {32385#true} is VALID [2022-04-08 12:37:02,965 INFO L290 TraceCheckUtils]: 7: Hoare triple {32385#true} ~cond := #in~cond; {32385#true} is VALID [2022-04-08 12:37:02,965 INFO L272 TraceCheckUtils]: 6: Hoare triple {32393#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {32385#true} is VALID [2022-04-08 12:37:02,965 INFO L290 TraceCheckUtils]: 5: Hoare triple {32393#(<= ~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; {32393#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:02,965 INFO L272 TraceCheckUtils]: 4: Hoare triple {32393#(<= ~counter~0 0)} call #t~ret9 := main(); {32393#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:02,965 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {32393#(<= ~counter~0 0)} {32385#true} #102#return; {32393#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:02,966 INFO L290 TraceCheckUtils]: 2: Hoare triple {32393#(<= ~counter~0 0)} assume true; {32393#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:02,966 INFO L290 TraceCheckUtils]: 1: Hoare triple {32385#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; {32393#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:02,966 INFO L272 TraceCheckUtils]: 0: Hoare triple {32385#true} call ULTIMATE.init(); {32385#true} is VALID [2022-04-08 12:37:02,966 INFO L134 CoverageAnalysis]: Checked inductivity of 216 backedges. 22 proven. 46 refuted. 0 times theorem prover too weak. 148 trivial. 0 not checked. [2022-04-08 12:37:02,966 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:37:02,967 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1230152712] [2022-04-08 12:37:02,967 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:37:02,967 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2091016983] [2022-04-08 12:37:02,967 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2091016983] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:37:02,967 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:37:02,967 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 13 [2022-04-08 12:37:02,967 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:37:02,967 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2125787487] [2022-04-08 12:37:02,967 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2125787487] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:37:02,967 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:37:02,967 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-08 12:37:02,967 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [94380147] [2022-04-08 12:37:02,967 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:37:02,968 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 5.230769230769231) internal successors, (68), 12 states have internal predecessors, (68), 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 97 [2022-04-08 12:37:02,968 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:37:02,968 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 5.230769230769231) internal successors, (68), 12 states have internal predecessors, (68), 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-08 12:37:03,027 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 94 edges. 94 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:37:03,027 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-08 12:37:03,027 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:37:03,027 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-08 12:37:03,027 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=68, Invalid=88, Unknown=0, NotChecked=0, Total=156 [2022-04-08 12:37:03,028 INFO L87 Difference]: Start difference. First operand 346 states and 459 transitions. Second operand has 13 states, 13 states have (on average 5.230769230769231) internal successors, (68), 12 states have internal predecessors, (68), 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-08 12:37:04,121 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:37:04,121 INFO L93 Difference]: Finished difference Result 471 states and 643 transitions. [2022-04-08 12:37:04,121 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-04-08 12:37:04,121 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 5.230769230769231) internal successors, (68), 12 states have internal predecessors, (68), 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 97 [2022-04-08 12:37:04,122 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:37:04,122 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 5.230769230769231) internal successors, (68), 12 states have internal predecessors, (68), 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-08 12:37:04,123 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 218 transitions. [2022-04-08 12:37:04,124 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 5.230769230769231) internal successors, (68), 12 states have internal predecessors, (68), 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-08 12:37:04,125 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 218 transitions. [2022-04-08 12:37:04,125 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 218 transitions. [2022-04-08 12:37:04,292 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 218 edges. 218 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:37:04,298 INFO L225 Difference]: With dead ends: 471 [2022-04-08 12:37:04,298 INFO L226 Difference]: Without dead ends: 356 [2022-04-08 12:37:04,299 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 200 GetRequests, 181 SyntacticMatches, 1 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 39 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=138, Invalid=242, Unknown=0, NotChecked=0, Total=380 [2022-04-08 12:37:04,299 INFO L913 BasicCegarLoop]: 57 mSDtfsCounter, 124 mSDsluCounter, 196 mSDsCounter, 0 mSdLazyCounter, 131 mSolverCounterSat, 103 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 124 SdHoareTripleChecker+Valid, 253 SdHoareTripleChecker+Invalid, 234 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 103 IncrementalHoareTripleChecker+Valid, 131 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 12:37:04,299 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [124 Valid, 253 Invalid, 234 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [103 Valid, 131 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 12:37:04,300 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 356 states. [2022-04-08 12:37:04,794 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 356 to 348. [2022-04-08 12:37:04,795 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:37:04,795 INFO L82 GeneralOperation]: Start isEquivalent. First operand 356 states. Second operand has 348 states, 260 states have (on average 1.2076923076923076) internal successors, (314), 264 states have internal predecessors, (314), 74 states have call successors, (74), 15 states have call predecessors, (74), 13 states have return successors, (72), 68 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 12:37:04,795 INFO L74 IsIncluded]: Start isIncluded. First operand 356 states. Second operand has 348 states, 260 states have (on average 1.2076923076923076) internal successors, (314), 264 states have internal predecessors, (314), 74 states have call successors, (74), 15 states have call predecessors, (74), 13 states have return successors, (72), 68 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 12:37:04,796 INFO L87 Difference]: Start difference. First operand 356 states. Second operand has 348 states, 260 states have (on average 1.2076923076923076) internal successors, (314), 264 states have internal predecessors, (314), 74 states have call successors, (74), 15 states have call predecessors, (74), 13 states have return successors, (72), 68 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 12:37:04,806 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:37:04,806 INFO L93 Difference]: Finished difference Result 356 states and 468 transitions. [2022-04-08 12:37:04,806 INFO L276 IsEmpty]: Start isEmpty. Operand 356 states and 468 transitions. [2022-04-08 12:37:04,806 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:37:04,806 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:37:04,807 INFO L74 IsIncluded]: Start isIncluded. First operand has 348 states, 260 states have (on average 1.2076923076923076) internal successors, (314), 264 states have internal predecessors, (314), 74 states have call successors, (74), 15 states have call predecessors, (74), 13 states have return successors, (72), 68 states have call predecessors, (72), 72 states have call successors, (72) Second operand 356 states. [2022-04-08 12:37:04,807 INFO L87 Difference]: Start difference. First operand has 348 states, 260 states have (on average 1.2076923076923076) internal successors, (314), 264 states have internal predecessors, (314), 74 states have call successors, (74), 15 states have call predecessors, (74), 13 states have return successors, (72), 68 states have call predecessors, (72), 72 states have call successors, (72) Second operand 356 states. [2022-04-08 12:37:04,812 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:37:04,812 INFO L93 Difference]: Finished difference Result 356 states and 468 transitions. [2022-04-08 12:37:04,812 INFO L276 IsEmpty]: Start isEmpty. Operand 356 states and 468 transitions. [2022-04-08 12:37:04,813 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:37:04,813 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:37:04,813 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:37:04,813 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:37:04,813 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 348 states, 260 states have (on average 1.2076923076923076) internal successors, (314), 264 states have internal predecessors, (314), 74 states have call successors, (74), 15 states have call predecessors, (74), 13 states have return successors, (72), 68 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 12:37:04,819 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 348 states to 348 states and 460 transitions. [2022-04-08 12:37:04,819 INFO L78 Accepts]: Start accepts. Automaton has 348 states and 460 transitions. Word has length 97 [2022-04-08 12:37:04,820 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:37:04,820 INFO L478 AbstractCegarLoop]: Abstraction has 348 states and 460 transitions. [2022-04-08 12:37:04,820 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 5.230769230769231) internal successors, (68), 12 states have internal predecessors, (68), 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-08 12:37:04,820 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 348 states and 460 transitions. [2022-04-08 12:37:07,317 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 460 edges. 459 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 12:37:07,317 INFO L276 IsEmpty]: Start isEmpty. Operand 348 states and 460 transitions. [2022-04-08 12:37:07,318 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 100 [2022-04-08 12:37:07,318 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:37:07,318 INFO L499 BasicCegarLoop]: trace histogram [10, 9, 9, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 12:37:07,337 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (29)] Forceful destruction successful, exit code 0 [2022-04-08 12:37:07,518 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 29 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable27 [2022-04-08 12:37:07,518 INFO L403 AbstractCegarLoop]: === Iteration 29 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:37:07,518 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:37:07,519 INFO L85 PathProgramCache]: Analyzing trace with hash 1020733748, now seen corresponding path program 7 times [2022-04-08 12:37:07,519 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:37:07,519 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1806623975] [2022-04-08 12:37:07,519 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:37:07,519 INFO L85 PathProgramCache]: Analyzing trace with hash 1020733748, now seen corresponding path program 8 times [2022-04-08 12:37:07,519 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:37:07,519 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [450109727] [2022-04-08 12:37:07,519 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:37:07,519 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:37:07,529 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:37:07,529 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1845273995] [2022-04-08 12:37:07,529 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:37:07,529 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:37:07,529 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:37:07,537 INFO L229 MonitoredProcess]: Starting monitored process 30 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 12:37:07,538 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (30)] Waiting until timeout for monitored process [2022-04-08 12:37:07,584 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:37:07,584 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:37:07,585 INFO L263 TraceCheckSpWp]: Trace formula consists of 246 conjuncts, 3 conjunts are in the unsatisfiable core [2022-04-08 12:37:07,602 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:37:07,603 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:37:07,855 INFO L272 TraceCheckUtils]: 0: Hoare triple {35343#true} call ULTIMATE.init(); {35343#true} is VALID [2022-04-08 12:37:07,855 INFO L290 TraceCheckUtils]: 1: Hoare triple {35343#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; {35343#true} is VALID [2022-04-08 12:37:07,855 INFO L290 TraceCheckUtils]: 2: Hoare triple {35343#true} assume true; {35343#true} is VALID [2022-04-08 12:37:07,855 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {35343#true} {35343#true} #102#return; {35343#true} is VALID [2022-04-08 12:37:07,855 INFO L272 TraceCheckUtils]: 4: Hoare triple {35343#true} call #t~ret9 := main(); {35343#true} is VALID [2022-04-08 12:37:07,855 INFO L290 TraceCheckUtils]: 5: Hoare triple {35343#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; {35343#true} is VALID [2022-04-08 12:37:07,855 INFO L272 TraceCheckUtils]: 6: Hoare triple {35343#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {35343#true} is VALID [2022-04-08 12:37:07,855 INFO L290 TraceCheckUtils]: 7: Hoare triple {35343#true} ~cond := #in~cond; {35343#true} is VALID [2022-04-08 12:37:07,855 INFO L290 TraceCheckUtils]: 8: Hoare triple {35343#true} assume !(0 == ~cond); {35343#true} is VALID [2022-04-08 12:37:07,855 INFO L290 TraceCheckUtils]: 9: Hoare triple {35343#true} assume true; {35343#true} is VALID [2022-04-08 12:37:07,855 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {35343#true} {35343#true} #90#return; {35343#true} is VALID [2022-04-08 12:37:07,855 INFO L272 TraceCheckUtils]: 11: Hoare triple {35343#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)); {35343#true} is VALID [2022-04-08 12:37:07,856 INFO L290 TraceCheckUtils]: 12: Hoare triple {35343#true} ~cond := #in~cond; {35343#true} is VALID [2022-04-08 12:37:07,856 INFO L290 TraceCheckUtils]: 13: Hoare triple {35343#true} assume !(0 == ~cond); {35343#true} is VALID [2022-04-08 12:37:07,856 INFO L290 TraceCheckUtils]: 14: Hoare triple {35343#true} assume true; {35343#true} is VALID [2022-04-08 12:37:07,856 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {35343#true} {35343#true} #92#return; {35343#true} is VALID [2022-04-08 12:37:07,856 INFO L290 TraceCheckUtils]: 16: Hoare triple {35343#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {35343#true} is VALID [2022-04-08 12:37:07,856 INFO L290 TraceCheckUtils]: 17: Hoare triple {35343#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {35343#true} is VALID [2022-04-08 12:37:07,856 INFO L290 TraceCheckUtils]: 18: Hoare triple {35343#true} assume !!(#t~post6 < 10);havoc #t~post6; {35343#true} is VALID [2022-04-08 12:37:07,856 INFO L272 TraceCheckUtils]: 19: Hoare triple {35343#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)); {35343#true} is VALID [2022-04-08 12:37:07,856 INFO L290 TraceCheckUtils]: 20: Hoare triple {35343#true} ~cond := #in~cond; {35343#true} is VALID [2022-04-08 12:37:07,856 INFO L290 TraceCheckUtils]: 21: Hoare triple {35343#true} assume !(0 == ~cond); {35343#true} is VALID [2022-04-08 12:37:07,856 INFO L290 TraceCheckUtils]: 22: Hoare triple {35343#true} assume true; {35343#true} is VALID [2022-04-08 12:37:07,856 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {35343#true} {35343#true} #94#return; {35343#true} is VALID [2022-04-08 12:37:07,856 INFO L290 TraceCheckUtils]: 24: Hoare triple {35343#true} assume !!(0 != ~r~0); {35343#true} is VALID [2022-04-08 12:37:07,856 INFO L290 TraceCheckUtils]: 25: Hoare triple {35343#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {35343#true} is VALID [2022-04-08 12:37:07,856 INFO L290 TraceCheckUtils]: 26: Hoare triple {35343#true} assume !!(#t~post7 < 10);havoc #t~post7; {35343#true} is VALID [2022-04-08 12:37:07,856 INFO L272 TraceCheckUtils]: 27: Hoare triple {35343#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)); {35343#true} is VALID [2022-04-08 12:37:07,856 INFO L290 TraceCheckUtils]: 28: Hoare triple {35343#true} ~cond := #in~cond; {35343#true} is VALID [2022-04-08 12:37:07,857 INFO L290 TraceCheckUtils]: 29: Hoare triple {35343#true} assume !(0 == ~cond); {35343#true} is VALID [2022-04-08 12:37:07,857 INFO L290 TraceCheckUtils]: 30: Hoare triple {35343#true} assume true; {35343#true} is VALID [2022-04-08 12:37:07,857 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {35343#true} {35343#true} #96#return; {35343#true} is VALID [2022-04-08 12:37:07,857 INFO L290 TraceCheckUtils]: 32: Hoare triple {35343#true} assume !(~r~0 > 0); {35343#true} is VALID [2022-04-08 12:37:07,857 INFO L290 TraceCheckUtils]: 33: Hoare triple {35343#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {35343#true} is VALID [2022-04-08 12:37:07,857 INFO L290 TraceCheckUtils]: 34: Hoare triple {35343#true} assume !!(#t~post8 < 10);havoc #t~post8; {35343#true} is VALID [2022-04-08 12:37:07,857 INFO L272 TraceCheckUtils]: 35: Hoare triple {35343#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)); {35343#true} is VALID [2022-04-08 12:37:07,857 INFO L290 TraceCheckUtils]: 36: Hoare triple {35343#true} ~cond := #in~cond; {35343#true} is VALID [2022-04-08 12:37:07,857 INFO L290 TraceCheckUtils]: 37: Hoare triple {35343#true} assume !(0 == ~cond); {35343#true} is VALID [2022-04-08 12:37:07,857 INFO L290 TraceCheckUtils]: 38: Hoare triple {35343#true} assume true; {35343#true} is VALID [2022-04-08 12:37:07,857 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {35343#true} {35343#true} #98#return; {35343#true} is VALID [2022-04-08 12:37:07,857 INFO L290 TraceCheckUtils]: 40: Hoare triple {35343#true} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {35343#true} is VALID [2022-04-08 12:37:07,857 INFO L290 TraceCheckUtils]: 41: Hoare triple {35343#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {35343#true} is VALID [2022-04-08 12:37:07,857 INFO L290 TraceCheckUtils]: 42: Hoare triple {35343#true} assume !!(#t~post8 < 10);havoc #t~post8; {35343#true} is VALID [2022-04-08 12:37:07,858 INFO L272 TraceCheckUtils]: 43: Hoare triple {35343#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)); {35343#true} is VALID [2022-04-08 12:37:07,858 INFO L290 TraceCheckUtils]: 44: Hoare triple {35343#true} ~cond := #in~cond; {35343#true} is VALID [2022-04-08 12:37:07,858 INFO L290 TraceCheckUtils]: 45: Hoare triple {35343#true} assume !(0 == ~cond); {35343#true} is VALID [2022-04-08 12:37:07,858 INFO L290 TraceCheckUtils]: 46: Hoare triple {35343#true} assume true; {35343#true} is VALID [2022-04-08 12:37:07,858 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {35343#true} {35343#true} #98#return; {35343#true} is VALID [2022-04-08 12:37:07,858 INFO L290 TraceCheckUtils]: 48: Hoare triple {35343#true} assume !(~r~0 < 0); {35343#true} is VALID [2022-04-08 12:37:07,858 INFO L290 TraceCheckUtils]: 49: Hoare triple {35343#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {35343#true} is VALID [2022-04-08 12:37:07,858 INFO L290 TraceCheckUtils]: 50: Hoare triple {35343#true} assume !!(#t~post6 < 10);havoc #t~post6; {35343#true} is VALID [2022-04-08 12:37:07,858 INFO L272 TraceCheckUtils]: 51: Hoare triple {35343#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)); {35343#true} is VALID [2022-04-08 12:37:07,858 INFO L290 TraceCheckUtils]: 52: Hoare triple {35343#true} ~cond := #in~cond; {35343#true} is VALID [2022-04-08 12:37:07,858 INFO L290 TraceCheckUtils]: 53: Hoare triple {35343#true} assume !(0 == ~cond); {35343#true} is VALID [2022-04-08 12:37:07,858 INFO L290 TraceCheckUtils]: 54: Hoare triple {35343#true} assume true; {35343#true} is VALID [2022-04-08 12:37:07,858 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {35343#true} {35343#true} #94#return; {35343#true} is VALID [2022-04-08 12:37:07,858 INFO L290 TraceCheckUtils]: 56: Hoare triple {35343#true} assume !!(0 != ~r~0); {35343#true} is VALID [2022-04-08 12:37:07,868 INFO L290 TraceCheckUtils]: 57: Hoare triple {35343#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {35343#true} is VALID [2022-04-08 12:37:07,868 INFO L290 TraceCheckUtils]: 58: Hoare triple {35343#true} assume !!(#t~post7 < 10);havoc #t~post7; {35343#true} is VALID [2022-04-08 12:37:07,868 INFO L272 TraceCheckUtils]: 59: Hoare triple {35343#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)); {35343#true} is VALID [2022-04-08 12:37:07,868 INFO L290 TraceCheckUtils]: 60: Hoare triple {35343#true} ~cond := #in~cond; {35343#true} is VALID [2022-04-08 12:37:07,868 INFO L290 TraceCheckUtils]: 61: Hoare triple {35343#true} assume !(0 == ~cond); {35343#true} is VALID [2022-04-08 12:37:07,868 INFO L290 TraceCheckUtils]: 62: Hoare triple {35343#true} assume true; {35343#true} is VALID [2022-04-08 12:37:07,868 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {35343#true} {35343#true} #96#return; {35343#true} is VALID [2022-04-08 12:37:07,868 INFO L290 TraceCheckUtils]: 64: Hoare triple {35343#true} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {35343#true} is VALID [2022-04-08 12:37:07,868 INFO L290 TraceCheckUtils]: 65: Hoare triple {35343#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {35343#true} is VALID [2022-04-08 12:37:07,868 INFO L290 TraceCheckUtils]: 66: Hoare triple {35343#true} assume !!(#t~post7 < 10);havoc #t~post7; {35343#true} is VALID [2022-04-08 12:37:07,868 INFO L272 TraceCheckUtils]: 67: Hoare triple {35343#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)); {35343#true} is VALID [2022-04-08 12:37:07,868 INFO L290 TraceCheckUtils]: 68: Hoare triple {35343#true} ~cond := #in~cond; {35343#true} is VALID [2022-04-08 12:37:07,868 INFO L290 TraceCheckUtils]: 69: Hoare triple {35343#true} assume !(0 == ~cond); {35343#true} is VALID [2022-04-08 12:37:07,868 INFO L290 TraceCheckUtils]: 70: Hoare triple {35343#true} assume true; {35343#true} is VALID [2022-04-08 12:37:07,868 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {35343#true} {35343#true} #96#return; {35343#true} is VALID [2022-04-08 12:37:07,869 INFO L290 TraceCheckUtils]: 72: Hoare triple {35343#true} assume !(~r~0 > 0); {35564#(not (< 0 main_~r~0))} is VALID [2022-04-08 12:37:07,869 INFO L290 TraceCheckUtils]: 73: Hoare triple {35564#(not (< 0 main_~r~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {35564#(not (< 0 main_~r~0))} is VALID [2022-04-08 12:37:07,869 INFO L290 TraceCheckUtils]: 74: Hoare triple {35564#(not (< 0 main_~r~0))} assume !!(#t~post8 < 10);havoc #t~post8; {35564#(not (< 0 main_~r~0))} is VALID [2022-04-08 12:37:07,869 INFO L272 TraceCheckUtils]: 75: Hoare triple {35564#(not (< 0 main_~r~0))} 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)); {35343#true} is VALID [2022-04-08 12:37:07,870 INFO L290 TraceCheckUtils]: 76: Hoare triple {35343#true} ~cond := #in~cond; {35343#true} is VALID [2022-04-08 12:37:07,870 INFO L290 TraceCheckUtils]: 77: Hoare triple {35343#true} assume !(0 == ~cond); {35343#true} is VALID [2022-04-08 12:37:07,870 INFO L290 TraceCheckUtils]: 78: Hoare triple {35343#true} assume true; {35343#true} is VALID [2022-04-08 12:37:07,870 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {35343#true} {35564#(not (< 0 main_~r~0))} #98#return; {35564#(not (< 0 main_~r~0))} is VALID [2022-04-08 12:37:07,870 INFO L290 TraceCheckUtils]: 80: Hoare triple {35564#(not (< 0 main_~r~0))} assume !(~r~0 < 0); {35589#(and (not (< 0 main_~r~0)) (not (< main_~r~0 0)))} is VALID [2022-04-08 12:37:07,871 INFO L290 TraceCheckUtils]: 81: Hoare triple {35589#(and (not (< 0 main_~r~0)) (not (< main_~r~0 0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {35589#(and (not (< 0 main_~r~0)) (not (< main_~r~0 0)))} is VALID [2022-04-08 12:37:07,871 INFO L290 TraceCheckUtils]: 82: Hoare triple {35589#(and (not (< 0 main_~r~0)) (not (< main_~r~0 0)))} assume !!(#t~post6 < 10);havoc #t~post6; {35589#(and (not (< 0 main_~r~0)) (not (< main_~r~0 0)))} is VALID [2022-04-08 12:37:07,871 INFO L272 TraceCheckUtils]: 83: Hoare triple {35589#(and (not (< 0 main_~r~0)) (not (< main_~r~0 0)))} 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)); {35343#true} is VALID [2022-04-08 12:37:07,871 INFO L290 TraceCheckUtils]: 84: Hoare triple {35343#true} ~cond := #in~cond; {35343#true} is VALID [2022-04-08 12:37:07,871 INFO L290 TraceCheckUtils]: 85: Hoare triple {35343#true} assume !(0 == ~cond); {35343#true} is VALID [2022-04-08 12:37:07,871 INFO L290 TraceCheckUtils]: 86: Hoare triple {35343#true} assume true; {35343#true} is VALID [2022-04-08 12:37:07,872 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {35343#true} {35589#(and (not (< 0 main_~r~0)) (not (< main_~r~0 0)))} #94#return; {35589#(and (not (< 0 main_~r~0)) (not (< main_~r~0 0)))} is VALID [2022-04-08 12:37:07,872 INFO L290 TraceCheckUtils]: 88: Hoare triple {35589#(and (not (< 0 main_~r~0)) (not (< main_~r~0 0)))} assume !!(0 != ~r~0); {35344#false} is VALID [2022-04-08 12:37:07,872 INFO L290 TraceCheckUtils]: 89: Hoare triple {35344#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {35344#false} is VALID [2022-04-08 12:37:07,872 INFO L290 TraceCheckUtils]: 90: Hoare triple {35344#false} assume !(#t~post7 < 10);havoc #t~post7; {35344#false} is VALID [2022-04-08 12:37:07,872 INFO L290 TraceCheckUtils]: 91: Hoare triple {35344#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {35344#false} is VALID [2022-04-08 12:37:07,872 INFO L290 TraceCheckUtils]: 92: Hoare triple {35344#false} assume !(#t~post8 < 10);havoc #t~post8; {35344#false} is VALID [2022-04-08 12:37:07,872 INFO L290 TraceCheckUtils]: 93: Hoare triple {35344#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {35344#false} is VALID [2022-04-08 12:37:07,872 INFO L290 TraceCheckUtils]: 94: Hoare triple {35344#false} assume !(#t~post6 < 10);havoc #t~post6; {35344#false} is VALID [2022-04-08 12:37:07,872 INFO L272 TraceCheckUtils]: 95: Hoare triple {35344#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)); {35344#false} is VALID [2022-04-08 12:37:07,872 INFO L290 TraceCheckUtils]: 96: Hoare triple {35344#false} ~cond := #in~cond; {35344#false} is VALID [2022-04-08 12:37:07,872 INFO L290 TraceCheckUtils]: 97: Hoare triple {35344#false} assume 0 == ~cond; {35344#false} is VALID [2022-04-08 12:37:07,873 INFO L290 TraceCheckUtils]: 98: Hoare triple {35344#false} assume !false; {35344#false} is VALID [2022-04-08 12:37:07,873 INFO L134 CoverageAnalysis]: Checked inductivity of 220 backedges. 52 proven. 0 refuted. 0 times theorem prover too weak. 168 trivial. 0 not checked. [2022-04-08 12:37:07,873 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 12:37:07,873 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:37:07,873 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [450109727] [2022-04-08 12:37:07,873 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:37:07,873 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1845273995] [2022-04-08 12:37:07,873 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1845273995] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:37:07,873 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:37:07,873 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 12:37:07,873 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:37:07,873 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1806623975] [2022-04-08 12:37:07,874 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1806623975] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:37:07,874 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:37:07,874 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 12:37:07,874 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [17952905] [2022-04-08 12:37:07,874 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:37:07,874 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 9.25) internal successors, (37), 4 states have internal predecessors, (37), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) Word has length 99 [2022-04-08 12:37:07,874 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:37:07,874 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 9.25) internal successors, (37), 4 states have internal predecessors, (37), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 12:37:07,910 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-08 12:37:07,910 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-08 12:37:07,910 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:37:07,910 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-08 12:37:07,910 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-04-08 12:37:07,911 INFO L87 Difference]: Start difference. First operand 348 states and 460 transitions. Second operand has 4 states, 4 states have (on average 9.25) internal successors, (37), 4 states have internal predecessors, (37), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 12:37:08,551 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:37:08,551 INFO L93 Difference]: Finished difference Result 508 states and 678 transitions. [2022-04-08 12:37:08,551 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-08 12:37:08,551 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 9.25) internal successors, (37), 4 states have internal predecessors, (37), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) Word has length 99 [2022-04-08 12:37:08,551 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:37:08,551 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 9.25) internal successors, (37), 4 states have internal predecessors, (37), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 12:37:08,552 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 94 transitions. [2022-04-08 12:37:08,552 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 9.25) internal successors, (37), 4 states have internal predecessors, (37), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 12:37:08,553 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 94 transitions. [2022-04-08 12:37:08,553 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 94 transitions. [2022-04-08 12:37:08,615 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 94 edges. 94 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:37:08,621 INFO L225 Difference]: With dead ends: 508 [2022-04-08 12:37:08,621 INFO L226 Difference]: Without dead ends: 366 [2022-04-08 12:37:08,621 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 98 GetRequests, 96 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-04-08 12:37:08,622 INFO L913 BasicCegarLoop]: 53 mSDtfsCounter, 12 mSDsluCounter, 69 mSDsCounter, 0 mSdLazyCounter, 32 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 122 SdHoareTripleChecker+Invalid, 34 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 32 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 12:37:08,622 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 122 Invalid, 34 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 32 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 12:37:08,622 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 366 states. [2022-04-08 12:37:09,073 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 366 to 356. [2022-04-08 12:37:09,073 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:37:09,073 INFO L82 GeneralOperation]: Start isEquivalent. First operand 366 states. Second operand has 356 states, 268 states have (on average 1.212686567164179) internal successors, (325), 272 states have internal predecessors, (325), 74 states have call successors, (74), 15 states have call predecessors, (74), 13 states have return successors, (72), 68 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 12:37:09,074 INFO L74 IsIncluded]: Start isIncluded. First operand 366 states. Second operand has 356 states, 268 states have (on average 1.212686567164179) internal successors, (325), 272 states have internal predecessors, (325), 74 states have call successors, (74), 15 states have call predecessors, (74), 13 states have return successors, (72), 68 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 12:37:09,074 INFO L87 Difference]: Start difference. First operand 366 states. Second operand has 356 states, 268 states have (on average 1.212686567164179) internal successors, (325), 272 states have internal predecessors, (325), 74 states have call successors, (74), 15 states have call predecessors, (74), 13 states have return successors, (72), 68 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 12:37:09,080 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:37:09,080 INFO L93 Difference]: Finished difference Result 366 states and 484 transitions. [2022-04-08 12:37:09,080 INFO L276 IsEmpty]: Start isEmpty. Operand 366 states and 484 transitions. [2022-04-08 12:37:09,081 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:37:09,081 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:37:09,081 INFO L74 IsIncluded]: Start isIncluded. First operand has 356 states, 268 states have (on average 1.212686567164179) internal successors, (325), 272 states have internal predecessors, (325), 74 states have call successors, (74), 15 states have call predecessors, (74), 13 states have return successors, (72), 68 states have call predecessors, (72), 72 states have call successors, (72) Second operand 366 states. [2022-04-08 12:37:09,081 INFO L87 Difference]: Start difference. First operand has 356 states, 268 states have (on average 1.212686567164179) internal successors, (325), 272 states have internal predecessors, (325), 74 states have call successors, (74), 15 states have call predecessors, (74), 13 states have return successors, (72), 68 states have call predecessors, (72), 72 states have call successors, (72) Second operand 366 states. [2022-04-08 12:37:09,087 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:37:09,087 INFO L93 Difference]: Finished difference Result 366 states and 484 transitions. [2022-04-08 12:37:09,087 INFO L276 IsEmpty]: Start isEmpty. Operand 366 states and 484 transitions. [2022-04-08 12:37:09,088 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:37:09,088 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:37:09,088 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:37:09,088 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:37:09,088 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 356 states, 268 states have (on average 1.212686567164179) internal successors, (325), 272 states have internal predecessors, (325), 74 states have call successors, (74), 15 states have call predecessors, (74), 13 states have return successors, (72), 68 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 12:37:09,096 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 356 states to 356 states and 471 transitions. [2022-04-08 12:37:09,096 INFO L78 Accepts]: Start accepts. Automaton has 356 states and 471 transitions. Word has length 99 [2022-04-08 12:37:09,096 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:37:09,096 INFO L478 AbstractCegarLoop]: Abstraction has 356 states and 471 transitions. [2022-04-08 12:37:09,096 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 9.25) internal successors, (37), 4 states have internal predecessors, (37), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-08 12:37:09,096 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 356 states and 471 transitions. [2022-04-08 12:37:11,609 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 471 edges. 470 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 12:37:11,610 INFO L276 IsEmpty]: Start isEmpty. Operand 356 states and 471 transitions. [2022-04-08 12:37:11,610 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 100 [2022-04-08 12:37:11,610 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:37:11,610 INFO L499 BasicCegarLoop]: trace histogram [10, 9, 9, 6, 5, 5, 5, 4, 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, 1, 1, 1, 1, 1] [2022-04-08 12:37:11,626 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (30)] Forceful destruction successful, exit code 0 [2022-04-08 12:37:11,811 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 30 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable28 [2022-04-08 12:37:11,811 INFO L403 AbstractCegarLoop]: === Iteration 30 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:37:11,811 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:37:11,811 INFO L85 PathProgramCache]: Analyzing trace with hash 359487094, now seen corresponding path program 9 times [2022-04-08 12:37:11,811 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:37:11,811 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2116502386] [2022-04-08 12:37:11,812 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:37:11,812 INFO L85 PathProgramCache]: Analyzing trace with hash 359487094, now seen corresponding path program 10 times [2022-04-08 12:37:11,812 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:37:11,812 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [592623077] [2022-04-08 12:37:11,812 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:37:11,812 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:37:11,830 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:37:11,830 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1027671920] [2022-04-08 12:37:11,830 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 12:37:11,830 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:37:11,830 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:37:11,838 INFO L229 MonitoredProcess]: Starting monitored process 31 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 12:37:11,838 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (31)] Waiting until timeout for monitored process [2022-04-08 12:37:11,977 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 12:37:11,977 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:37:11,978 INFO L263 TraceCheckSpWp]: Trace formula consists of 258 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-08 12:37:11,995 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:37:11,996 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:37:12,418 INFO L272 TraceCheckUtils]: 0: Hoare triple {38103#true} call ULTIMATE.init(); {38103#true} is VALID [2022-04-08 12:37:12,419 INFO L290 TraceCheckUtils]: 1: Hoare triple {38103#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; {38111#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:12,419 INFO L290 TraceCheckUtils]: 2: Hoare triple {38111#(<= ~counter~0 0)} assume true; {38111#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:12,419 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38111#(<= ~counter~0 0)} {38103#true} #102#return; {38111#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:12,420 INFO L272 TraceCheckUtils]: 4: Hoare triple {38111#(<= ~counter~0 0)} call #t~ret9 := main(); {38111#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:12,420 INFO L290 TraceCheckUtils]: 5: Hoare triple {38111#(<= ~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; {38111#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:12,420 INFO L272 TraceCheckUtils]: 6: Hoare triple {38111#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {38111#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:12,420 INFO L290 TraceCheckUtils]: 7: Hoare triple {38111#(<= ~counter~0 0)} ~cond := #in~cond; {38111#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:12,421 INFO L290 TraceCheckUtils]: 8: Hoare triple {38111#(<= ~counter~0 0)} assume !(0 == ~cond); {38111#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:12,421 INFO L290 TraceCheckUtils]: 9: Hoare triple {38111#(<= ~counter~0 0)} assume true; {38111#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:12,421 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {38111#(<= ~counter~0 0)} {38111#(<= ~counter~0 0)} #90#return; {38111#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:12,422 INFO L272 TraceCheckUtils]: 11: Hoare triple {38111#(<= ~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)); {38111#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:12,422 INFO L290 TraceCheckUtils]: 12: Hoare triple {38111#(<= ~counter~0 0)} ~cond := #in~cond; {38111#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:12,422 INFO L290 TraceCheckUtils]: 13: Hoare triple {38111#(<= ~counter~0 0)} assume !(0 == ~cond); {38111#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:12,422 INFO L290 TraceCheckUtils]: 14: Hoare triple {38111#(<= ~counter~0 0)} assume true; {38111#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:12,423 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {38111#(<= ~counter~0 0)} {38111#(<= ~counter~0 0)} #92#return; {38111#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:12,423 INFO L290 TraceCheckUtils]: 16: Hoare triple {38111#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {38111#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:12,424 INFO L290 TraceCheckUtils]: 17: Hoare triple {38111#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {38160#(<= ~counter~0 1)} is VALID [2022-04-08 12:37:12,424 INFO L290 TraceCheckUtils]: 18: Hoare triple {38160#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {38160#(<= ~counter~0 1)} is VALID [2022-04-08 12:37:12,425 INFO L272 TraceCheckUtils]: 19: Hoare triple {38160#(<= ~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)); {38160#(<= ~counter~0 1)} is VALID [2022-04-08 12:37:12,425 INFO L290 TraceCheckUtils]: 20: Hoare triple {38160#(<= ~counter~0 1)} ~cond := #in~cond; {38160#(<= ~counter~0 1)} is VALID [2022-04-08 12:37:12,425 INFO L290 TraceCheckUtils]: 21: Hoare triple {38160#(<= ~counter~0 1)} assume !(0 == ~cond); {38160#(<= ~counter~0 1)} is VALID [2022-04-08 12:37:12,425 INFO L290 TraceCheckUtils]: 22: Hoare triple {38160#(<= ~counter~0 1)} assume true; {38160#(<= ~counter~0 1)} is VALID [2022-04-08 12:37:12,426 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {38160#(<= ~counter~0 1)} {38160#(<= ~counter~0 1)} #94#return; {38160#(<= ~counter~0 1)} is VALID [2022-04-08 12:37:12,426 INFO L290 TraceCheckUtils]: 24: Hoare triple {38160#(<= ~counter~0 1)} assume !!(0 != ~r~0); {38160#(<= ~counter~0 1)} is VALID [2022-04-08 12:37:12,427 INFO L290 TraceCheckUtils]: 25: Hoare triple {38160#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {38185#(<= ~counter~0 2)} is VALID [2022-04-08 12:37:12,427 INFO L290 TraceCheckUtils]: 26: Hoare triple {38185#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {38185#(<= ~counter~0 2)} is VALID [2022-04-08 12:37:12,427 INFO L272 TraceCheckUtils]: 27: Hoare triple {38185#(<= ~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)); {38185#(<= ~counter~0 2)} is VALID [2022-04-08 12:37:12,427 INFO L290 TraceCheckUtils]: 28: Hoare triple {38185#(<= ~counter~0 2)} ~cond := #in~cond; {38185#(<= ~counter~0 2)} is VALID [2022-04-08 12:37:12,428 INFO L290 TraceCheckUtils]: 29: Hoare triple {38185#(<= ~counter~0 2)} assume !(0 == ~cond); {38185#(<= ~counter~0 2)} is VALID [2022-04-08 12:37:12,428 INFO L290 TraceCheckUtils]: 30: Hoare triple {38185#(<= ~counter~0 2)} assume true; {38185#(<= ~counter~0 2)} is VALID [2022-04-08 12:37:12,428 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {38185#(<= ~counter~0 2)} {38185#(<= ~counter~0 2)} #96#return; {38185#(<= ~counter~0 2)} is VALID [2022-04-08 12:37:12,429 INFO L290 TraceCheckUtils]: 32: Hoare triple {38185#(<= ~counter~0 2)} assume !(~r~0 > 0); {38185#(<= ~counter~0 2)} is VALID [2022-04-08 12:37:12,429 INFO L290 TraceCheckUtils]: 33: Hoare triple {38185#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {38210#(<= ~counter~0 3)} is VALID [2022-04-08 12:37:12,429 INFO L290 TraceCheckUtils]: 34: Hoare triple {38210#(<= ~counter~0 3)} assume !!(#t~post8 < 10);havoc #t~post8; {38210#(<= ~counter~0 3)} is VALID [2022-04-08 12:37:12,430 INFO L272 TraceCheckUtils]: 35: Hoare triple {38210#(<= ~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)); {38210#(<= ~counter~0 3)} is VALID [2022-04-08 12:37:12,430 INFO L290 TraceCheckUtils]: 36: Hoare triple {38210#(<= ~counter~0 3)} ~cond := #in~cond; {38210#(<= ~counter~0 3)} is VALID [2022-04-08 12:37:12,430 INFO L290 TraceCheckUtils]: 37: Hoare triple {38210#(<= ~counter~0 3)} assume !(0 == ~cond); {38210#(<= ~counter~0 3)} is VALID [2022-04-08 12:37:12,431 INFO L290 TraceCheckUtils]: 38: Hoare triple {38210#(<= ~counter~0 3)} assume true; {38210#(<= ~counter~0 3)} is VALID [2022-04-08 12:37:12,434 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {38210#(<= ~counter~0 3)} {38210#(<= ~counter~0 3)} #98#return; {38210#(<= ~counter~0 3)} is VALID [2022-04-08 12:37:12,444 INFO L290 TraceCheckUtils]: 40: Hoare triple {38210#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {38210#(<= ~counter~0 3)} is VALID [2022-04-08 12:37:12,448 INFO L290 TraceCheckUtils]: 41: Hoare triple {38210#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {38235#(<= ~counter~0 4)} is VALID [2022-04-08 12:37:12,448 INFO L290 TraceCheckUtils]: 42: Hoare triple {38235#(<= ~counter~0 4)} assume !!(#t~post8 < 10);havoc #t~post8; {38235#(<= ~counter~0 4)} is VALID [2022-04-08 12:37:12,449 INFO L272 TraceCheckUtils]: 43: Hoare triple {38235#(<= ~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)); {38235#(<= ~counter~0 4)} is VALID [2022-04-08 12:37:12,449 INFO L290 TraceCheckUtils]: 44: Hoare triple {38235#(<= ~counter~0 4)} ~cond := #in~cond; {38235#(<= ~counter~0 4)} is VALID [2022-04-08 12:37:12,449 INFO L290 TraceCheckUtils]: 45: Hoare triple {38235#(<= ~counter~0 4)} assume !(0 == ~cond); {38235#(<= ~counter~0 4)} is VALID [2022-04-08 12:37:12,449 INFO L290 TraceCheckUtils]: 46: Hoare triple {38235#(<= ~counter~0 4)} assume true; {38235#(<= ~counter~0 4)} is VALID [2022-04-08 12:37:12,450 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {38235#(<= ~counter~0 4)} {38235#(<= ~counter~0 4)} #98#return; {38235#(<= ~counter~0 4)} is VALID [2022-04-08 12:37:12,450 INFO L290 TraceCheckUtils]: 48: Hoare triple {38235#(<= ~counter~0 4)} assume !(~r~0 < 0); {38235#(<= ~counter~0 4)} is VALID [2022-04-08 12:37:12,451 INFO L290 TraceCheckUtils]: 49: Hoare triple {38235#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {38260#(<= ~counter~0 5)} is VALID [2022-04-08 12:37:12,451 INFO L290 TraceCheckUtils]: 50: Hoare triple {38260#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {38260#(<= ~counter~0 5)} is VALID [2022-04-08 12:37:12,451 INFO L272 TraceCheckUtils]: 51: Hoare triple {38260#(<= ~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)); {38260#(<= ~counter~0 5)} is VALID [2022-04-08 12:37:12,452 INFO L290 TraceCheckUtils]: 52: Hoare triple {38260#(<= ~counter~0 5)} ~cond := #in~cond; {38260#(<= ~counter~0 5)} is VALID [2022-04-08 12:37:12,452 INFO L290 TraceCheckUtils]: 53: Hoare triple {38260#(<= ~counter~0 5)} assume !(0 == ~cond); {38260#(<= ~counter~0 5)} is VALID [2022-04-08 12:37:12,452 INFO L290 TraceCheckUtils]: 54: Hoare triple {38260#(<= ~counter~0 5)} assume true; {38260#(<= ~counter~0 5)} is VALID [2022-04-08 12:37:12,453 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {38260#(<= ~counter~0 5)} {38260#(<= ~counter~0 5)} #94#return; {38260#(<= ~counter~0 5)} is VALID [2022-04-08 12:37:12,453 INFO L290 TraceCheckUtils]: 56: Hoare triple {38260#(<= ~counter~0 5)} assume !!(0 != ~r~0); {38260#(<= ~counter~0 5)} is VALID [2022-04-08 12:37:12,453 INFO L290 TraceCheckUtils]: 57: Hoare triple {38260#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {38285#(<= ~counter~0 6)} is VALID [2022-04-08 12:37:12,454 INFO L290 TraceCheckUtils]: 58: Hoare triple {38285#(<= ~counter~0 6)} assume !!(#t~post7 < 10);havoc #t~post7; {38285#(<= ~counter~0 6)} is VALID [2022-04-08 12:37:12,454 INFO L272 TraceCheckUtils]: 59: Hoare triple {38285#(<= ~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)); {38285#(<= ~counter~0 6)} is VALID [2022-04-08 12:37:12,454 INFO L290 TraceCheckUtils]: 60: Hoare triple {38285#(<= ~counter~0 6)} ~cond := #in~cond; {38285#(<= ~counter~0 6)} is VALID [2022-04-08 12:37:12,455 INFO L290 TraceCheckUtils]: 61: Hoare triple {38285#(<= ~counter~0 6)} assume !(0 == ~cond); {38285#(<= ~counter~0 6)} is VALID [2022-04-08 12:37:12,455 INFO L290 TraceCheckUtils]: 62: Hoare triple {38285#(<= ~counter~0 6)} assume true; {38285#(<= ~counter~0 6)} is VALID [2022-04-08 12:37:12,455 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {38285#(<= ~counter~0 6)} {38285#(<= ~counter~0 6)} #96#return; {38285#(<= ~counter~0 6)} is VALID [2022-04-08 12:37:12,455 INFO L290 TraceCheckUtils]: 64: Hoare triple {38285#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {38285#(<= ~counter~0 6)} is VALID [2022-04-08 12:37:12,456 INFO L290 TraceCheckUtils]: 65: Hoare triple {38285#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {38310#(<= ~counter~0 7)} is VALID [2022-04-08 12:37:12,456 INFO L290 TraceCheckUtils]: 66: Hoare triple {38310#(<= ~counter~0 7)} assume !!(#t~post7 < 10);havoc #t~post7; {38310#(<= ~counter~0 7)} is VALID [2022-04-08 12:37:12,457 INFO L272 TraceCheckUtils]: 67: Hoare triple {38310#(<= ~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)); {38310#(<= ~counter~0 7)} is VALID [2022-04-08 12:37:12,457 INFO L290 TraceCheckUtils]: 68: Hoare triple {38310#(<= ~counter~0 7)} ~cond := #in~cond; {38310#(<= ~counter~0 7)} is VALID [2022-04-08 12:37:12,457 INFO L290 TraceCheckUtils]: 69: Hoare triple {38310#(<= ~counter~0 7)} assume !(0 == ~cond); {38310#(<= ~counter~0 7)} is VALID [2022-04-08 12:37:12,457 INFO L290 TraceCheckUtils]: 70: Hoare triple {38310#(<= ~counter~0 7)} assume true; {38310#(<= ~counter~0 7)} is VALID [2022-04-08 12:37:12,458 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {38310#(<= ~counter~0 7)} {38310#(<= ~counter~0 7)} #96#return; {38310#(<= ~counter~0 7)} is VALID [2022-04-08 12:37:12,458 INFO L290 TraceCheckUtils]: 72: Hoare triple {38310#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {38310#(<= ~counter~0 7)} is VALID [2022-04-08 12:37:12,459 INFO L290 TraceCheckUtils]: 73: Hoare triple {38310#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {38335#(<= ~counter~0 8)} is VALID [2022-04-08 12:37:12,459 INFO L290 TraceCheckUtils]: 74: Hoare triple {38335#(<= ~counter~0 8)} assume !!(#t~post7 < 10);havoc #t~post7; {38335#(<= ~counter~0 8)} is VALID [2022-04-08 12:37:12,459 INFO L272 TraceCheckUtils]: 75: Hoare triple {38335#(<= ~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)); {38335#(<= ~counter~0 8)} is VALID [2022-04-08 12:37:12,460 INFO L290 TraceCheckUtils]: 76: Hoare triple {38335#(<= ~counter~0 8)} ~cond := #in~cond; {38335#(<= ~counter~0 8)} is VALID [2022-04-08 12:37:12,460 INFO L290 TraceCheckUtils]: 77: Hoare triple {38335#(<= ~counter~0 8)} assume !(0 == ~cond); {38335#(<= ~counter~0 8)} is VALID [2022-04-08 12:37:12,460 INFO L290 TraceCheckUtils]: 78: Hoare triple {38335#(<= ~counter~0 8)} assume true; {38335#(<= ~counter~0 8)} is VALID [2022-04-08 12:37:12,460 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {38335#(<= ~counter~0 8)} {38335#(<= ~counter~0 8)} #96#return; {38335#(<= ~counter~0 8)} is VALID [2022-04-08 12:37:12,461 INFO L290 TraceCheckUtils]: 80: Hoare triple {38335#(<= ~counter~0 8)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {38335#(<= ~counter~0 8)} is VALID [2022-04-08 12:37:12,461 INFO L290 TraceCheckUtils]: 81: Hoare triple {38335#(<= ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {38360#(<= ~counter~0 9)} is VALID [2022-04-08 12:37:12,462 INFO L290 TraceCheckUtils]: 82: Hoare triple {38360#(<= ~counter~0 9)} assume !!(#t~post7 < 10);havoc #t~post7; {38360#(<= ~counter~0 9)} is VALID [2022-04-08 12:37:12,468 INFO L272 TraceCheckUtils]: 83: Hoare triple {38360#(<= ~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)); {38360#(<= ~counter~0 9)} is VALID [2022-04-08 12:37:12,468 INFO L290 TraceCheckUtils]: 84: Hoare triple {38360#(<= ~counter~0 9)} ~cond := #in~cond; {38360#(<= ~counter~0 9)} is VALID [2022-04-08 12:37:12,469 INFO L290 TraceCheckUtils]: 85: Hoare triple {38360#(<= ~counter~0 9)} assume !(0 == ~cond); {38360#(<= ~counter~0 9)} is VALID [2022-04-08 12:37:12,469 INFO L290 TraceCheckUtils]: 86: Hoare triple {38360#(<= ~counter~0 9)} assume true; {38360#(<= ~counter~0 9)} is VALID [2022-04-08 12:37:12,469 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {38360#(<= ~counter~0 9)} {38360#(<= ~counter~0 9)} #96#return; {38360#(<= ~counter~0 9)} is VALID [2022-04-08 12:37:12,479 INFO L290 TraceCheckUtils]: 88: Hoare triple {38360#(<= ~counter~0 9)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {38360#(<= ~counter~0 9)} is VALID [2022-04-08 12:37:12,480 INFO L290 TraceCheckUtils]: 89: Hoare triple {38360#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {38385#(<= |main_#t~post7| 9)} is VALID [2022-04-08 12:37:12,480 INFO L290 TraceCheckUtils]: 90: Hoare triple {38385#(<= |main_#t~post7| 9)} assume !(#t~post7 < 10);havoc #t~post7; {38104#false} is VALID [2022-04-08 12:37:12,480 INFO L290 TraceCheckUtils]: 91: Hoare triple {38104#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {38104#false} is VALID [2022-04-08 12:37:12,480 INFO L290 TraceCheckUtils]: 92: Hoare triple {38104#false} assume !(#t~post8 < 10);havoc #t~post8; {38104#false} is VALID [2022-04-08 12:37:12,480 INFO L290 TraceCheckUtils]: 93: Hoare triple {38104#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {38104#false} is VALID [2022-04-08 12:37:12,480 INFO L290 TraceCheckUtils]: 94: Hoare triple {38104#false} assume !(#t~post6 < 10);havoc #t~post6; {38104#false} is VALID [2022-04-08 12:37:12,480 INFO L272 TraceCheckUtils]: 95: Hoare triple {38104#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)); {38104#false} is VALID [2022-04-08 12:37:12,480 INFO L290 TraceCheckUtils]: 96: Hoare triple {38104#false} ~cond := #in~cond; {38104#false} is VALID [2022-04-08 12:37:12,480 INFO L290 TraceCheckUtils]: 97: Hoare triple {38104#false} assume 0 == ~cond; {38104#false} is VALID [2022-04-08 12:37:12,480 INFO L290 TraceCheckUtils]: 98: Hoare triple {38104#false} assume !false; {38104#false} is VALID [2022-04-08 12:37:12,481 INFO L134 CoverageAnalysis]: Checked inductivity of 232 backedges. 26 proven. 202 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-08 12:37:12,481 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:37:12,851 INFO L290 TraceCheckUtils]: 98: Hoare triple {38104#false} assume !false; {38104#false} is VALID [2022-04-08 12:37:12,852 INFO L290 TraceCheckUtils]: 97: Hoare triple {38104#false} assume 0 == ~cond; {38104#false} is VALID [2022-04-08 12:37:12,852 INFO L290 TraceCheckUtils]: 96: Hoare triple {38104#false} ~cond := #in~cond; {38104#false} is VALID [2022-04-08 12:37:12,852 INFO L272 TraceCheckUtils]: 95: Hoare triple {38104#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)); {38104#false} is VALID [2022-04-08 12:37:12,852 INFO L290 TraceCheckUtils]: 94: Hoare triple {38104#false} assume !(#t~post6 < 10);havoc #t~post6; {38104#false} is VALID [2022-04-08 12:37:12,852 INFO L290 TraceCheckUtils]: 93: Hoare triple {38104#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {38104#false} is VALID [2022-04-08 12:37:12,852 INFO L290 TraceCheckUtils]: 92: Hoare triple {38104#false} assume !(#t~post8 < 10);havoc #t~post8; {38104#false} is VALID [2022-04-08 12:37:12,852 INFO L290 TraceCheckUtils]: 91: Hoare triple {38104#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {38104#false} is VALID [2022-04-08 12:37:12,858 INFO L290 TraceCheckUtils]: 90: Hoare triple {38385#(<= |main_#t~post7| 9)} assume !(#t~post7 < 10);havoc #t~post7; {38104#false} is VALID [2022-04-08 12:37:12,858 INFO L290 TraceCheckUtils]: 89: Hoare triple {38360#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {38385#(<= |main_#t~post7| 9)} is VALID [2022-04-08 12:37:12,858 INFO L290 TraceCheckUtils]: 88: Hoare triple {38360#(<= ~counter~0 9)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {38360#(<= ~counter~0 9)} is VALID [2022-04-08 12:37:12,859 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {38103#true} {38360#(<= ~counter~0 9)} #96#return; {38360#(<= ~counter~0 9)} is VALID [2022-04-08 12:37:12,859 INFO L290 TraceCheckUtils]: 86: Hoare triple {38103#true} assume true; {38103#true} is VALID [2022-04-08 12:37:12,859 INFO L290 TraceCheckUtils]: 85: Hoare triple {38103#true} assume !(0 == ~cond); {38103#true} is VALID [2022-04-08 12:37:12,859 INFO L290 TraceCheckUtils]: 84: Hoare triple {38103#true} ~cond := #in~cond; {38103#true} is VALID [2022-04-08 12:37:12,859 INFO L272 TraceCheckUtils]: 83: Hoare triple {38360#(<= ~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)); {38103#true} is VALID [2022-04-08 12:37:12,859 INFO L290 TraceCheckUtils]: 82: Hoare triple {38360#(<= ~counter~0 9)} assume !!(#t~post7 < 10);havoc #t~post7; {38360#(<= ~counter~0 9)} is VALID [2022-04-08 12:37:12,860 INFO L290 TraceCheckUtils]: 81: Hoare triple {38335#(<= ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {38360#(<= ~counter~0 9)} is VALID [2022-04-08 12:37:12,861 INFO L290 TraceCheckUtils]: 80: Hoare triple {38335#(<= ~counter~0 8)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {38335#(<= ~counter~0 8)} is VALID [2022-04-08 12:37:12,861 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {38103#true} {38335#(<= ~counter~0 8)} #96#return; {38335#(<= ~counter~0 8)} is VALID [2022-04-08 12:37:12,861 INFO L290 TraceCheckUtils]: 78: Hoare triple {38103#true} assume true; {38103#true} is VALID [2022-04-08 12:37:12,861 INFO L290 TraceCheckUtils]: 77: Hoare triple {38103#true} assume !(0 == ~cond); {38103#true} is VALID [2022-04-08 12:37:12,861 INFO L290 TraceCheckUtils]: 76: Hoare triple {38103#true} ~cond := #in~cond; {38103#true} is VALID [2022-04-08 12:37:12,861 INFO L272 TraceCheckUtils]: 75: Hoare triple {38335#(<= ~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)); {38103#true} is VALID [2022-04-08 12:37:12,862 INFO L290 TraceCheckUtils]: 74: Hoare triple {38335#(<= ~counter~0 8)} assume !!(#t~post7 < 10);havoc #t~post7; {38335#(<= ~counter~0 8)} is VALID [2022-04-08 12:37:12,862 INFO L290 TraceCheckUtils]: 73: Hoare triple {38310#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {38335#(<= ~counter~0 8)} is VALID [2022-04-08 12:37:12,862 INFO L290 TraceCheckUtils]: 72: Hoare triple {38310#(<= ~counter~0 7)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {38310#(<= ~counter~0 7)} is VALID [2022-04-08 12:37:12,863 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {38103#true} {38310#(<= ~counter~0 7)} #96#return; {38310#(<= ~counter~0 7)} is VALID [2022-04-08 12:37:12,863 INFO L290 TraceCheckUtils]: 70: Hoare triple {38103#true} assume true; {38103#true} is VALID [2022-04-08 12:37:12,863 INFO L290 TraceCheckUtils]: 69: Hoare triple {38103#true} assume !(0 == ~cond); {38103#true} is VALID [2022-04-08 12:37:12,863 INFO L290 TraceCheckUtils]: 68: Hoare triple {38103#true} ~cond := #in~cond; {38103#true} is VALID [2022-04-08 12:37:12,863 INFO L272 TraceCheckUtils]: 67: Hoare triple {38310#(<= ~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)); {38103#true} is VALID [2022-04-08 12:37:12,863 INFO L290 TraceCheckUtils]: 66: Hoare triple {38310#(<= ~counter~0 7)} assume !!(#t~post7 < 10);havoc #t~post7; {38310#(<= ~counter~0 7)} is VALID [2022-04-08 12:37:12,864 INFO L290 TraceCheckUtils]: 65: Hoare triple {38285#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {38310#(<= ~counter~0 7)} is VALID [2022-04-08 12:37:12,864 INFO L290 TraceCheckUtils]: 64: Hoare triple {38285#(<= ~counter~0 6)} assume !!(~r~0 > 0);~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {38285#(<= ~counter~0 6)} is VALID [2022-04-08 12:37:12,865 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {38103#true} {38285#(<= ~counter~0 6)} #96#return; {38285#(<= ~counter~0 6)} is VALID [2022-04-08 12:37:12,865 INFO L290 TraceCheckUtils]: 62: Hoare triple {38103#true} assume true; {38103#true} is VALID [2022-04-08 12:37:12,865 INFO L290 TraceCheckUtils]: 61: Hoare triple {38103#true} assume !(0 == ~cond); {38103#true} is VALID [2022-04-08 12:37:12,865 INFO L290 TraceCheckUtils]: 60: Hoare triple {38103#true} ~cond := #in~cond; {38103#true} is VALID [2022-04-08 12:37:12,865 INFO L272 TraceCheckUtils]: 59: Hoare triple {38285#(<= ~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)); {38103#true} is VALID [2022-04-08 12:37:12,865 INFO L290 TraceCheckUtils]: 58: Hoare triple {38285#(<= ~counter~0 6)} assume !!(#t~post7 < 10);havoc #t~post7; {38285#(<= ~counter~0 6)} is VALID [2022-04-08 12:37:12,866 INFO L290 TraceCheckUtils]: 57: Hoare triple {38260#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {38285#(<= ~counter~0 6)} is VALID [2022-04-08 12:37:12,866 INFO L290 TraceCheckUtils]: 56: Hoare triple {38260#(<= ~counter~0 5)} assume !!(0 != ~r~0); {38260#(<= ~counter~0 5)} is VALID [2022-04-08 12:37:12,867 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {38103#true} {38260#(<= ~counter~0 5)} #94#return; {38260#(<= ~counter~0 5)} is VALID [2022-04-08 12:37:12,867 INFO L290 TraceCheckUtils]: 54: Hoare triple {38103#true} assume true; {38103#true} is VALID [2022-04-08 12:37:12,867 INFO L290 TraceCheckUtils]: 53: Hoare triple {38103#true} assume !(0 == ~cond); {38103#true} is VALID [2022-04-08 12:37:12,867 INFO L290 TraceCheckUtils]: 52: Hoare triple {38103#true} ~cond := #in~cond; {38103#true} is VALID [2022-04-08 12:37:12,867 INFO L272 TraceCheckUtils]: 51: Hoare triple {38260#(<= ~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)); {38103#true} is VALID [2022-04-08 12:37:12,867 INFO L290 TraceCheckUtils]: 50: Hoare triple {38260#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {38260#(<= ~counter~0 5)} is VALID [2022-04-08 12:37:12,868 INFO L290 TraceCheckUtils]: 49: Hoare triple {38235#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {38260#(<= ~counter~0 5)} is VALID [2022-04-08 12:37:12,868 INFO L290 TraceCheckUtils]: 48: Hoare triple {38235#(<= ~counter~0 4)} assume !(~r~0 < 0); {38235#(<= ~counter~0 4)} is VALID [2022-04-08 12:37:12,868 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {38103#true} {38235#(<= ~counter~0 4)} #98#return; {38235#(<= ~counter~0 4)} is VALID [2022-04-08 12:37:12,869 INFO L290 TraceCheckUtils]: 46: Hoare triple {38103#true} assume true; {38103#true} is VALID [2022-04-08 12:37:12,869 INFO L290 TraceCheckUtils]: 45: Hoare triple {38103#true} assume !(0 == ~cond); {38103#true} is VALID [2022-04-08 12:37:12,869 INFO L290 TraceCheckUtils]: 44: Hoare triple {38103#true} ~cond := #in~cond; {38103#true} is VALID [2022-04-08 12:37:12,869 INFO L272 TraceCheckUtils]: 43: Hoare triple {38235#(<= ~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)); {38103#true} is VALID [2022-04-08 12:37:12,869 INFO L290 TraceCheckUtils]: 42: Hoare triple {38235#(<= ~counter~0 4)} assume !!(#t~post8 < 10);havoc #t~post8; {38235#(<= ~counter~0 4)} is VALID [2022-04-08 12:37:12,869 INFO L290 TraceCheckUtils]: 41: Hoare triple {38210#(<= ~counter~0 3)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {38235#(<= ~counter~0 4)} is VALID [2022-04-08 12:37:12,870 INFO L290 TraceCheckUtils]: 40: Hoare triple {38210#(<= ~counter~0 3)} assume !!(~r~0 < 0);~r~0 := ~r~0 + ~u~0;~u~0 := 2 + ~u~0; {38210#(<= ~counter~0 3)} is VALID [2022-04-08 12:37:12,870 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {38103#true} {38210#(<= ~counter~0 3)} #98#return; {38210#(<= ~counter~0 3)} is VALID [2022-04-08 12:37:12,870 INFO L290 TraceCheckUtils]: 38: Hoare triple {38103#true} assume true; {38103#true} is VALID [2022-04-08 12:37:12,870 INFO L290 TraceCheckUtils]: 37: Hoare triple {38103#true} assume !(0 == ~cond); {38103#true} is VALID [2022-04-08 12:37:12,870 INFO L290 TraceCheckUtils]: 36: Hoare triple {38103#true} ~cond := #in~cond; {38103#true} is VALID [2022-04-08 12:37:12,870 INFO L272 TraceCheckUtils]: 35: Hoare triple {38210#(<= ~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)); {38103#true} is VALID [2022-04-08 12:37:12,871 INFO L290 TraceCheckUtils]: 34: Hoare triple {38210#(<= ~counter~0 3)} assume !!(#t~post8 < 10);havoc #t~post8; {38210#(<= ~counter~0 3)} is VALID [2022-04-08 12:37:12,871 INFO L290 TraceCheckUtils]: 33: Hoare triple {38185#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {38210#(<= ~counter~0 3)} is VALID [2022-04-08 12:37:12,871 INFO L290 TraceCheckUtils]: 32: Hoare triple {38185#(<= ~counter~0 2)} assume !(~r~0 > 0); {38185#(<= ~counter~0 2)} is VALID [2022-04-08 12:37:12,872 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {38103#true} {38185#(<= ~counter~0 2)} #96#return; {38185#(<= ~counter~0 2)} is VALID [2022-04-08 12:37:12,872 INFO L290 TraceCheckUtils]: 30: Hoare triple {38103#true} assume true; {38103#true} is VALID [2022-04-08 12:37:12,872 INFO L290 TraceCheckUtils]: 29: Hoare triple {38103#true} assume !(0 == ~cond); {38103#true} is VALID [2022-04-08 12:37:12,872 INFO L290 TraceCheckUtils]: 28: Hoare triple {38103#true} ~cond := #in~cond; {38103#true} is VALID [2022-04-08 12:37:12,872 INFO L272 TraceCheckUtils]: 27: Hoare triple {38185#(<= ~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)); {38103#true} is VALID [2022-04-08 12:37:12,872 INFO L290 TraceCheckUtils]: 26: Hoare triple {38185#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {38185#(<= ~counter~0 2)} is VALID [2022-04-08 12:37:12,873 INFO L290 TraceCheckUtils]: 25: Hoare triple {38160#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {38185#(<= ~counter~0 2)} is VALID [2022-04-08 12:37:12,873 INFO L290 TraceCheckUtils]: 24: Hoare triple {38160#(<= ~counter~0 1)} assume !!(0 != ~r~0); {38160#(<= ~counter~0 1)} is VALID [2022-04-08 12:37:12,873 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {38103#true} {38160#(<= ~counter~0 1)} #94#return; {38160#(<= ~counter~0 1)} is VALID [2022-04-08 12:37:12,873 INFO L290 TraceCheckUtils]: 22: Hoare triple {38103#true} assume true; {38103#true} is VALID [2022-04-08 12:37:12,874 INFO L290 TraceCheckUtils]: 21: Hoare triple {38103#true} assume !(0 == ~cond); {38103#true} is VALID [2022-04-08 12:37:12,874 INFO L290 TraceCheckUtils]: 20: Hoare triple {38103#true} ~cond := #in~cond; {38103#true} is VALID [2022-04-08 12:37:12,874 INFO L272 TraceCheckUtils]: 19: Hoare triple {38160#(<= ~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)); {38103#true} is VALID [2022-04-08 12:37:12,874 INFO L290 TraceCheckUtils]: 18: Hoare triple {38160#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {38160#(<= ~counter~0 1)} is VALID [2022-04-08 12:37:12,874 INFO L290 TraceCheckUtils]: 17: Hoare triple {38111#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {38160#(<= ~counter~0 1)} is VALID [2022-04-08 12:37:12,875 INFO L290 TraceCheckUtils]: 16: Hoare triple {38111#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {38111#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:12,875 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {38103#true} {38111#(<= ~counter~0 0)} #92#return; {38111#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:12,875 INFO L290 TraceCheckUtils]: 14: Hoare triple {38103#true} assume true; {38103#true} is VALID [2022-04-08 12:37:12,875 INFO L290 TraceCheckUtils]: 13: Hoare triple {38103#true} assume !(0 == ~cond); {38103#true} is VALID [2022-04-08 12:37:12,875 INFO L290 TraceCheckUtils]: 12: Hoare triple {38103#true} ~cond := #in~cond; {38103#true} is VALID [2022-04-08 12:37:12,875 INFO L272 TraceCheckUtils]: 11: Hoare triple {38111#(<= ~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)); {38103#true} is VALID [2022-04-08 12:37:12,876 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {38103#true} {38111#(<= ~counter~0 0)} #90#return; {38111#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:12,876 INFO L290 TraceCheckUtils]: 9: Hoare triple {38103#true} assume true; {38103#true} is VALID [2022-04-08 12:37:12,876 INFO L290 TraceCheckUtils]: 8: Hoare triple {38103#true} assume !(0 == ~cond); {38103#true} is VALID [2022-04-08 12:37:12,876 INFO L290 TraceCheckUtils]: 7: Hoare triple {38103#true} ~cond := #in~cond; {38103#true} is VALID [2022-04-08 12:37:12,876 INFO L272 TraceCheckUtils]: 6: Hoare triple {38111#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {38103#true} is VALID [2022-04-08 12:37:12,876 INFO L290 TraceCheckUtils]: 5: Hoare triple {38111#(<= ~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; {38111#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:12,876 INFO L272 TraceCheckUtils]: 4: Hoare triple {38111#(<= ~counter~0 0)} call #t~ret9 := main(); {38111#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:12,877 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38111#(<= ~counter~0 0)} {38103#true} #102#return; {38111#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:12,877 INFO L290 TraceCheckUtils]: 2: Hoare triple {38111#(<= ~counter~0 0)} assume true; {38111#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:12,877 INFO L290 TraceCheckUtils]: 1: Hoare triple {38103#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; {38111#(<= ~counter~0 0)} is VALID [2022-04-08 12:37:12,877 INFO L272 TraceCheckUtils]: 0: Hoare triple {38103#true} call ULTIMATE.init(); {38103#true} is VALID [2022-04-08 12:37:12,878 INFO L134 CoverageAnalysis]: Checked inductivity of 232 backedges. 26 proven. 58 refuted. 0 times theorem prover too weak. 148 trivial. 0 not checked. [2022-04-08 12:37:12,878 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:37:12,878 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [592623077] [2022-04-08 12:37:12,878 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:37:12,878 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1027671920] [2022-04-08 12:37:12,878 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1027671920] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:37:12,878 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:37:12,878 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 13 [2022-04-08 12:37:12,878 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:37:12,878 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2116502386] [2022-04-08 12:37:12,878 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2116502386] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:37:12,878 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:37:12,878 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-08 12:37:12,878 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [976319826] [2022-04-08 12:37:12,878 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:37:12,879 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 5.384615384615385) internal successors, (70), 12 states have internal predecessors, (70), 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 99 [2022-04-08 12:37:12,879 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:37:12,879 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 5.384615384615385) internal successors, (70), 12 states have internal predecessors, (70), 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-08 12:37:12,942 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 96 edges. 96 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:37:12,943 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-08 12:37:12,943 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:37:12,943 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-08 12:37:12,943 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=68, Invalid=88, Unknown=0, NotChecked=0, Total=156 [2022-04-08 12:37:12,943 INFO L87 Difference]: Start difference. First operand 356 states and 471 transitions. Second operand has 13 states, 13 states have (on average 5.384615384615385) internal successors, (70), 12 states have internal predecessors, (70), 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-08 12:37:13,957 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:37:13,957 INFO L93 Difference]: Finished difference Result 475 states and 645 transitions. [2022-04-08 12:37:13,957 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2022-04-08 12:37:13,957 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 5.384615384615385) internal successors, (70), 12 states have internal predecessors, (70), 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 99 [2022-04-08 12:37:13,957 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:37:13,957 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 5.384615384615385) internal successors, (70), 12 states have internal predecessors, (70), 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-08 12:37:13,959 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 216 transitions. [2022-04-08 12:37:13,959 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 5.384615384615385) internal successors, (70), 12 states have internal predecessors, (70), 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-08 12:37:13,960 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 216 transitions. [2022-04-08 12:37:13,960 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 21 states and 216 transitions. [2022-04-08 12:37:14,132 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 216 edges. 216 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:37:14,138 INFO L225 Difference]: With dead ends: 475 [2022-04-08 12:37:14,138 INFO L226 Difference]: Without dead ends: 368 [2022-04-08 12:37:14,139 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 205 GetRequests, 185 SyntacticMatches, 1 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 46 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=156, Invalid=264, Unknown=0, NotChecked=0, Total=420 [2022-04-08 12:37:14,139 INFO L913 BasicCegarLoop]: 57 mSDtfsCounter, 116 mSDsluCounter, 189 mSDsCounter, 0 mSdLazyCounter, 115 mSolverCounterSat, 82 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 116 SdHoareTripleChecker+Valid, 246 SdHoareTripleChecker+Invalid, 197 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 82 IncrementalHoareTripleChecker+Valid, 115 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 12:37:14,139 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [116 Valid, 246 Invalid, 197 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [82 Valid, 115 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 12:37:14,140 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 368 states. [2022-04-08 12:37:14,664 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 368 to 368. [2022-04-08 12:37:14,664 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:37:14,665 INFO L82 GeneralOperation]: Start isEquivalent. First operand 368 states. Second operand has 368 states, 280 states have (on average 1.2035714285714285) internal successors, (337), 280 states have internal predecessors, (337), 74 states have call successors, (74), 15 states have call predecessors, (74), 13 states have return successors, (72), 72 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 12:37:14,665 INFO L74 IsIncluded]: Start isIncluded. First operand 368 states. Second operand has 368 states, 280 states have (on average 1.2035714285714285) internal successors, (337), 280 states have internal predecessors, (337), 74 states have call successors, (74), 15 states have call predecessors, (74), 13 states have return successors, (72), 72 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 12:37:14,665 INFO L87 Difference]: Start difference. First operand 368 states. Second operand has 368 states, 280 states have (on average 1.2035714285714285) internal successors, (337), 280 states have internal predecessors, (337), 74 states have call successors, (74), 15 states have call predecessors, (74), 13 states have return successors, (72), 72 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 12:37:14,671 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:37:14,671 INFO L93 Difference]: Finished difference Result 368 states and 483 transitions. [2022-04-08 12:37:14,671 INFO L276 IsEmpty]: Start isEmpty. Operand 368 states and 483 transitions. [2022-04-08 12:37:14,672 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:37:14,672 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:37:14,672 INFO L74 IsIncluded]: Start isIncluded. First operand has 368 states, 280 states have (on average 1.2035714285714285) internal successors, (337), 280 states have internal predecessors, (337), 74 states have call successors, (74), 15 states have call predecessors, (74), 13 states have return successors, (72), 72 states have call predecessors, (72), 72 states have call successors, (72) Second operand 368 states. [2022-04-08 12:37:14,687 INFO L87 Difference]: Start difference. First operand has 368 states, 280 states have (on average 1.2035714285714285) internal successors, (337), 280 states have internal predecessors, (337), 74 states have call successors, (74), 15 states have call predecessors, (74), 13 states have return successors, (72), 72 states have call predecessors, (72), 72 states have call successors, (72) Second operand 368 states. [2022-04-08 12:37:14,692 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:37:14,693 INFO L93 Difference]: Finished difference Result 368 states and 483 transitions. [2022-04-08 12:37:14,693 INFO L276 IsEmpty]: Start isEmpty. Operand 368 states and 483 transitions. [2022-04-08 12:37:14,693 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:37:14,693 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:37:14,693 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:37:14,693 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:37:14,694 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 368 states, 280 states have (on average 1.2035714285714285) internal successors, (337), 280 states have internal predecessors, (337), 74 states have call successors, (74), 15 states have call predecessors, (74), 13 states have return successors, (72), 72 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-08 12:37:14,700 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 368 states to 368 states and 483 transitions. [2022-04-08 12:37:14,700 INFO L78 Accepts]: Start accepts. Automaton has 368 states and 483 transitions. Word has length 99 [2022-04-08 12:37:14,700 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:37:14,700 INFO L478 AbstractCegarLoop]: Abstraction has 368 states and 483 transitions. [2022-04-08 12:37:14,701 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 5.384615384615385) internal successors, (70), 12 states have internal predecessors, (70), 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-08 12:37:14,701 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 368 states and 483 transitions. [2022-04-08 12:37:16,782 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 483 edges. 483 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:37:16,782 INFO L276 IsEmpty]: Start isEmpty. Operand 368 states and 483 transitions. [2022-04-08 12:37:16,783 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 104 [2022-04-08 12:37:16,783 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:37:16,783 INFO L499 BasicCegarLoop]: trace histogram [11, 10, 10, 4, 4, 4, 4, 4, 4, 4, 4, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 12:37:16,799 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (31)] Forceful destruction successful, exit code 0 [2022-04-08 12:37:16,983 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable29,31 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:37:16,983 INFO L403 AbstractCegarLoop]: === Iteration 31 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:37:16,984 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:37:16,984 INFO L85 PathProgramCache]: Analyzing trace with hash -1761003221, now seen corresponding path program 3 times [2022-04-08 12:37:16,984 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:37:16,984 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1749515327] [2022-04-08 12:37:16,984 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:37:16,984 INFO L85 PathProgramCache]: Analyzing trace with hash -1761003221, now seen corresponding path program 4 times [2022-04-08 12:37:16,984 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:37:16,984 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [595329492] [2022-04-08 12:37:16,984 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:37:16,985 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:37:17,004 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:37:17,004 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [461221567] [2022-04-08 12:37:17,004 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 12:37:17,004 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:37:17,004 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:37:17,005 INFO L229 MonitoredProcess]: Starting monitored process 32 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 12:37:17,007 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (32)] Waiting until timeout for monitored process [2022-04-08 12:37:17,067 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 12:37:17,067 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-04-08 12:37:17,067 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-04-08 12:37:17,092 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-04-08 12:37:17,124 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-04-08 12:37:17,125 INFO L130 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found a feasible trace [2022-04-08 12:37:17,125 INFO L618 BasicCegarLoop]: Counterexample is feasible [2022-04-08 12:37:17,126 INFO L788 garLoopResultBuilder]: Registering result UNSAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-08 12:37:17,149 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (32)] Forceful destruction successful, exit code 0 [2022-04-08 12:37:17,328 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable30,32 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:37:17,330 INFO L719 BasicCegarLoop]: Path program histogram: [10, 8, 8, 8, 6, 4, 2, 2, 2, 2, 2, 2, 2, 2, 2] [2022-04-08 12:37:17,332 INFO L178 ceAbstractionStarter]: Computing trace abstraction results [2022-04-08 12:37:17,343 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-08 12:37:17,343 WARN L170 areAnnotationChecker]: ULTIMATE.initENTRY has no Hoare annotation [2022-04-08 12:37:17,343 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-04-08 12:37:17,343 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-04-08 12:37:17,343 WARN L170 areAnnotationChecker]: assume_abort_if_notENTRY has no Hoare annotation [2022-04-08 12:37:17,343 WARN L170 areAnnotationChecker]: mainENTRY has no Hoare annotation [2022-04-08 12:37:17,343 WARN L170 areAnnotationChecker]: __VERIFIER_assertENTRY has no Hoare annotation [2022-04-08 12:37:17,343 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-08 12:37:17,343 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-08 12:37:17,343 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-04-08 12:37:17,343 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-04-08 12:37:17,343 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-04-08 12:37:17,343 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-04-08 12:37:17,343 WARN L170 areAnnotationChecker]: L25 has no Hoare annotation [2022-04-08 12:37:17,343 WARN L170 areAnnotationChecker]: L25 has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: L9-2 has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: L25-1 has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: L25-1 has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: L12-2 has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: L27 has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: L47-3 has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: L47-3 has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: L35-1 has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: L35-1 has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: L40-1 has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: L40-1 has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: L48-1 has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: L48-1 has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: L56 has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: L34-3 has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: L34-3 has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: L34-1 has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: L34-1 has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: L39-3 has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: L39-3 has no Hoare annotation [2022-04-08 12:37:17,344 WARN L170 areAnnotationChecker]: L47-2 has no Hoare annotation [2022-04-08 12:37:17,345 WARN L170 areAnnotationChecker]: L47-2 has no Hoare annotation [2022-04-08 12:37:17,345 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-08 12:37:17,345 WARN L170 areAnnotationChecker]: L35 has no Hoare annotation [2022-04-08 12:37:17,345 WARN L170 areAnnotationChecker]: L35 has no Hoare annotation [2022-04-08 12:37:17,345 WARN L170 areAnnotationChecker]: L39-1 has no Hoare annotation [2022-04-08 12:37:17,345 WARN L170 areAnnotationChecker]: L39-1 has no Hoare annotation [2022-04-08 12:37:17,345 WARN L170 areAnnotationChecker]: L47 has no Hoare annotation [2022-04-08 12:37:17,345 WARN L170 areAnnotationChecker]: L47 has no Hoare annotation [2022-04-08 12:37:17,345 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-08 12:37:17,345 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2022-04-08 12:37:17,345 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2022-04-08 12:37:17,345 WARN L170 areAnnotationChecker]: L48 has no Hoare annotation [2022-04-08 12:37:17,345 WARN L170 areAnnotationChecker]: L48 has no Hoare annotation [2022-04-08 12:37:17,345 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-08 12:37:17,346 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 08.04 12:37:17 BoogieIcfgContainer [2022-04-08 12:37:17,346 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-08 12:37:17,346 INFO L158 Benchmark]: Toolchain (without parser) took 122149.10ms. Allocated memory was 173.0MB in the beginning and 207.6MB in the end (delta: 34.6MB). Free memory was 123.6MB in the beginning and 135.6MB in the end (delta: -12.0MB). Peak memory consumption was 24.0MB. Max. memory is 8.0GB. [2022-04-08 12:37:17,346 INFO L158 Benchmark]: CDTParser took 0.12ms. Allocated memory is still 173.0MB. Free memory is still 139.7MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-08 12:37:17,346 INFO L158 Benchmark]: CACSL2BoogieTranslator took 190.47ms. Allocated memory is still 173.0MB. Free memory was 123.4MB in the beginning and 148.0MB in the end (delta: -24.6MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-08 12:37:17,347 INFO L158 Benchmark]: Boogie Preprocessor took 36.82ms. Allocated memory is still 173.0MB. Free memory was 148.0MB in the beginning and 146.7MB in the end (delta: 1.3MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-08 12:37:17,347 INFO L158 Benchmark]: RCFGBuilder took 293.65ms. Allocated memory is still 173.0MB. Free memory was 146.3MB in the beginning and 134.1MB in the end (delta: 12.2MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-08 12:37:17,347 INFO L158 Benchmark]: TraceAbstraction took 121623.04ms. Allocated memory was 173.0MB in the beginning and 207.6MB in the end (delta: 34.6MB). Free memory was 133.7MB in the beginning and 135.6MB in the end (delta: -1.9MB). Peak memory consumption was 33.6MB. Max. memory is 8.0GB. [2022-04-08 12:37:17,347 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 173.0MB. Free memory is still 139.7MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 190.47ms. Allocated memory is still 173.0MB. Free memory was 123.4MB in the beginning and 148.0MB in the end (delta: -24.6MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * Boogie Preprocessor took 36.82ms. Allocated memory is still 173.0MB. Free memory was 148.0MB in the beginning and 146.7MB in the end (delta: 1.3MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 293.65ms. Allocated memory is still 173.0MB. Free memory was 146.3MB in the beginning and 134.1MB in the end (delta: 12.2MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * TraceAbstraction took 121623.04ms. Allocated memory was 173.0MB in the beginning and 207.6MB in the end (delta: 34.6MB). Free memory was 133.7MB in the beginning and 135.6MB in the end (delta: -1.9MB). Peak memory consumption was 33.6MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - 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() [L25] CALL assume_abort_if_not((((long long) R - 1) * ((long long) R - 1)) < A) [L9] COND FALSE !(!cond) [L25] RET assume_abort_if_not((((long long) R - 1) * ((long long) R - 1)) < A) [L27] CALL assume_abort_if_not(A % 2 == 1) [L9] COND FALSE !(!cond) [L27] RET assume_abort_if_not(A % 2 == 1) [L29] u = ((long long) 2 * R) + 1 [L30] v = 1 [L31] 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)) [L39] EXPR counter++ [L39] COND TRUE counter++<10 [L40] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L40] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L41] COND TRUE !(r > 0) [L47] EXPR counter++ [L47] COND TRUE counter++<10 [L48] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L48] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L49] COND FALSE !(!(r < 0)) [L51] r = r + u [L52] u = u + 2 [L47] EXPR counter++ [L47] COND TRUE counter++<10 [L48] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L48] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L49] COND TRUE !(r < 0) [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)) [L39] EXPR counter++ [L39] COND TRUE counter++<10 [L40] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L40] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L41] COND FALSE !(!(r > 0)) [L43] r = r - v [L44] v = v + 2 [L39] EXPR counter++ [L39] COND TRUE counter++<10 [L40] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L40] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L41] COND FALSE !(!(r > 0)) [L43] r = r - v [L44] v = v + 2 [L39] EXPR counter++ [L39] COND TRUE counter++<10 [L40] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L40] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L41] COND TRUE !(r > 0) [L47] EXPR counter++ [L47] COND TRUE counter++<10 [L48] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L48] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L49] COND FALSE !(!(r < 0)) [L51] r = r + u [L52] u = u + 2 [L47] EXPR counter++ [L47] COND TRUE counter++<10 [L48] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L12] COND FALSE !(!(cond)) [L48] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) [L49] COND TRUE !(r < 0) [L34] EXPR counter++ [L34] COND FALSE !(counter++<10) [L56] 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, 40 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 121.6s, OverallIterations: 31, TraceHistogramMax: 11, PathProgramHistogramMax: 10, EmptinessCheckTime: 0.0s, AutomataDifference: 32.8s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 2 mSolverCounterUnknown, 1467 SdHoareTripleChecker+Valid, 9.7s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 1453 mSDsluCounter, 4812 SdHoareTripleChecker+Invalid, 9.7s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 3385 mSDsCounter, 1076 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 1755 IncrementalHoareTripleChecker+Invalid, 2833 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 1076 mSolverCounterUnsat, 1427 mSDtfsCounter, 1755 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 3562 GetRequests, 3201 SyntacticMatches, 16 SemanticMatches, 345 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 496 ImplicationChecksByTransitivity, 1.6s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=368occurred in iteration=30, InterpolantAutomatonStates: 323, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 5.1s AutomataMinimizationTime, 30 MinimizatonAttempts, 97 StatesRemovedByMinimization, 18 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-08 12:37:17,368 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...