/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerC.xml -s ../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/fermat2-ll_unwindbound20.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-e106359-m [2022-04-14 16:16:32,309 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-14 16:16:32,310 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-14 16:16:32,333 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-14 16:16:32,334 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-14 16:16:32,334 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-14 16:16:32,337 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-14 16:16:32,341 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-14 16:16:32,342 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-14 16:16:32,345 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-14 16:16:32,346 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-14 16:16:32,347 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-14 16:16:32,347 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-14 16:16:32,349 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-14 16:16:32,350 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-14 16:16:32,350 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-14 16:16:32,351 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-14 16:16:32,351 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-14 16:16:32,354 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-14 16:16:32,357 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-14 16:16:32,359 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-14 16:16:32,359 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-14 16:16:32,360 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-14 16:16:32,360 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-14 16:16:32,361 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-14 16:16:32,365 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-14 16:16:32,365 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-14 16:16:32,366 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-14 16:16:32,366 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-14 16:16:32,367 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-14 16:16:32,367 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-14 16:16:32,368 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-14 16:16:32,369 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-14 16:16:32,369 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-14 16:16:32,370 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-14 16:16:32,370 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-14 16:16:32,370 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-14 16:16:32,371 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-14 16:16:32,371 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-14 16:16:32,371 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-14 16:16:32,371 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-14 16:16:32,372 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-14 16:16:32,373 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf [2022-04-14 16:16:32,399 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-14 16:16:32,400 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-14 16:16:32,400 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-04-14 16:16:32,400 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-04-14 16:16:32,400 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-14 16:16:32,401 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-14 16:16:32,401 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-14 16:16:32,401 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-14 16:16:32,401 INFO L138 SettingsManager]: * Use SBE=true [2022-04-14 16:16:32,402 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-14 16:16:32,402 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-14 16:16:32,402 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-14 16:16:32,402 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-14 16:16:32,402 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-14 16:16:32,402 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-14 16:16:32,402 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-14 16:16:32,402 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-14 16:16:32,402 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-14 16:16:32,402 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-14 16:16:32,402 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-14 16:16:32,402 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-14 16:16:32,403 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-14 16:16:32,403 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-14 16:16:32,403 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-14 16:16:32,403 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-14 16:16:32,403 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-14 16:16:32,403 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-14 16:16:32,403 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-14 16:16:32,403 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-14 16:16:32,403 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-14 16:16:32,403 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-04-14 16:16:32,403 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-04-14 16:16:32,404 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-14 16:16:32,404 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-14 16:16:32,576 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-14 16:16:32,589 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-14 16:16:32,591 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-14 16:16:32,591 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-14 16:16:32,592 INFO L275 PluginConnector]: CDTParser initialized [2022-04-14 16:16:32,593 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/fermat2-ll_unwindbound20.c [2022-04-14 16:16:32,648 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/54d3f327f/f2a2ea865c23478cb577252c9528a146/FLAGbd78eeee6 [2022-04-14 16:16:32,993 INFO L306 CDTParser]: Found 1 translation units. [2022-04-14 16:16:32,994 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/fermat2-ll_unwindbound20.c [2022-04-14 16:16:32,997 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/54d3f327f/f2a2ea865c23478cb577252c9528a146/FLAGbd78eeee6 [2022-04-14 16:16:33,005 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/54d3f327f/f2a2ea865c23478cb577252c9528a146 [2022-04-14 16:16:33,006 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-14 16:16:33,007 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-14 16:16:33,008 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-14 16:16:33,008 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-14 16:16:33,012 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-14 16:16:33,013 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.04 04:16:33" (1/1) ... [2022-04-14 16:16:33,013 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@31731c29 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 04:16:33, skipping insertion in model container [2022-04-14 16:16:33,013 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.04 04:16:33" (1/1) ... [2022-04-14 16:16:33,020 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-14 16:16:33,028 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-14 16:16:33,148 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/fermat2-ll_unwindbound20.c[524,537] [2022-04-14 16:16:33,163 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-14 16:16:33,168 INFO L203 MainTranslator]: Completed pre-run [2022-04-14 16:16:33,187 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/fermat2-ll_unwindbound20.c[524,537] [2022-04-14 16:16:33,193 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-14 16:16:33,206 INFO L208 MainTranslator]: Completed translation [2022-04-14 16:16:33,206 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 04:16:33 WrapperNode [2022-04-14 16:16:33,207 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-14 16:16:33,207 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-14 16:16:33,207 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-14 16:16:33,207 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-14 16:16:33,221 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 04:16:33" (1/1) ... [2022-04-14 16:16:33,221 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 04:16:33" (1/1) ... [2022-04-14 16:16:33,224 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 04:16:33" (1/1) ... [2022-04-14 16:16:33,225 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 04:16:33" (1/1) ... [2022-04-14 16:16:33,230 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 04:16:33" (1/1) ... [2022-04-14 16:16:33,233 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 04:16:33" (1/1) ... [2022-04-14 16:16:33,234 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 04:16:33" (1/1) ... [2022-04-14 16:16:33,237 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-14 16:16:33,237 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-14 16:16:33,237 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-14 16:16:33,237 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-14 16:16:33,238 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 04:16:33" (1/1) ... [2022-04-14 16:16:33,248 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-14 16:16:33,259 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 16:16:33,269 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-14 16:16:33,274 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-14 16:16:33,306 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-14 16:16:33,306 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-14 16:16:33,306 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-14 16:16:33,307 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-14 16:16:33,307 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-14 16:16:33,307 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-14 16:16:33,307 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-14 16:16:33,307 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-14 16:16:33,307 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-14 16:16:33,307 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-14 16:16:33,307 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-14 16:16:33,307 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-14 16:16:33,307 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-14 16:16:33,307 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-14 16:16:33,307 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-14 16:16:33,307 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-14 16:16:33,308 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-14 16:16:33,308 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-14 16:16:33,308 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-14 16:16:33,308 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-14 16:16:33,347 INFO L234 CfgBuilder]: Building ICFG [2022-04-14 16:16:33,348 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-14 16:16:33,483 INFO L275 CfgBuilder]: Performing block encoding [2022-04-14 16:16:33,491 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-14 16:16:33,491 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-14 16:16:33,492 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 04:16:33 BoogieIcfgContainer [2022-04-14 16:16:33,493 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-14 16:16:33,493 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-14 16:16:33,494 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-14 16:16:33,496 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-14 16:16:33,496 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 14.04 04:16:33" (1/3) ... [2022-04-14 16:16:33,497 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3bad0b0e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.04 04:16:33, skipping insertion in model container [2022-04-14 16:16:33,497 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 04:16:33" (2/3) ... [2022-04-14 16:16:33,497 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3bad0b0e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.04 04:16:33, skipping insertion in model container [2022-04-14 16:16:33,497 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 04:16:33" (3/3) ... [2022-04-14 16:16:33,498 INFO L111 eAbstractionObserver]: Analyzing ICFG fermat2-ll_unwindbound20.c [2022-04-14 16:16:33,503 INFO L202 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-14 16:16:33,503 INFO L161 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-14 16:16:33,530 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-14 16:16:33,533 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-14 16:16:33,534 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-14 16:16:33,545 INFO L276 IsEmpty]: Start isEmpty. Operand has 30 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 19 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-14 16:16:33,548 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-04-14 16:16:33,548 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 16:16:33,549 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-14 16:16:33,549 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 16:16:33,552 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 16:16:33,552 INFO L85 PathProgramCache]: Analyzing trace with hash -1859024204, now seen corresponding path program 1 times [2022-04-14 16:16:33,558 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 16:16:33,558 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1602004766] [2022-04-14 16:16:33,558 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 16:16:33,559 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 16:16:33,622 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 16:16:33,623 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [383301662] [2022-04-14 16:16:33,623 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 16:16:33,623 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 16:16:33,623 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 16:16:33,625 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-14 16:16:33,625 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-14 16:16:33,697 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 16:16:33,699 INFO L263 TraceCheckSpWp]: Trace formula consists of 89 conjuncts, 1 conjunts are in the unsatisfiable core [2022-04-14 16:16:33,714 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 16:16:33,716 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 16:16:33,807 INFO L272 TraceCheckUtils]: 0: Hoare triple {33#true} call ULTIMATE.init(); {33#true} is VALID [2022-04-14 16:16:33,807 INFO L290 TraceCheckUtils]: 1: Hoare triple {33#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {33#true} is VALID [2022-04-14 16:16:33,808 INFO L290 TraceCheckUtils]: 2: Hoare triple {33#true} assume true; {33#true} is VALID [2022-04-14 16:16:33,808 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {33#true} {33#true} #67#return; {33#true} is VALID [2022-04-14 16:16:33,809 INFO L272 TraceCheckUtils]: 4: Hoare triple {33#true} call #t~ret7 := main(); {33#true} is VALID [2022-04-14 16:16:33,809 INFO L290 TraceCheckUtils]: 5: Hoare triple {33#true} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {33#true} is VALID [2022-04-14 16:16:33,809 INFO L272 TraceCheckUtils]: 6: Hoare triple {33#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {33#true} is VALID [2022-04-14 16:16:33,813 INFO L290 TraceCheckUtils]: 7: Hoare triple {33#true} ~cond := #in~cond; {33#true} is VALID [2022-04-14 16:16:33,813 INFO L290 TraceCheckUtils]: 8: Hoare triple {33#true} assume 0 == ~cond;assume false; {34#false} is VALID [2022-04-14 16:16:33,814 INFO L290 TraceCheckUtils]: 9: Hoare triple {34#false} assume true; {34#false} is VALID [2022-04-14 16:16:33,814 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {34#false} {33#true} #59#return; {34#false} is VALID [2022-04-14 16:16:33,814 INFO L272 TraceCheckUtils]: 11: Hoare triple {34#false} 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)); {34#false} is VALID [2022-04-14 16:16:33,815 INFO L290 TraceCheckUtils]: 12: Hoare triple {34#false} ~cond := #in~cond; {34#false} is VALID [2022-04-14 16:16:33,815 INFO L290 TraceCheckUtils]: 13: Hoare triple {34#false} assume 0 == ~cond;assume false; {34#false} is VALID [2022-04-14 16:16:33,815 INFO L290 TraceCheckUtils]: 14: Hoare triple {34#false} assume true; {34#false} is VALID [2022-04-14 16:16:33,815 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {34#false} {34#false} #61#return; {34#false} is VALID [2022-04-14 16:16:33,815 INFO L290 TraceCheckUtils]: 16: Hoare triple {34#false} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {34#false} is VALID [2022-04-14 16:16:33,816 INFO L290 TraceCheckUtils]: 17: Hoare triple {34#false} assume !true; {34#false} is VALID [2022-04-14 16:16:33,816 INFO L272 TraceCheckUtils]: 18: Hoare triple {34#false} call __VERIFIER_assert((if 4 * ~A~0 == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {34#false} is VALID [2022-04-14 16:16:33,816 INFO L290 TraceCheckUtils]: 19: Hoare triple {34#false} ~cond := #in~cond; {34#false} is VALID [2022-04-14 16:16:33,817 INFO L290 TraceCheckUtils]: 20: Hoare triple {34#false} assume 0 == ~cond; {34#false} is VALID [2022-04-14 16:16:33,817 INFO L290 TraceCheckUtils]: 21: Hoare triple {34#false} assume !false; {34#false} is VALID [2022-04-14 16:16:33,818 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-14 16:16:33,818 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 16:16:33,818 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 16:16:33,819 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1602004766] [2022-04-14 16:16:33,819 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 16:16:33,820 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [383301662] [2022-04-14 16:16:33,820 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [383301662] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 16:16:33,821 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 16:16:33,821 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-04-14 16:16:33,822 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [602342615] [2022-04-14 16:16:33,823 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 16:16:33,827 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), 2 states have call successors, (3) Word has length 22 [2022-04-14 16:16:33,828 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 16:16:33,830 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), 2 states have call successors, (3) [2022-04-14 16:16:33,855 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-14 16:16:33,856 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-04-14 16:16:33,856 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 16:16:33,877 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-04-14 16:16:33,878 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-04-14 16:16:33,880 INFO L87 Difference]: Start difference. First operand has 30 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 19 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand has 2 states, 2 states have (on average 6.5) internal successors, (13), 2 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-14 16:16:33,934 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 16:16:33,935 INFO L93 Difference]: Finished difference Result 53 states and 70 transitions. [2022-04-14 16:16:33,935 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-04-14 16:16:33,938 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), 2 states have call successors, (3) Word has length 22 [2022-04-14 16:16:33,938 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 16:16:33,939 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), 2 states have call successors, (3) [2022-04-14 16:16:33,945 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 70 transitions. [2022-04-14 16:16:33,945 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), 2 states have call successors, (3) [2022-04-14 16:16:33,949 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 70 transitions. [2022-04-14 16:16:33,949 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 2 states and 70 transitions. [2022-04-14 16:16:34,007 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-14 16:16:34,017 INFO L225 Difference]: With dead ends: 53 [2022-04-14 16:16:34,017 INFO L226 Difference]: Without dead ends: 25 [2022-04-14 16:16:34,020 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-14 16:16:34,022 INFO L913 BasicCegarLoop]: 34 mSDtfsCounter, 0 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 34 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-14 16:16:34,023 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 34 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-14 16:16:34,034 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 25 states. [2022-04-14 16:16:34,045 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 25 to 25. [2022-04-14 16:16:34,045 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 16:16:34,046 INFO L82 GeneralOperation]: Start isEquivalent. First operand 25 states. Second operand has 25 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 16:16:34,046 INFO L74 IsIncluded]: Start isIncluded. First operand 25 states. Second operand has 25 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 16:16:34,047 INFO L87 Difference]: Start difference. First operand 25 states. Second operand has 25 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 16:16:34,053 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 16:16:34,053 INFO L93 Difference]: Finished difference Result 25 states and 29 transitions. [2022-04-14 16:16:34,053 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 29 transitions. [2022-04-14 16:16:34,053 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 16:16:34,053 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 16:16:34,054 INFO L74 IsIncluded]: Start isIncluded. First operand has 25 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 25 states. [2022-04-14 16:16:34,054 INFO L87 Difference]: Start difference. First operand has 25 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 25 states. [2022-04-14 16:16:34,056 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 16:16:34,056 INFO L93 Difference]: Finished difference Result 25 states and 29 transitions. [2022-04-14 16:16:34,057 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 29 transitions. [2022-04-14 16:16:34,057 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 16:16:34,057 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 16:16:34,057 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 16:16:34,057 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 16:16:34,057 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 16:16:34,059 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 29 transitions. [2022-04-14 16:16:34,060 INFO L78 Accepts]: Start accepts. Automaton has 25 states and 29 transitions. Word has length 22 [2022-04-14 16:16:34,060 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 16:16:34,060 INFO L478 AbstractCegarLoop]: Abstraction has 25 states and 29 transitions. [2022-04-14 16:16:34,060 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), 2 states have call successors, (3) [2022-04-14 16:16:34,060 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 29 transitions. [2022-04-14 16:16:34,061 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-14 16:16:34,061 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 16:16:34,061 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-14 16:16:34,080 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-14 16:16:34,275 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-14 16:16:34,275 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 16:16:34,276 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 16:16:34,276 INFO L85 PathProgramCache]: Analyzing trace with hash 243739414, now seen corresponding path program 1 times [2022-04-14 16:16:34,276 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 16:16:34,276 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [553587254] [2022-04-14 16:16:34,276 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 16:16:34,276 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 16:16:34,308 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 16:16:34,308 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1689619235] [2022-04-14 16:16:34,308 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 16:16:34,308 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 16:16:34,308 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 16:16:34,310 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-14 16:16:34,311 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-14 16:16:34,369 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 16:16:34,370 INFO L263 TraceCheckSpWp]: Trace formula consists of 93 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-14 16:16:34,377 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 16:16:34,378 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 16:16:34,525 INFO L272 TraceCheckUtils]: 0: Hoare triple {256#true} call ULTIMATE.init(); {256#true} is VALID [2022-04-14 16:16:34,526 INFO L290 TraceCheckUtils]: 1: Hoare triple {256#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; {264#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:34,526 INFO L290 TraceCheckUtils]: 2: Hoare triple {264#(<= ~counter~0 0)} assume true; {264#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:34,527 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {264#(<= ~counter~0 0)} {256#true} #67#return; {264#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:34,528 INFO L272 TraceCheckUtils]: 4: Hoare triple {264#(<= ~counter~0 0)} call #t~ret7 := main(); {264#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:34,528 INFO L290 TraceCheckUtils]: 5: Hoare triple {264#(<= ~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; {264#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:34,529 INFO L272 TraceCheckUtils]: 6: Hoare triple {264#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {264#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:34,529 INFO L290 TraceCheckUtils]: 7: Hoare triple {264#(<= ~counter~0 0)} ~cond := #in~cond; {264#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:34,530 INFO L290 TraceCheckUtils]: 8: Hoare triple {264#(<= ~counter~0 0)} assume !(0 == ~cond); {264#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:34,530 INFO L290 TraceCheckUtils]: 9: Hoare triple {264#(<= ~counter~0 0)} assume true; {264#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:34,531 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {264#(<= ~counter~0 0)} {264#(<= ~counter~0 0)} #59#return; {264#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:34,531 INFO L272 TraceCheckUtils]: 11: Hoare triple {264#(<= ~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)); {264#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:34,532 INFO L290 TraceCheckUtils]: 12: Hoare triple {264#(<= ~counter~0 0)} ~cond := #in~cond; {264#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:34,532 INFO L290 TraceCheckUtils]: 13: Hoare triple {264#(<= ~counter~0 0)} assume !(0 == ~cond); {264#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:34,532 INFO L290 TraceCheckUtils]: 14: Hoare triple {264#(<= ~counter~0 0)} assume true; {264#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:34,533 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {264#(<= ~counter~0 0)} {264#(<= ~counter~0 0)} #61#return; {264#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:34,533 INFO L290 TraceCheckUtils]: 16: Hoare triple {264#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {264#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:34,534 INFO L290 TraceCheckUtils]: 17: Hoare triple {264#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {313#(<= |main_#t~post6| 0)} is VALID [2022-04-14 16:16:34,534 INFO L290 TraceCheckUtils]: 18: Hoare triple {313#(<= |main_#t~post6| 0)} assume !(#t~post6 < 20);havoc #t~post6; {257#false} is VALID [2022-04-14 16:16:34,534 INFO L272 TraceCheckUtils]: 19: Hoare triple {257#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)); {257#false} is VALID [2022-04-14 16:16:34,534 INFO L290 TraceCheckUtils]: 20: Hoare triple {257#false} ~cond := #in~cond; {257#false} is VALID [2022-04-14 16:16:34,535 INFO L290 TraceCheckUtils]: 21: Hoare triple {257#false} assume 0 == ~cond; {257#false} is VALID [2022-04-14 16:16:34,535 INFO L290 TraceCheckUtils]: 22: Hoare triple {257#false} assume !false; {257#false} is VALID [2022-04-14 16:16:34,535 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-14 16:16:34,535 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 16:16:34,535 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 16:16:34,535 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [553587254] [2022-04-14 16:16:34,535 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 16:16:34,536 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1689619235] [2022-04-14 16:16:34,536 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1689619235] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 16:16:34,536 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 16:16:34,536 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-14 16:16:34,536 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1968512997] [2022-04-14 16:16:34,536 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 16:16:34,537 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-14 16:16:34,537 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 16:16:34,537 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-14 16:16:34,552 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-14 16:16:34,552 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-14 16:16:34,552 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 16:16:34,553 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-14 16:16:34,553 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-14 16:16:34,553 INFO L87 Difference]: Start difference. First operand 25 states and 29 transitions. Second operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-14 16:16:34,604 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 16:16:34,605 INFO L93 Difference]: Finished difference Result 34 states and 38 transitions. [2022-04-14 16:16:34,605 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-14 16:16:34,605 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-14 16:16:34,605 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 16:16:34,605 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-14 16:16:34,610 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 38 transitions. [2022-04-14 16:16:34,610 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-14 16:16:34,614 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 38 transitions. [2022-04-14 16:16:34,614 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 38 transitions. [2022-04-14 16:16:34,638 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-14 16:16:34,640 INFO L225 Difference]: With dead ends: 34 [2022-04-14 16:16:34,640 INFO L226 Difference]: Without dead ends: 27 [2022-04-14 16:16:34,641 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-14 16:16:34,644 INFO L913 BasicCegarLoop]: 27 mSDtfsCounter, 0 mSDsluCounter, 40 mSDsCounter, 0 mSdLazyCounter, 7 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 67 SdHoareTripleChecker+Invalid, 7 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 7 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-14 16:16:34,644 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 67 Invalid, 7 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 7 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-14 16:16:34,646 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2022-04-14 16:16:34,653 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 27. [2022-04-14 16:16:34,654 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 16:16:34,654 INFO L82 GeneralOperation]: Start isEquivalent. First operand 27 states. Second operand has 27 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 16:16:34,654 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand has 27 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 16:16:34,655 INFO L87 Difference]: Start difference. First operand 27 states. Second operand has 27 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 16:16:34,659 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 16:16:34,659 INFO L93 Difference]: Finished difference Result 27 states and 31 transitions. [2022-04-14 16:16:34,659 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-14 16:16:34,659 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 16:16:34,659 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 16:16:34,661 INFO L74 IsIncluded]: Start isIncluded. First operand has 27 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 27 states. [2022-04-14 16:16:34,662 INFO L87 Difference]: Start difference. First operand has 27 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 27 states. [2022-04-14 16:16:34,664 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 16:16:34,664 INFO L93 Difference]: Finished difference Result 27 states and 31 transitions. [2022-04-14 16:16:34,664 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-14 16:16:34,665 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 16:16:34,665 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 16:16:34,665 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 16:16:34,665 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 16:16:34,666 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 16:16:34,668 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 31 transitions. [2022-04-14 16:16:34,669 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 31 transitions. Word has length 23 [2022-04-14 16:16:34,669 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 16:16:34,669 INFO L478 AbstractCegarLoop]: Abstraction has 27 states and 31 transitions. [2022-04-14 16:16:34,669 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-14 16:16:34,669 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-14 16:16:34,671 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-14 16:16:34,673 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 16:16:34,673 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-14 16:16:34,701 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-14 16:16:34,879 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-14 16:16:34,880 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 16:16:34,880 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 16:16:34,880 INFO L85 PathProgramCache]: Analyzing trace with hash 245526874, now seen corresponding path program 1 times [2022-04-14 16:16:34,880 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 16:16:34,881 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [589087813] [2022-04-14 16:16:34,881 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 16:16:34,881 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 16:16:34,895 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 16:16:34,895 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2066425835] [2022-04-14 16:16:34,896 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 16:16:34,896 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 16:16:34,896 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 16:16:34,899 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-14 16:16:34,900 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-14 16:16:34,943 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 16:16:34,943 INFO L263 TraceCheckSpWp]: Trace formula consists of 93 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-14 16:16:34,957 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 16:16:34,957 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 16:16:35,297 INFO L272 TraceCheckUtils]: 0: Hoare triple {469#true} call ULTIMATE.init(); {469#true} is VALID [2022-04-14 16:16:35,297 INFO L290 TraceCheckUtils]: 1: Hoare triple {469#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; {469#true} is VALID [2022-04-14 16:16:35,297 INFO L290 TraceCheckUtils]: 2: Hoare triple {469#true} assume true; {469#true} is VALID [2022-04-14 16:16:35,297 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {469#true} {469#true} #67#return; {469#true} is VALID [2022-04-14 16:16:35,297 INFO L272 TraceCheckUtils]: 4: Hoare triple {469#true} call #t~ret7 := main(); {469#true} is VALID [2022-04-14 16:16:35,297 INFO L290 TraceCheckUtils]: 5: Hoare triple {469#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; {469#true} is VALID [2022-04-14 16:16:35,298 INFO L272 TraceCheckUtils]: 6: Hoare triple {469#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {469#true} is VALID [2022-04-14 16:16:35,298 INFO L290 TraceCheckUtils]: 7: Hoare triple {469#true} ~cond := #in~cond; {469#true} is VALID [2022-04-14 16:16:35,298 INFO L290 TraceCheckUtils]: 8: Hoare triple {469#true} assume !(0 == ~cond); {469#true} is VALID [2022-04-14 16:16:35,298 INFO L290 TraceCheckUtils]: 9: Hoare triple {469#true} assume true; {469#true} is VALID [2022-04-14 16:16:35,298 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {469#true} {469#true} #59#return; {469#true} is VALID [2022-04-14 16:16:35,298 INFO L272 TraceCheckUtils]: 11: Hoare triple {469#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)); {469#true} is VALID [2022-04-14 16:16:35,298 INFO L290 TraceCheckUtils]: 12: Hoare triple {469#true} ~cond := #in~cond; {469#true} is VALID [2022-04-14 16:16:35,298 INFO L290 TraceCheckUtils]: 13: Hoare triple {469#true} assume !(0 == ~cond); {469#true} is VALID [2022-04-14 16:16:35,298 INFO L290 TraceCheckUtils]: 14: Hoare triple {469#true} assume true; {469#true} is VALID [2022-04-14 16:16:35,299 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {469#true} {469#true} #61#return; {469#true} is VALID [2022-04-14 16:16:37,302 WARN L290 TraceCheckUtils]: 16: Hoare triple {469#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {522#(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-14 16:16:37,303 INFO L290 TraceCheckUtils]: 17: Hoare triple {522#(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; {522#(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-14 16:16:37,303 INFO L290 TraceCheckUtils]: 18: Hoare triple {522#(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 < 20);havoc #t~post6; {522#(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-14 16:16:38,706 INFO L272 TraceCheckUtils]: 19: Hoare triple {522#(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)); {532#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 16:16:38,711 INFO L290 TraceCheckUtils]: 20: Hoare triple {532#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {536#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 16:16:38,712 INFO L290 TraceCheckUtils]: 21: Hoare triple {536#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {470#false} is VALID [2022-04-14 16:16:38,712 INFO L290 TraceCheckUtils]: 22: Hoare triple {470#false} assume !false; {470#false} is VALID [2022-04-14 16:16:38,712 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-14 16:16:38,712 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 16:16:38,712 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 16:16:38,712 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [589087813] [2022-04-14 16:16:38,713 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 16:16:38,713 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2066425835] [2022-04-14 16:16:38,713 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2066425835] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 16:16:38,713 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 16:16:38,713 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-14 16:16:38,713 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [648123111] [2022-04-14 16:16:38,713 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 16:16:38,713 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-14 16:16:38,714 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 16:16:38,714 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-14 16:16:39,858 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-14 16:16:39,858 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-14 16:16:39,858 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 16:16:39,859 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-14 16:16:39,859 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-14 16:16:39,859 INFO L87 Difference]: Start difference. First operand 27 states and 31 transitions. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-14 16:16:42,467 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.13s for a HTC check with result VALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-14 16:16:42,504 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 16:16:42,504 INFO L93 Difference]: Finished difference Result 39 states and 46 transitions. [2022-04-14 16:16:42,504 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-14 16:16:42,505 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-14 16:16:42,505 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 16:16:42,505 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-14 16:16:42,506 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 44 transitions. [2022-04-14 16:16:42,506 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-14 16:16:42,507 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 44 transitions. [2022-04-14 16:16:42,507 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 44 transitions. [2022-04-14 16:16:47,795 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 42 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-14 16:16:47,796 INFO L225 Difference]: With dead ends: 39 [2022-04-14 16:16:47,796 INFO L226 Difference]: Without dead ends: 37 [2022-04-14 16:16:47,796 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-14 16:16:47,797 INFO L913 BasicCegarLoop]: 24 mSDtfsCounter, 8 mSDsluCounter, 61 mSDsCounter, 0 mSdLazyCounter, 36 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 85 SdHoareTripleChecker+Invalid, 37 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 36 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.8s IncrementalHoareTripleChecker+Time [2022-04-14 16:16:47,797 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [9 Valid, 85 Invalid, 37 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 36 Invalid, 0 Unknown, 0 Unchecked, 1.8s Time] [2022-04-14 16:16:47,798 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-04-14 16:16:47,804 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 36. [2022-04-14 16:16:47,804 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 16:16:47,804 INFO L82 GeneralOperation]: Start isEquivalent. First operand 37 states. Second operand has 36 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-14 16:16:47,804 INFO L74 IsIncluded]: Start isIncluded. First operand 37 states. Second operand has 36 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-14 16:16:47,804 INFO L87 Difference]: Start difference. First operand 37 states. Second operand has 36 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-14 16:16:47,806 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 16:16:47,806 INFO L93 Difference]: Finished difference Result 37 states and 44 transitions. [2022-04-14 16:16:47,806 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 44 transitions. [2022-04-14 16:16:47,806 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 16:16:47,806 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 16:16:47,806 INFO L74 IsIncluded]: Start isIncluded. First operand has 36 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 37 states. [2022-04-14 16:16:47,807 INFO L87 Difference]: Start difference. First operand has 36 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 37 states. [2022-04-14 16:16:47,808 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 16:16:47,808 INFO L93 Difference]: Finished difference Result 37 states and 44 transitions. [2022-04-14 16:16:47,808 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 44 transitions. [2022-04-14 16:16:47,808 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 16:16:47,808 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 16:16:47,808 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 16:16:47,808 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 16:16:47,809 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-14 16:16:47,810 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 43 transitions. [2022-04-14 16:16:47,810 INFO L78 Accepts]: Start accepts. Automaton has 36 states and 43 transitions. Word has length 23 [2022-04-14 16:16:47,810 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 16:16:47,810 INFO L478 AbstractCegarLoop]: Abstraction has 36 states and 43 transitions. [2022-04-14 16:16:47,810 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-14 16:16:47,810 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 43 transitions. [2022-04-14 16:16:47,811 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-14 16:16:47,811 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 16:16:47,811 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-14 16:16:47,828 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-14 16:16:48,011 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-14 16:16:48,011 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 16:16:48,012 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 16:16:48,012 INFO L85 PathProgramCache]: Analyzing trace with hash -1019533657, now seen corresponding path program 1 times [2022-04-14 16:16:48,012 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 16:16:48,012 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [487621663] [2022-04-14 16:16:48,012 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 16:16:48,012 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 16:16:48,023 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 16:16:48,023 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [660708353] [2022-04-14 16:16:48,023 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 16:16:48,023 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 16:16:48,023 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 16:16:48,024 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-14 16:16:48,025 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-14 16:16:48,058 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 16:16:48,059 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-14 16:16:48,065 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 16:16:48,066 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 16:16:48,201 INFO L272 TraceCheckUtils]: 0: Hoare triple {724#true} call ULTIMATE.init(); {724#true} is VALID [2022-04-14 16:16:48,202 INFO L290 TraceCheckUtils]: 1: Hoare triple {724#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; {724#true} is VALID [2022-04-14 16:16:48,202 INFO L290 TraceCheckUtils]: 2: Hoare triple {724#true} assume true; {724#true} is VALID [2022-04-14 16:16:48,202 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {724#true} {724#true} #67#return; {724#true} is VALID [2022-04-14 16:16:48,202 INFO L272 TraceCheckUtils]: 4: Hoare triple {724#true} call #t~ret7 := main(); {724#true} is VALID [2022-04-14 16:16:48,202 INFO L290 TraceCheckUtils]: 5: Hoare triple {724#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; {724#true} is VALID [2022-04-14 16:16:48,202 INFO L272 TraceCheckUtils]: 6: Hoare triple {724#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {724#true} is VALID [2022-04-14 16:16:48,202 INFO L290 TraceCheckUtils]: 7: Hoare triple {724#true} ~cond := #in~cond; {724#true} is VALID [2022-04-14 16:16:48,203 INFO L290 TraceCheckUtils]: 8: Hoare triple {724#true} assume !(0 == ~cond); {724#true} is VALID [2022-04-14 16:16:48,203 INFO L290 TraceCheckUtils]: 9: Hoare triple {724#true} assume true; {724#true} is VALID [2022-04-14 16:16:48,203 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {724#true} {724#true} #59#return; {724#true} is VALID [2022-04-14 16:16:48,203 INFO L272 TraceCheckUtils]: 11: Hoare triple {724#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)); {724#true} is VALID [2022-04-14 16:16:48,203 INFO L290 TraceCheckUtils]: 12: Hoare triple {724#true} ~cond := #in~cond; {724#true} is VALID [2022-04-14 16:16:48,203 INFO L290 TraceCheckUtils]: 13: Hoare triple {724#true} assume !(0 == ~cond); {724#true} is VALID [2022-04-14 16:16:48,203 INFO L290 TraceCheckUtils]: 14: Hoare triple {724#true} assume true; {724#true} is VALID [2022-04-14 16:16:48,203 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {724#true} {724#true} #61#return; {724#true} is VALID [2022-04-14 16:16:48,203 INFO L290 TraceCheckUtils]: 16: Hoare triple {724#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {724#true} is VALID [2022-04-14 16:16:48,203 INFO L290 TraceCheckUtils]: 17: Hoare triple {724#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {724#true} is VALID [2022-04-14 16:16:48,203 INFO L290 TraceCheckUtils]: 18: Hoare triple {724#true} assume !!(#t~post6 < 20);havoc #t~post6; {724#true} is VALID [2022-04-14 16:16:48,204 INFO L272 TraceCheckUtils]: 19: Hoare triple {724#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)); {724#true} is VALID [2022-04-14 16:16:48,204 INFO L290 TraceCheckUtils]: 20: Hoare triple {724#true} ~cond := #in~cond; {789#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-14 16:16:48,204 INFO L290 TraceCheckUtils]: 21: Hoare triple {789#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {793#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 16:16:48,205 INFO L290 TraceCheckUtils]: 22: Hoare triple {793#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {793#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 16:16:48,205 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {793#(not (= |__VERIFIER_assert_#in~cond| 0))} {724#true} #63#return; {800#(= (+ (* 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-14 16:16:48,206 INFO L290 TraceCheckUtils]: 24: Hoare triple {800#(= (+ (* 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); {804#(= (+ (* 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-14 16:16:48,207 INFO L272 TraceCheckUtils]: 25: Hoare triple {804#(= (+ (* 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)); {808#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 16:16:48,207 INFO L290 TraceCheckUtils]: 26: Hoare triple {808#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {812#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 16:16:48,207 INFO L290 TraceCheckUtils]: 27: Hoare triple {812#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {725#false} is VALID [2022-04-14 16:16:48,207 INFO L290 TraceCheckUtils]: 28: Hoare triple {725#false} assume !false; {725#false} is VALID [2022-04-14 16:16:48,208 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-14 16:16:48,208 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 16:16:48,548 INFO L290 TraceCheckUtils]: 28: Hoare triple {725#false} assume !false; {725#false} is VALID [2022-04-14 16:16:48,548 INFO L290 TraceCheckUtils]: 27: Hoare triple {812#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {725#false} is VALID [2022-04-14 16:16:48,549 INFO L290 TraceCheckUtils]: 26: Hoare triple {808#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {812#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 16:16:48,549 INFO L272 TraceCheckUtils]: 25: Hoare triple {804#(= (+ (* 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)); {808#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 16:16:48,550 INFO L290 TraceCheckUtils]: 24: Hoare triple {831#(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); {804#(= (+ (* 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-14 16:16:48,551 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {793#(not (= |__VERIFIER_assert_#in~cond| 0))} {724#true} #63#return; {831#(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-14 16:16:48,551 INFO L290 TraceCheckUtils]: 22: Hoare triple {793#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {793#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 16:16:48,551 INFO L290 TraceCheckUtils]: 21: Hoare triple {844#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {793#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 16:16:48,552 INFO L290 TraceCheckUtils]: 20: Hoare triple {724#true} ~cond := #in~cond; {844#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-14 16:16:48,552 INFO L272 TraceCheckUtils]: 19: Hoare triple {724#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)); {724#true} is VALID [2022-04-14 16:16:48,552 INFO L290 TraceCheckUtils]: 18: Hoare triple {724#true} assume !!(#t~post6 < 20);havoc #t~post6; {724#true} is VALID [2022-04-14 16:16:48,552 INFO L290 TraceCheckUtils]: 17: Hoare triple {724#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {724#true} is VALID [2022-04-14 16:16:48,552 INFO L290 TraceCheckUtils]: 16: Hoare triple {724#true} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {724#true} is VALID [2022-04-14 16:16:48,552 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {724#true} {724#true} #61#return; {724#true} is VALID [2022-04-14 16:16:48,552 INFO L290 TraceCheckUtils]: 14: Hoare triple {724#true} assume true; {724#true} is VALID [2022-04-14 16:16:48,552 INFO L290 TraceCheckUtils]: 13: Hoare triple {724#true} assume !(0 == ~cond); {724#true} is VALID [2022-04-14 16:16:48,552 INFO L290 TraceCheckUtils]: 12: Hoare triple {724#true} ~cond := #in~cond; {724#true} is VALID [2022-04-14 16:16:48,553 INFO L272 TraceCheckUtils]: 11: Hoare triple {724#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)); {724#true} is VALID [2022-04-14 16:16:48,553 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {724#true} {724#true} #59#return; {724#true} is VALID [2022-04-14 16:16:48,553 INFO L290 TraceCheckUtils]: 9: Hoare triple {724#true} assume true; {724#true} is VALID [2022-04-14 16:16:48,553 INFO L290 TraceCheckUtils]: 8: Hoare triple {724#true} assume !(0 == ~cond); {724#true} is VALID [2022-04-14 16:16:48,553 INFO L290 TraceCheckUtils]: 7: Hoare triple {724#true} ~cond := #in~cond; {724#true} is VALID [2022-04-14 16:16:48,553 INFO L272 TraceCheckUtils]: 6: Hoare triple {724#true} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {724#true} is VALID [2022-04-14 16:16:48,553 INFO L290 TraceCheckUtils]: 5: Hoare triple {724#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; {724#true} is VALID [2022-04-14 16:16:48,553 INFO L272 TraceCheckUtils]: 4: Hoare triple {724#true} call #t~ret7 := main(); {724#true} is VALID [2022-04-14 16:16:48,553 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {724#true} {724#true} #67#return; {724#true} is VALID [2022-04-14 16:16:48,553 INFO L290 TraceCheckUtils]: 2: Hoare triple {724#true} assume true; {724#true} is VALID [2022-04-14 16:16:48,553 INFO L290 TraceCheckUtils]: 1: Hoare triple {724#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; {724#true} is VALID [2022-04-14 16:16:48,554 INFO L272 TraceCheckUtils]: 0: Hoare triple {724#true} call ULTIMATE.init(); {724#true} is VALID [2022-04-14 16:16:48,554 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-14 16:16:48,554 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 16:16:48,554 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [487621663] [2022-04-14 16:16:48,554 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 16:16:48,554 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [660708353] [2022-04-14 16:16:48,554 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [660708353] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 16:16:48,554 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 16:16:48,554 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-14 16:16:48,554 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2059092336] [2022-04-14 16:16:48,554 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 16:16:48,555 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.111111111111111) internal successors, (19), 7 states have internal predecessors, (19), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) Word has length 29 [2022-04-14 16:16:48,555 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 16:16:48,555 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.111111111111111) internal successors, (19), 7 states have internal predecessors, (19), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-14 16:16:48,573 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 16:16:48,573 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-14 16:16:48,574 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 16:16:48,574 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-14 16:16:48,574 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=67, Unknown=0, NotChecked=0, Total=90 [2022-04-14 16:16:48,574 INFO L87 Difference]: Start difference. First operand 36 states and 43 transitions. Second operand has 10 states, 9 states have (on average 2.111111111111111) internal successors, (19), 7 states have internal predecessors, (19), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-14 16:16:48,790 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 16:16:48,790 INFO L93 Difference]: Finished difference Result 43 states and 49 transitions. [2022-04-14 16:16:48,790 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-14 16:16:48,790 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.111111111111111) internal successors, (19), 7 states have internal predecessors, (19), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) Word has length 29 [2022-04-14 16:16:48,790 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 16:16:48,791 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.111111111111111) internal successors, (19), 7 states have internal predecessors, (19), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-14 16:16:48,792 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 35 transitions. [2022-04-14 16:16:48,792 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.111111111111111) internal successors, (19), 7 states have internal predecessors, (19), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-14 16:16:48,793 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 35 transitions. [2022-04-14 16:16:48,793 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 35 transitions. [2022-04-14 16:16:48,824 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-14 16:16:48,825 INFO L225 Difference]: With dead ends: 43 [2022-04-14 16:16:48,825 INFO L226 Difference]: Without dead ends: 38 [2022-04-14 16:16:48,825 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-14 16:16:48,826 INFO L913 BasicCegarLoop]: 21 mSDtfsCounter, 21 mSDsluCounter, 88 mSDsCounter, 0 mSdLazyCounter, 55 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 21 SdHoareTripleChecker+Valid, 109 SdHoareTripleChecker+Invalid, 64 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 55 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 16:16:48,826 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [21 Valid, 109 Invalid, 64 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 55 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 16:16:48,826 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 38 states. [2022-04-14 16:16:48,832 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 38 to 29. [2022-04-14 16:16:48,832 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 16:16:48,832 INFO L82 GeneralOperation]: Start isEquivalent. First operand 38 states. Second operand has 29 states, 19 states have (on average 1.105263157894737) internal successors, (21), 19 states have internal predecessors, (21), 6 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 16:16:48,833 INFO L74 IsIncluded]: Start isIncluded. First operand 38 states. Second operand has 29 states, 19 states have (on average 1.105263157894737) internal successors, (21), 19 states have internal predecessors, (21), 6 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 16:16:48,833 INFO L87 Difference]: Start difference. First operand 38 states. Second operand has 29 states, 19 states have (on average 1.105263157894737) internal successors, (21), 19 states have internal predecessors, (21), 6 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 16:16:48,834 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 16:16:48,834 INFO L93 Difference]: Finished difference Result 38 states and 42 transitions. [2022-04-14 16:16:48,834 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 42 transitions. [2022-04-14 16:16:48,834 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 16:16:48,834 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 16:16:48,835 INFO L74 IsIncluded]: Start isIncluded. First operand has 29 states, 19 states have (on average 1.105263157894737) internal successors, (21), 19 states have internal predecessors, (21), 6 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 38 states. [2022-04-14 16:16:48,835 INFO L87 Difference]: Start difference. First operand has 29 states, 19 states have (on average 1.105263157894737) internal successors, (21), 19 states have internal predecessors, (21), 6 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 38 states. [2022-04-14 16:16:48,836 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 16:16:48,836 INFO L93 Difference]: Finished difference Result 38 states and 42 transitions. [2022-04-14 16:16:48,836 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 42 transitions. [2022-04-14 16:16:48,836 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 16:16:48,836 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 16:16:48,836 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 16:16:48,837 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 16:16:48,837 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 19 states have (on average 1.105263157894737) internal successors, (21), 19 states have internal predecessors, (21), 6 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 16:16:48,837 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 31 transitions. [2022-04-14 16:16:48,838 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 31 transitions. Word has length 29 [2022-04-14 16:16:48,838 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 16:16:48,838 INFO L478 AbstractCegarLoop]: Abstraction has 29 states and 31 transitions. [2022-04-14 16:16:48,838 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.111111111111111) internal successors, (19), 7 states have internal predecessors, (19), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-14 16:16:48,838 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 31 transitions. [2022-04-14 16:16:48,838 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2022-04-14 16:16:48,838 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 16:16:48,839 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 16:16:48,865 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-14 16:16:49,051 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-14 16:16:49,052 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 16:16:49,052 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 16:16:49,052 INFO L85 PathProgramCache]: Analyzing trace with hash 1080225052, now seen corresponding path program 1 times [2022-04-14 16:16:49,052 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 16:16:49,052 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1693134318] [2022-04-14 16:16:49,052 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 16:16:49,052 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 16:16:49,073 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 16:16:49,073 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [134599458] [2022-04-14 16:16:49,073 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 16:16:49,073 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 16:16:49,073 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 16:16:49,086 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-14 16:16:49,088 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-14 16:16:49,118 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 16:16:49,118 INFO L263 TraceCheckSpWp]: Trace formula consists of 113 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-14 16:16:49,129 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 16:16:49,131 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 16:16:49,283 INFO L272 TraceCheckUtils]: 0: Hoare triple {1091#true} call ULTIMATE.init(); {1091#true} is VALID [2022-04-14 16:16:49,283 INFO L290 TraceCheckUtils]: 1: Hoare triple {1091#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; {1099#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:49,283 INFO L290 TraceCheckUtils]: 2: Hoare triple {1099#(<= ~counter~0 0)} assume true; {1099#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:49,284 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1099#(<= ~counter~0 0)} {1091#true} #67#return; {1099#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:49,284 INFO L272 TraceCheckUtils]: 4: Hoare triple {1099#(<= ~counter~0 0)} call #t~ret7 := main(); {1099#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:49,285 INFO L290 TraceCheckUtils]: 5: Hoare triple {1099#(<= ~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; {1099#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:49,285 INFO L272 TraceCheckUtils]: 6: Hoare triple {1099#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {1099#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:49,285 INFO L290 TraceCheckUtils]: 7: Hoare triple {1099#(<= ~counter~0 0)} ~cond := #in~cond; {1099#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:49,286 INFO L290 TraceCheckUtils]: 8: Hoare triple {1099#(<= ~counter~0 0)} assume !(0 == ~cond); {1099#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:49,286 INFO L290 TraceCheckUtils]: 9: Hoare triple {1099#(<= ~counter~0 0)} assume true; {1099#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:49,286 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1099#(<= ~counter~0 0)} {1099#(<= ~counter~0 0)} #59#return; {1099#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:49,287 INFO L272 TraceCheckUtils]: 11: Hoare triple {1099#(<= ~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)); {1099#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:49,287 INFO L290 TraceCheckUtils]: 12: Hoare triple {1099#(<= ~counter~0 0)} ~cond := #in~cond; {1099#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:49,287 INFO L290 TraceCheckUtils]: 13: Hoare triple {1099#(<= ~counter~0 0)} assume !(0 == ~cond); {1099#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:49,288 INFO L290 TraceCheckUtils]: 14: Hoare triple {1099#(<= ~counter~0 0)} assume true; {1099#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:49,288 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1099#(<= ~counter~0 0)} {1099#(<= ~counter~0 0)} #61#return; {1099#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:49,290 INFO L290 TraceCheckUtils]: 16: Hoare triple {1099#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {1099#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:49,290 INFO L290 TraceCheckUtils]: 17: Hoare triple {1099#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1148#(<= ~counter~0 1)} is VALID [2022-04-14 16:16:49,291 INFO L290 TraceCheckUtils]: 18: Hoare triple {1148#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {1148#(<= ~counter~0 1)} is VALID [2022-04-14 16:16:49,291 INFO L272 TraceCheckUtils]: 19: Hoare triple {1148#(<= ~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)); {1148#(<= ~counter~0 1)} is VALID [2022-04-14 16:16:49,292 INFO L290 TraceCheckUtils]: 20: Hoare triple {1148#(<= ~counter~0 1)} ~cond := #in~cond; {1148#(<= ~counter~0 1)} is VALID [2022-04-14 16:16:49,292 INFO L290 TraceCheckUtils]: 21: Hoare triple {1148#(<= ~counter~0 1)} assume !(0 == ~cond); {1148#(<= ~counter~0 1)} is VALID [2022-04-14 16:16:49,292 INFO L290 TraceCheckUtils]: 22: Hoare triple {1148#(<= ~counter~0 1)} assume true; {1148#(<= ~counter~0 1)} is VALID [2022-04-14 16:16:49,293 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1148#(<= ~counter~0 1)} {1148#(<= ~counter~0 1)} #63#return; {1148#(<= ~counter~0 1)} is VALID [2022-04-14 16:16:49,293 INFO L290 TraceCheckUtils]: 24: Hoare triple {1148#(<= ~counter~0 1)} assume !!(0 != ~r~0); {1148#(<= ~counter~0 1)} is VALID [2022-04-14 16:16:49,293 INFO L290 TraceCheckUtils]: 25: Hoare triple {1148#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {1148#(<= ~counter~0 1)} is VALID [2022-04-14 16:16:49,294 INFO L290 TraceCheckUtils]: 26: Hoare triple {1148#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1176#(<= |main_#t~post6| 1)} is VALID [2022-04-14 16:16:49,294 INFO L290 TraceCheckUtils]: 27: Hoare triple {1176#(<= |main_#t~post6| 1)} assume !(#t~post6 < 20);havoc #t~post6; {1092#false} is VALID [2022-04-14 16:16:49,294 INFO L272 TraceCheckUtils]: 28: Hoare triple {1092#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)); {1092#false} is VALID [2022-04-14 16:16:49,294 INFO L290 TraceCheckUtils]: 29: Hoare triple {1092#false} ~cond := #in~cond; {1092#false} is VALID [2022-04-14 16:16:49,294 INFO L290 TraceCheckUtils]: 30: Hoare triple {1092#false} assume 0 == ~cond; {1092#false} is VALID [2022-04-14 16:16:49,294 INFO L290 TraceCheckUtils]: 31: Hoare triple {1092#false} assume !false; {1092#false} is VALID [2022-04-14 16:16:49,295 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-14 16:16:49,295 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 16:16:49,459 INFO L290 TraceCheckUtils]: 31: Hoare triple {1092#false} assume !false; {1092#false} is VALID [2022-04-14 16:16:49,459 INFO L290 TraceCheckUtils]: 30: Hoare triple {1092#false} assume 0 == ~cond; {1092#false} is VALID [2022-04-14 16:16:49,459 INFO L290 TraceCheckUtils]: 29: Hoare triple {1092#false} ~cond := #in~cond; {1092#false} is VALID [2022-04-14 16:16:49,460 INFO L272 TraceCheckUtils]: 28: Hoare triple {1092#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)); {1092#false} is VALID [2022-04-14 16:16:49,460 INFO L290 TraceCheckUtils]: 27: Hoare triple {1204#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {1092#false} is VALID [2022-04-14 16:16:49,460 INFO L290 TraceCheckUtils]: 26: Hoare triple {1208#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1204#(< |main_#t~post6| 20)} is VALID [2022-04-14 16:16:49,461 INFO L290 TraceCheckUtils]: 25: Hoare triple {1208#(< ~counter~0 20)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {1208#(< ~counter~0 20)} is VALID [2022-04-14 16:16:49,461 INFO L290 TraceCheckUtils]: 24: Hoare triple {1208#(< ~counter~0 20)} assume !!(0 != ~r~0); {1208#(< ~counter~0 20)} is VALID [2022-04-14 16:16:49,461 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1091#true} {1208#(< ~counter~0 20)} #63#return; {1208#(< ~counter~0 20)} is VALID [2022-04-14 16:16:49,462 INFO L290 TraceCheckUtils]: 22: Hoare triple {1091#true} assume true; {1091#true} is VALID [2022-04-14 16:16:49,462 INFO L290 TraceCheckUtils]: 21: Hoare triple {1091#true} assume !(0 == ~cond); {1091#true} is VALID [2022-04-14 16:16:49,462 INFO L290 TraceCheckUtils]: 20: Hoare triple {1091#true} ~cond := #in~cond; {1091#true} is VALID [2022-04-14 16:16:49,462 INFO L272 TraceCheckUtils]: 19: Hoare triple {1208#(< ~counter~0 20)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {1091#true} is VALID [2022-04-14 16:16:49,462 INFO L290 TraceCheckUtils]: 18: Hoare triple {1208#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {1208#(< ~counter~0 20)} is VALID [2022-04-14 16:16:49,463 INFO L290 TraceCheckUtils]: 17: Hoare triple {1236#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1208#(< ~counter~0 20)} is VALID [2022-04-14 16:16:49,463 INFO L290 TraceCheckUtils]: 16: Hoare triple {1236#(< ~counter~0 19)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {1236#(< ~counter~0 19)} is VALID [2022-04-14 16:16:49,463 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1091#true} {1236#(< ~counter~0 19)} #61#return; {1236#(< ~counter~0 19)} is VALID [2022-04-14 16:16:49,463 INFO L290 TraceCheckUtils]: 14: Hoare triple {1091#true} assume true; {1091#true} is VALID [2022-04-14 16:16:49,464 INFO L290 TraceCheckUtils]: 13: Hoare triple {1091#true} assume !(0 == ~cond); {1091#true} is VALID [2022-04-14 16:16:49,464 INFO L290 TraceCheckUtils]: 12: Hoare triple {1091#true} ~cond := #in~cond; {1091#true} is VALID [2022-04-14 16:16:49,464 INFO L272 TraceCheckUtils]: 11: Hoare triple {1236#(< ~counter~0 19)} 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)); {1091#true} is VALID [2022-04-14 16:16:49,464 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1091#true} {1236#(< ~counter~0 19)} #59#return; {1236#(< ~counter~0 19)} is VALID [2022-04-14 16:16:49,464 INFO L290 TraceCheckUtils]: 9: Hoare triple {1091#true} assume true; {1091#true} is VALID [2022-04-14 16:16:49,464 INFO L290 TraceCheckUtils]: 8: Hoare triple {1091#true} assume !(0 == ~cond); {1091#true} is VALID [2022-04-14 16:16:49,464 INFO L290 TraceCheckUtils]: 7: Hoare triple {1091#true} ~cond := #in~cond; {1091#true} is VALID [2022-04-14 16:16:49,465 INFO L272 TraceCheckUtils]: 6: Hoare triple {1236#(< ~counter~0 19)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {1091#true} is VALID [2022-04-14 16:16:49,466 INFO L290 TraceCheckUtils]: 5: Hoare triple {1236#(< ~counter~0 19)} 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; {1236#(< ~counter~0 19)} is VALID [2022-04-14 16:16:49,466 INFO L272 TraceCheckUtils]: 4: Hoare triple {1236#(< ~counter~0 19)} call #t~ret7 := main(); {1236#(< ~counter~0 19)} is VALID [2022-04-14 16:16:49,469 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1236#(< ~counter~0 19)} {1091#true} #67#return; {1236#(< ~counter~0 19)} is VALID [2022-04-14 16:16:49,469 INFO L290 TraceCheckUtils]: 2: Hoare triple {1236#(< ~counter~0 19)} assume true; {1236#(< ~counter~0 19)} is VALID [2022-04-14 16:16:49,469 INFO L290 TraceCheckUtils]: 1: Hoare triple {1091#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; {1236#(< ~counter~0 19)} is VALID [2022-04-14 16:16:49,469 INFO L272 TraceCheckUtils]: 0: Hoare triple {1091#true} call ULTIMATE.init(); {1091#true} is VALID [2022-04-14 16:16:49,470 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-14 16:16:49,470 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 16:16:49,470 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1693134318] [2022-04-14 16:16:49,470 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 16:16:49,470 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [134599458] [2022-04-14 16:16:49,470 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [134599458] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 16:16:49,470 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 16:16:49,470 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-14 16:16:49,470 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1409291353] [2022-04-14 16:16:49,470 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 16:16:49,471 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) Word has length 32 [2022-04-14 16:16:49,471 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 16:16:49,471 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-14 16:16:49,508 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 16:16:49,508 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-14 16:16:49,508 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 16:16:49,509 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-14 16:16:49,509 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-14 16:16:49,509 INFO L87 Difference]: Start difference. First operand 29 states and 31 transitions. Second operand has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-14 16:16:49,680 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 16:16:49,680 INFO L93 Difference]: Finished difference Result 61 states and 68 transitions. [2022-04-14 16:16:49,680 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-14 16:16:49,681 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) Word has length 32 [2022-04-14 16:16:49,681 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 16:16:49,681 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-14 16:16:49,683 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 67 transitions. [2022-04-14 16:16:49,683 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-14 16:16:49,684 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 67 transitions. [2022-04-14 16:16:49,684 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 67 transitions. [2022-04-14 16:16:49,736 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 16:16:49,738 INFO L225 Difference]: With dead ends: 61 [2022-04-14 16:16:49,738 INFO L226 Difference]: Without dead ends: 56 [2022-04-14 16:16:49,738 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 66 GetRequests, 57 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=40, Invalid=70, Unknown=0, NotChecked=0, Total=110 [2022-04-14 16:16:49,740 INFO L913 BasicCegarLoop]: 29 mSDtfsCounter, 32 mSDsluCounter, 65 mSDsCounter, 0 mSdLazyCounter, 21 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 32 SdHoareTripleChecker+Valid, 94 SdHoareTripleChecker+Invalid, 41 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 20 IncrementalHoareTripleChecker+Valid, 21 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-14 16:16:49,741 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [32 Valid, 94 Invalid, 41 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [20 Valid, 21 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-14 16:16:49,742 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 56 states. [2022-04-14 16:16:49,761 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 56 to 56. [2022-04-14 16:16:49,761 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 16:16:49,761 INFO L82 GeneralOperation]: Start isEquivalent. First operand 56 states. Second operand has 56 states, 40 states have (on average 1.125) internal successors, (45), 40 states have internal predecessors, (45), 9 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-14 16:16:49,761 INFO L74 IsIncluded]: Start isIncluded. First operand 56 states. Second operand has 56 states, 40 states have (on average 1.125) internal successors, (45), 40 states have internal predecessors, (45), 9 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-14 16:16:49,762 INFO L87 Difference]: Start difference. First operand 56 states. Second operand has 56 states, 40 states have (on average 1.125) internal successors, (45), 40 states have internal predecessors, (45), 9 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-14 16:16:49,764 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 16:16:49,764 INFO L93 Difference]: Finished difference Result 56 states and 61 transitions. [2022-04-14 16:16:49,765 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 61 transitions. [2022-04-14 16:16:49,768 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 16:16:49,768 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 16:16:49,768 INFO L74 IsIncluded]: Start isIncluded. First operand has 56 states, 40 states have (on average 1.125) internal successors, (45), 40 states have internal predecessors, (45), 9 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 56 states. [2022-04-14 16:16:49,768 INFO L87 Difference]: Start difference. First operand has 56 states, 40 states have (on average 1.125) internal successors, (45), 40 states have internal predecessors, (45), 9 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 56 states. [2022-04-14 16:16:49,770 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 16:16:49,770 INFO L93 Difference]: Finished difference Result 56 states and 61 transitions. [2022-04-14 16:16:49,770 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 61 transitions. [2022-04-14 16:16:49,770 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 16:16:49,770 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 16:16:49,770 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 16:16:49,770 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 16:16:49,771 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 56 states, 40 states have (on average 1.125) internal successors, (45), 40 states have internal predecessors, (45), 9 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-14 16:16:49,773 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 61 transitions. [2022-04-14 16:16:49,773 INFO L78 Accepts]: Start accepts. Automaton has 56 states and 61 transitions. Word has length 32 [2022-04-14 16:16:49,774 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 16:16:49,774 INFO L478 AbstractCegarLoop]: Abstraction has 56 states and 61 transitions. [2022-04-14 16:16:49,774 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-14 16:16:49,774 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 61 transitions. [2022-04-14 16:16:49,776 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 60 [2022-04-14 16:16:49,776 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 16:16:49,776 INFO L499 BasicCegarLoop]: trace histogram [5, 5, 4, 4, 4, 4, 4, 4, 4, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 16:16:49,797 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-14 16:16:49,990 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-14 16:16:49,991 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 16:16:49,991 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 16:16:49,991 INFO L85 PathProgramCache]: Analyzing trace with hash 1632159894, now seen corresponding path program 2 times [2022-04-14 16:16:49,991 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 16:16:49,991 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [284226849] [2022-04-14 16:16:49,992 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 16:16:49,992 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 16:16:50,002 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 16:16:50,003 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [456070250] [2022-04-14 16:16:50,003 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-14 16:16:50,003 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 16:16:50,003 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 16:16:50,005 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-14 16:16:50,005 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-14 16:16:50,047 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-14 16:16:50,047 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-14 16:16:50,048 INFO L263 TraceCheckSpWp]: Trace formula consists of 173 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-14 16:16:50,059 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 16:16:50,060 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 16:16:50,337 INFO L272 TraceCheckUtils]: 0: Hoare triple {1571#true} call ULTIMATE.init(); {1571#true} is VALID [2022-04-14 16:16:50,338 INFO L290 TraceCheckUtils]: 1: Hoare triple {1571#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; {1579#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:50,338 INFO L290 TraceCheckUtils]: 2: Hoare triple {1579#(<= ~counter~0 0)} assume true; {1579#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:50,338 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1579#(<= ~counter~0 0)} {1571#true} #67#return; {1579#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:50,339 INFO L272 TraceCheckUtils]: 4: Hoare triple {1579#(<= ~counter~0 0)} call #t~ret7 := main(); {1579#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:50,339 INFO L290 TraceCheckUtils]: 5: Hoare triple {1579#(<= ~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; {1579#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:50,339 INFO L272 TraceCheckUtils]: 6: Hoare triple {1579#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {1579#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:50,340 INFO L290 TraceCheckUtils]: 7: Hoare triple {1579#(<= ~counter~0 0)} ~cond := #in~cond; {1579#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:50,340 INFO L290 TraceCheckUtils]: 8: Hoare triple {1579#(<= ~counter~0 0)} assume !(0 == ~cond); {1579#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:50,344 INFO L290 TraceCheckUtils]: 9: Hoare triple {1579#(<= ~counter~0 0)} assume true; {1579#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:50,344 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1579#(<= ~counter~0 0)} {1579#(<= ~counter~0 0)} #59#return; {1579#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:50,345 INFO L272 TraceCheckUtils]: 11: Hoare triple {1579#(<= ~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)); {1579#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:50,345 INFO L290 TraceCheckUtils]: 12: Hoare triple {1579#(<= ~counter~0 0)} ~cond := #in~cond; {1579#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:50,345 INFO L290 TraceCheckUtils]: 13: Hoare triple {1579#(<= ~counter~0 0)} assume !(0 == ~cond); {1579#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:50,345 INFO L290 TraceCheckUtils]: 14: Hoare triple {1579#(<= ~counter~0 0)} assume true; {1579#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:50,346 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1579#(<= ~counter~0 0)} {1579#(<= ~counter~0 0)} #61#return; {1579#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:50,346 INFO L290 TraceCheckUtils]: 16: Hoare triple {1579#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {1579#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:50,347 INFO L290 TraceCheckUtils]: 17: Hoare triple {1579#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1628#(<= ~counter~0 1)} is VALID [2022-04-14 16:16:50,347 INFO L290 TraceCheckUtils]: 18: Hoare triple {1628#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {1628#(<= ~counter~0 1)} is VALID [2022-04-14 16:16:50,347 INFO L272 TraceCheckUtils]: 19: Hoare triple {1628#(<= ~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)); {1628#(<= ~counter~0 1)} is VALID [2022-04-14 16:16:50,348 INFO L290 TraceCheckUtils]: 20: Hoare triple {1628#(<= ~counter~0 1)} ~cond := #in~cond; {1628#(<= ~counter~0 1)} is VALID [2022-04-14 16:16:50,348 INFO L290 TraceCheckUtils]: 21: Hoare triple {1628#(<= ~counter~0 1)} assume !(0 == ~cond); {1628#(<= ~counter~0 1)} is VALID [2022-04-14 16:16:50,348 INFO L290 TraceCheckUtils]: 22: Hoare triple {1628#(<= ~counter~0 1)} assume true; {1628#(<= ~counter~0 1)} is VALID [2022-04-14 16:16:50,349 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1628#(<= ~counter~0 1)} {1628#(<= ~counter~0 1)} #63#return; {1628#(<= ~counter~0 1)} is VALID [2022-04-14 16:16:50,349 INFO L290 TraceCheckUtils]: 24: Hoare triple {1628#(<= ~counter~0 1)} assume !!(0 != ~r~0); {1628#(<= ~counter~0 1)} is VALID [2022-04-14 16:16:50,349 INFO L290 TraceCheckUtils]: 25: Hoare triple {1628#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {1628#(<= ~counter~0 1)} is VALID [2022-04-14 16:16:50,350 INFO L290 TraceCheckUtils]: 26: Hoare triple {1628#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1656#(<= ~counter~0 2)} is VALID [2022-04-14 16:16:50,350 INFO L290 TraceCheckUtils]: 27: Hoare triple {1656#(<= ~counter~0 2)} assume !!(#t~post6 < 20);havoc #t~post6; {1656#(<= ~counter~0 2)} is VALID [2022-04-14 16:16:50,350 INFO L272 TraceCheckUtils]: 28: Hoare triple {1656#(<= ~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)); {1656#(<= ~counter~0 2)} is VALID [2022-04-14 16:16:50,351 INFO L290 TraceCheckUtils]: 29: Hoare triple {1656#(<= ~counter~0 2)} ~cond := #in~cond; {1656#(<= ~counter~0 2)} is VALID [2022-04-14 16:16:50,351 INFO L290 TraceCheckUtils]: 30: Hoare triple {1656#(<= ~counter~0 2)} assume !(0 == ~cond); {1656#(<= ~counter~0 2)} is VALID [2022-04-14 16:16:50,351 INFO L290 TraceCheckUtils]: 31: Hoare triple {1656#(<= ~counter~0 2)} assume true; {1656#(<= ~counter~0 2)} is VALID [2022-04-14 16:16:50,352 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1656#(<= ~counter~0 2)} {1656#(<= ~counter~0 2)} #63#return; {1656#(<= ~counter~0 2)} is VALID [2022-04-14 16:16:50,352 INFO L290 TraceCheckUtils]: 33: Hoare triple {1656#(<= ~counter~0 2)} assume !!(0 != ~r~0); {1656#(<= ~counter~0 2)} is VALID [2022-04-14 16:16:50,352 INFO L290 TraceCheckUtils]: 34: Hoare triple {1656#(<= ~counter~0 2)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {1656#(<= ~counter~0 2)} is VALID [2022-04-14 16:16:50,353 INFO L290 TraceCheckUtils]: 35: Hoare triple {1656#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1684#(<= ~counter~0 3)} is VALID [2022-04-14 16:16:50,353 INFO L290 TraceCheckUtils]: 36: Hoare triple {1684#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {1684#(<= ~counter~0 3)} is VALID [2022-04-14 16:16:50,354 INFO L272 TraceCheckUtils]: 37: Hoare triple {1684#(<= ~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)); {1684#(<= ~counter~0 3)} is VALID [2022-04-14 16:16:50,354 INFO L290 TraceCheckUtils]: 38: Hoare triple {1684#(<= ~counter~0 3)} ~cond := #in~cond; {1684#(<= ~counter~0 3)} is VALID [2022-04-14 16:16:50,354 INFO L290 TraceCheckUtils]: 39: Hoare triple {1684#(<= ~counter~0 3)} assume !(0 == ~cond); {1684#(<= ~counter~0 3)} is VALID [2022-04-14 16:16:50,355 INFO L290 TraceCheckUtils]: 40: Hoare triple {1684#(<= ~counter~0 3)} assume true; {1684#(<= ~counter~0 3)} is VALID [2022-04-14 16:16:50,355 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {1684#(<= ~counter~0 3)} {1684#(<= ~counter~0 3)} #63#return; {1684#(<= ~counter~0 3)} is VALID [2022-04-14 16:16:50,355 INFO L290 TraceCheckUtils]: 42: Hoare triple {1684#(<= ~counter~0 3)} assume !!(0 != ~r~0); {1684#(<= ~counter~0 3)} is VALID [2022-04-14 16:16:50,356 INFO L290 TraceCheckUtils]: 43: Hoare triple {1684#(<= ~counter~0 3)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {1684#(<= ~counter~0 3)} is VALID [2022-04-14 16:16:50,356 INFO L290 TraceCheckUtils]: 44: Hoare triple {1684#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1712#(<= ~counter~0 4)} is VALID [2022-04-14 16:16:50,357 INFO L290 TraceCheckUtils]: 45: Hoare triple {1712#(<= ~counter~0 4)} assume !!(#t~post6 < 20);havoc #t~post6; {1712#(<= ~counter~0 4)} is VALID [2022-04-14 16:16:50,357 INFO L272 TraceCheckUtils]: 46: Hoare triple {1712#(<= ~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)); {1712#(<= ~counter~0 4)} is VALID [2022-04-14 16:16:50,357 INFO L290 TraceCheckUtils]: 47: Hoare triple {1712#(<= ~counter~0 4)} ~cond := #in~cond; {1712#(<= ~counter~0 4)} is VALID [2022-04-14 16:16:50,358 INFO L290 TraceCheckUtils]: 48: Hoare triple {1712#(<= ~counter~0 4)} assume !(0 == ~cond); {1712#(<= ~counter~0 4)} is VALID [2022-04-14 16:16:50,358 INFO L290 TraceCheckUtils]: 49: Hoare triple {1712#(<= ~counter~0 4)} assume true; {1712#(<= ~counter~0 4)} is VALID [2022-04-14 16:16:50,359 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {1712#(<= ~counter~0 4)} {1712#(<= ~counter~0 4)} #63#return; {1712#(<= ~counter~0 4)} is VALID [2022-04-14 16:16:50,359 INFO L290 TraceCheckUtils]: 51: Hoare triple {1712#(<= ~counter~0 4)} assume !!(0 != ~r~0); {1712#(<= ~counter~0 4)} is VALID [2022-04-14 16:16:50,359 INFO L290 TraceCheckUtils]: 52: Hoare triple {1712#(<= ~counter~0 4)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {1712#(<= ~counter~0 4)} is VALID [2022-04-14 16:16:50,360 INFO L290 TraceCheckUtils]: 53: Hoare triple {1712#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1740#(<= |main_#t~post6| 4)} is VALID [2022-04-14 16:16:50,364 INFO L290 TraceCheckUtils]: 54: Hoare triple {1740#(<= |main_#t~post6| 4)} assume !(#t~post6 < 20);havoc #t~post6; {1572#false} is VALID [2022-04-14 16:16:50,364 INFO L272 TraceCheckUtils]: 55: Hoare triple {1572#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)); {1572#false} is VALID [2022-04-14 16:16:50,364 INFO L290 TraceCheckUtils]: 56: Hoare triple {1572#false} ~cond := #in~cond; {1572#false} is VALID [2022-04-14 16:16:50,365 INFO L290 TraceCheckUtils]: 57: Hoare triple {1572#false} assume 0 == ~cond; {1572#false} is VALID [2022-04-14 16:16:50,365 INFO L290 TraceCheckUtils]: 58: Hoare triple {1572#false} assume !false; {1572#false} is VALID [2022-04-14 16:16:50,365 INFO L134 CoverageAnalysis]: Checked inductivity of 74 backedges. 8 proven. 62 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-14 16:16:50,365 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 16:16:50,675 INFO L290 TraceCheckUtils]: 58: Hoare triple {1572#false} assume !false; {1572#false} is VALID [2022-04-14 16:16:50,676 INFO L290 TraceCheckUtils]: 57: Hoare triple {1572#false} assume 0 == ~cond; {1572#false} is VALID [2022-04-14 16:16:50,676 INFO L290 TraceCheckUtils]: 56: Hoare triple {1572#false} ~cond := #in~cond; {1572#false} is VALID [2022-04-14 16:16:50,676 INFO L272 TraceCheckUtils]: 55: Hoare triple {1572#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)); {1572#false} is VALID [2022-04-14 16:16:50,677 INFO L290 TraceCheckUtils]: 54: Hoare triple {1768#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {1572#false} is VALID [2022-04-14 16:16:50,678 INFO L290 TraceCheckUtils]: 53: Hoare triple {1772#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1768#(< |main_#t~post6| 20)} is VALID [2022-04-14 16:16:50,680 INFO L290 TraceCheckUtils]: 52: Hoare triple {1772#(< ~counter~0 20)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {1772#(< ~counter~0 20)} is VALID [2022-04-14 16:16:50,681 INFO L290 TraceCheckUtils]: 51: Hoare triple {1772#(< ~counter~0 20)} assume !!(0 != ~r~0); {1772#(< ~counter~0 20)} is VALID [2022-04-14 16:16:50,681 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {1571#true} {1772#(< ~counter~0 20)} #63#return; {1772#(< ~counter~0 20)} is VALID [2022-04-14 16:16:50,681 INFO L290 TraceCheckUtils]: 49: Hoare triple {1571#true} assume true; {1571#true} is VALID [2022-04-14 16:16:50,681 INFO L290 TraceCheckUtils]: 48: Hoare triple {1571#true} assume !(0 == ~cond); {1571#true} is VALID [2022-04-14 16:16:50,682 INFO L290 TraceCheckUtils]: 47: Hoare triple {1571#true} ~cond := #in~cond; {1571#true} is VALID [2022-04-14 16:16:50,682 INFO L272 TraceCheckUtils]: 46: Hoare triple {1772#(< ~counter~0 20)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {1571#true} is VALID [2022-04-14 16:16:50,682 INFO L290 TraceCheckUtils]: 45: Hoare triple {1772#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {1772#(< ~counter~0 20)} is VALID [2022-04-14 16:16:50,682 INFO L290 TraceCheckUtils]: 44: Hoare triple {1800#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1772#(< ~counter~0 20)} is VALID [2022-04-14 16:16:50,683 INFO L290 TraceCheckUtils]: 43: Hoare triple {1800#(< ~counter~0 19)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {1800#(< ~counter~0 19)} is VALID [2022-04-14 16:16:50,683 INFO L290 TraceCheckUtils]: 42: Hoare triple {1800#(< ~counter~0 19)} assume !!(0 != ~r~0); {1800#(< ~counter~0 19)} is VALID [2022-04-14 16:16:50,683 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {1571#true} {1800#(< ~counter~0 19)} #63#return; {1800#(< ~counter~0 19)} is VALID [2022-04-14 16:16:50,683 INFO L290 TraceCheckUtils]: 40: Hoare triple {1571#true} assume true; {1571#true} is VALID [2022-04-14 16:16:50,683 INFO L290 TraceCheckUtils]: 39: Hoare triple {1571#true} assume !(0 == ~cond); {1571#true} is VALID [2022-04-14 16:16:50,684 INFO L290 TraceCheckUtils]: 38: Hoare triple {1571#true} ~cond := #in~cond; {1571#true} is VALID [2022-04-14 16:16:50,684 INFO L272 TraceCheckUtils]: 37: Hoare triple {1800#(< ~counter~0 19)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {1571#true} is VALID [2022-04-14 16:16:50,684 INFO L290 TraceCheckUtils]: 36: Hoare triple {1800#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {1800#(< ~counter~0 19)} is VALID [2022-04-14 16:16:50,684 INFO L290 TraceCheckUtils]: 35: Hoare triple {1828#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1800#(< ~counter~0 19)} is VALID [2022-04-14 16:16:50,685 INFO L290 TraceCheckUtils]: 34: Hoare triple {1828#(< ~counter~0 18)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {1828#(< ~counter~0 18)} is VALID [2022-04-14 16:16:50,685 INFO L290 TraceCheckUtils]: 33: Hoare triple {1828#(< ~counter~0 18)} assume !!(0 != ~r~0); {1828#(< ~counter~0 18)} is VALID [2022-04-14 16:16:50,685 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1571#true} {1828#(< ~counter~0 18)} #63#return; {1828#(< ~counter~0 18)} is VALID [2022-04-14 16:16:50,685 INFO L290 TraceCheckUtils]: 31: Hoare triple {1571#true} assume true; {1571#true} is VALID [2022-04-14 16:16:50,685 INFO L290 TraceCheckUtils]: 30: Hoare triple {1571#true} assume !(0 == ~cond); {1571#true} is VALID [2022-04-14 16:16:50,686 INFO L290 TraceCheckUtils]: 29: Hoare triple {1571#true} ~cond := #in~cond; {1571#true} is VALID [2022-04-14 16:16:50,686 INFO L272 TraceCheckUtils]: 28: Hoare triple {1828#(< ~counter~0 18)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {1571#true} is VALID [2022-04-14 16:16:50,686 INFO L290 TraceCheckUtils]: 27: Hoare triple {1828#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {1828#(< ~counter~0 18)} is VALID [2022-04-14 16:16:50,686 INFO L290 TraceCheckUtils]: 26: Hoare triple {1856#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1828#(< ~counter~0 18)} is VALID [2022-04-14 16:16:50,687 INFO L290 TraceCheckUtils]: 25: Hoare triple {1856#(< ~counter~0 17)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {1856#(< ~counter~0 17)} is VALID [2022-04-14 16:16:50,687 INFO L290 TraceCheckUtils]: 24: Hoare triple {1856#(< ~counter~0 17)} assume !!(0 != ~r~0); {1856#(< ~counter~0 17)} is VALID [2022-04-14 16:16:50,688 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1571#true} {1856#(< ~counter~0 17)} #63#return; {1856#(< ~counter~0 17)} is VALID [2022-04-14 16:16:50,688 INFO L290 TraceCheckUtils]: 22: Hoare triple {1571#true} assume true; {1571#true} is VALID [2022-04-14 16:16:50,688 INFO L290 TraceCheckUtils]: 21: Hoare triple {1571#true} assume !(0 == ~cond); {1571#true} is VALID [2022-04-14 16:16:50,688 INFO L290 TraceCheckUtils]: 20: Hoare triple {1571#true} ~cond := #in~cond; {1571#true} is VALID [2022-04-14 16:16:50,688 INFO L272 TraceCheckUtils]: 19: Hoare triple {1856#(< ~counter~0 17)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {1571#true} is VALID [2022-04-14 16:16:50,688 INFO L290 TraceCheckUtils]: 18: Hoare triple {1856#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {1856#(< ~counter~0 17)} is VALID [2022-04-14 16:16:50,689 INFO L290 TraceCheckUtils]: 17: Hoare triple {1884#(< ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1856#(< ~counter~0 17)} is VALID [2022-04-14 16:16:50,689 INFO L290 TraceCheckUtils]: 16: Hoare triple {1884#(< ~counter~0 16)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {1884#(< ~counter~0 16)} is VALID [2022-04-14 16:16:50,689 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1571#true} {1884#(< ~counter~0 16)} #61#return; {1884#(< ~counter~0 16)} is VALID [2022-04-14 16:16:50,689 INFO L290 TraceCheckUtils]: 14: Hoare triple {1571#true} assume true; {1571#true} is VALID [2022-04-14 16:16:50,690 INFO L290 TraceCheckUtils]: 13: Hoare triple {1571#true} assume !(0 == ~cond); {1571#true} is VALID [2022-04-14 16:16:50,690 INFO L290 TraceCheckUtils]: 12: Hoare triple {1571#true} ~cond := #in~cond; {1571#true} is VALID [2022-04-14 16:16:50,690 INFO L272 TraceCheckUtils]: 11: Hoare triple {1884#(< ~counter~0 16)} 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)); {1571#true} is VALID [2022-04-14 16:16:50,690 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1571#true} {1884#(< ~counter~0 16)} #59#return; {1884#(< ~counter~0 16)} is VALID [2022-04-14 16:16:50,690 INFO L290 TraceCheckUtils]: 9: Hoare triple {1571#true} assume true; {1571#true} is VALID [2022-04-14 16:16:50,690 INFO L290 TraceCheckUtils]: 8: Hoare triple {1571#true} assume !(0 == ~cond); {1571#true} is VALID [2022-04-14 16:16:50,690 INFO L290 TraceCheckUtils]: 7: Hoare triple {1571#true} ~cond := #in~cond; {1571#true} is VALID [2022-04-14 16:16:50,690 INFO L272 TraceCheckUtils]: 6: Hoare triple {1884#(< ~counter~0 16)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {1571#true} is VALID [2022-04-14 16:16:50,691 INFO L290 TraceCheckUtils]: 5: Hoare triple {1884#(< ~counter~0 16)} 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; {1884#(< ~counter~0 16)} is VALID [2022-04-14 16:16:50,691 INFO L272 TraceCheckUtils]: 4: Hoare triple {1884#(< ~counter~0 16)} call #t~ret7 := main(); {1884#(< ~counter~0 16)} is VALID [2022-04-14 16:16:50,691 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1884#(< ~counter~0 16)} {1571#true} #67#return; {1884#(< ~counter~0 16)} is VALID [2022-04-14 16:16:50,692 INFO L290 TraceCheckUtils]: 2: Hoare triple {1884#(< ~counter~0 16)} assume true; {1884#(< ~counter~0 16)} is VALID [2022-04-14 16:16:50,692 INFO L290 TraceCheckUtils]: 1: Hoare triple {1571#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; {1884#(< ~counter~0 16)} is VALID [2022-04-14 16:16:50,692 INFO L272 TraceCheckUtils]: 0: Hoare triple {1571#true} call ULTIMATE.init(); {1571#true} is VALID [2022-04-14 16:16:50,692 INFO L134 CoverageAnalysis]: Checked inductivity of 74 backedges. 8 proven. 38 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-14 16:16:50,693 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 16:16:50,693 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [284226849] [2022-04-14 16:16:50,693 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 16:16:50,693 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [456070250] [2022-04-14 16:16:50,693 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [456070250] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 16:16:50,693 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 16:16:50,693 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-14 16:16:50,693 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2002880209] [2022-04-14 16:16:50,693 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 16:16:50,694 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 4.857142857142857) internal successors, (68), 14 states have internal predecessors, (68), 12 states have call successors, (16), 8 states have call predecessors, (16), 7 states have return successors, (14), 10 states have call predecessors, (14), 11 states have call successors, (14) Word has length 59 [2022-04-14 16:16:50,694 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 16:16:50,694 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 4.857142857142857) internal successors, (68), 14 states have internal predecessors, (68), 12 states have call successors, (16), 8 states have call predecessors, (16), 7 states have return successors, (14), 10 states have call predecessors, (14), 11 states have call successors, (14) [2022-04-14 16:16:50,758 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 98 edges. 98 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 16:16:50,758 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-14 16:16:50,759 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 16:16:50,759 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-14 16:16:50,759 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-14 16:16:50,759 INFO L87 Difference]: Start difference. First operand 56 states and 61 transitions. Second operand has 14 states, 14 states have (on average 4.857142857142857) internal successors, (68), 14 states have internal predecessors, (68), 12 states have call successors, (16), 8 states have call predecessors, (16), 7 states have return successors, (14), 10 states have call predecessors, (14), 11 states have call successors, (14) [2022-04-14 16:16:51,114 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 16:16:51,114 INFO L93 Difference]: Finished difference Result 115 states and 131 transitions. [2022-04-14 16:16:51,114 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-14 16:16:51,114 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 4.857142857142857) internal successors, (68), 14 states have internal predecessors, (68), 12 states have call successors, (16), 8 states have call predecessors, (16), 7 states have return successors, (14), 10 states have call predecessors, (14), 11 states have call successors, (14) Word has length 59 [2022-04-14 16:16:51,114 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 16:16:51,115 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 4.857142857142857) internal successors, (68), 14 states have internal predecessors, (68), 12 states have call successors, (16), 8 states have call predecessors, (16), 7 states have return successors, (14), 10 states have call predecessors, (14), 11 states have call successors, (14) [2022-04-14 16:16:51,118 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 130 transitions. [2022-04-14 16:16:51,118 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 4.857142857142857) internal successors, (68), 14 states have internal predecessors, (68), 12 states have call successors, (16), 8 states have call predecessors, (16), 7 states have return successors, (14), 10 states have call predecessors, (14), 11 states have call successors, (14) [2022-04-14 16:16:51,120 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 130 transitions. [2022-04-14 16:16:51,120 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 130 transitions. [2022-04-14 16:16:51,217 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 130 edges. 130 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 16:16:51,219 INFO L225 Difference]: With dead ends: 115 [2022-04-14 16:16:51,219 INFO L226 Difference]: Without dead ends: 110 [2022-04-14 16:16:51,219 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 126 GetRequests, 105 SyntacticMatches, 0 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 55 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=184, Invalid=322, Unknown=0, NotChecked=0, Total=506 [2022-04-14 16:16:51,219 INFO L913 BasicCegarLoop]: 35 mSDtfsCounter, 80 mSDsluCounter, 125 mSDsCounter, 0 mSdLazyCounter, 57 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 80 SdHoareTripleChecker+Valid, 160 SdHoareTripleChecker+Invalid, 87 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 57 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 16:16:51,220 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [80 Valid, 160 Invalid, 87 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 57 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 16:16:51,220 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 110 states. [2022-04-14 16:16:51,255 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 110 to 110. [2022-04-14 16:16:51,255 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 16:16:51,256 INFO L82 GeneralOperation]: Start isEquivalent. First operand 110 states. Second operand has 110 states, 82 states have (on average 1.1341463414634145) internal successors, (93), 82 states have internal predecessors, (93), 15 states have call successors, (15), 14 states have call predecessors, (15), 12 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-14 16:16:51,256 INFO L74 IsIncluded]: Start isIncluded. First operand 110 states. Second operand has 110 states, 82 states have (on average 1.1341463414634145) internal successors, (93), 82 states have internal predecessors, (93), 15 states have call successors, (15), 14 states have call predecessors, (15), 12 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-14 16:16:51,256 INFO L87 Difference]: Start difference. First operand 110 states. Second operand has 110 states, 82 states have (on average 1.1341463414634145) internal successors, (93), 82 states have internal predecessors, (93), 15 states have call successors, (15), 14 states have call predecessors, (15), 12 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-14 16:16:51,259 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 16:16:51,259 INFO L93 Difference]: Finished difference Result 110 states and 121 transitions. [2022-04-14 16:16:51,259 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 121 transitions. [2022-04-14 16:16:51,259 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 16:16:51,259 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 16:16:51,259 INFO L74 IsIncluded]: Start isIncluded. First operand has 110 states, 82 states have (on average 1.1341463414634145) internal successors, (93), 82 states have internal predecessors, (93), 15 states have call successors, (15), 14 states have call predecessors, (15), 12 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 110 states. [2022-04-14 16:16:51,259 INFO L87 Difference]: Start difference. First operand has 110 states, 82 states have (on average 1.1341463414634145) internal successors, (93), 82 states have internal predecessors, (93), 15 states have call successors, (15), 14 states have call predecessors, (15), 12 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 110 states. [2022-04-14 16:16:51,262 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 16:16:51,262 INFO L93 Difference]: Finished difference Result 110 states and 121 transitions. [2022-04-14 16:16:51,262 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 121 transitions. [2022-04-14 16:16:51,262 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 16:16:51,262 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 16:16:51,262 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 16:16:51,262 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 16:16:51,263 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 110 states, 82 states have (on average 1.1341463414634145) internal successors, (93), 82 states have internal predecessors, (93), 15 states have call successors, (15), 14 states have call predecessors, (15), 12 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-14 16:16:51,265 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 110 states to 110 states and 121 transitions. [2022-04-14 16:16:51,265 INFO L78 Accepts]: Start accepts. Automaton has 110 states and 121 transitions. Word has length 59 [2022-04-14 16:16:51,265 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 16:16:51,265 INFO L478 AbstractCegarLoop]: Abstraction has 110 states and 121 transitions. [2022-04-14 16:16:51,265 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 4.857142857142857) internal successors, (68), 14 states have internal predecessors, (68), 12 states have call successors, (16), 8 states have call predecessors, (16), 7 states have return successors, (14), 10 states have call predecessors, (14), 11 states have call successors, (14) [2022-04-14 16:16:51,265 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 121 transitions. [2022-04-14 16:16:51,266 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 114 [2022-04-14 16:16:51,266 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 16:16:51,266 INFO L499 BasicCegarLoop]: trace histogram [11, 11, 10, 10, 10, 10, 10, 10, 10, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 16:16:51,284 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-14 16:16:51,466 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-14 16:16:51,467 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 16:16:51,467 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 16:16:51,467 INFO L85 PathProgramCache]: Analyzing trace with hash -1468805930, now seen corresponding path program 3 times [2022-04-14 16:16:51,467 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 16:16:51,467 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1349353197] [2022-04-14 16:16:51,467 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 16:16:51,467 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 16:16:51,483 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 16:16:51,483 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [227959620] [2022-04-14 16:16:51,483 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-14 16:16:51,483 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 16:16:51,483 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 16:16:51,484 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-14 16:16:51,486 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-14 16:16:53,530 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 11 check-sat command(s) [2022-04-14 16:16:53,530 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-14 16:16:53,534 INFO L263 TraceCheckSpWp]: Trace formula consists of 293 conjuncts, 25 conjunts are in the unsatisfiable core [2022-04-14 16:16:53,560 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 16:16:53,561 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 16:16:54,141 INFO L272 TraceCheckUtils]: 0: Hoare triple {2483#true} call ULTIMATE.init(); {2483#true} is VALID [2022-04-14 16:16:54,142 INFO L290 TraceCheckUtils]: 1: Hoare triple {2483#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; {2491#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:54,143 INFO L290 TraceCheckUtils]: 2: Hoare triple {2491#(<= ~counter~0 0)} assume true; {2491#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:54,143 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2491#(<= ~counter~0 0)} {2483#true} #67#return; {2491#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:54,143 INFO L272 TraceCheckUtils]: 4: Hoare triple {2491#(<= ~counter~0 0)} call #t~ret7 := main(); {2491#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:54,144 INFO L290 TraceCheckUtils]: 5: Hoare triple {2491#(<= ~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; {2491#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:54,144 INFO L272 TraceCheckUtils]: 6: Hoare triple {2491#(<= ~counter~0 0)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {2491#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:54,144 INFO L290 TraceCheckUtils]: 7: Hoare triple {2491#(<= ~counter~0 0)} ~cond := #in~cond; {2491#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:54,145 INFO L290 TraceCheckUtils]: 8: Hoare triple {2491#(<= ~counter~0 0)} assume !(0 == ~cond); {2491#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:54,145 INFO L290 TraceCheckUtils]: 9: Hoare triple {2491#(<= ~counter~0 0)} assume true; {2491#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:54,145 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2491#(<= ~counter~0 0)} {2491#(<= ~counter~0 0)} #59#return; {2491#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:54,146 INFO L272 TraceCheckUtils]: 11: Hoare triple {2491#(<= ~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)); {2491#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:54,146 INFO L290 TraceCheckUtils]: 12: Hoare triple {2491#(<= ~counter~0 0)} ~cond := #in~cond; {2491#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:54,146 INFO L290 TraceCheckUtils]: 13: Hoare triple {2491#(<= ~counter~0 0)} assume !(0 == ~cond); {2491#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:54,147 INFO L290 TraceCheckUtils]: 14: Hoare triple {2491#(<= ~counter~0 0)} assume true; {2491#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:54,147 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2491#(<= ~counter~0 0)} {2491#(<= ~counter~0 0)} #61#return; {2491#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:54,147 INFO L290 TraceCheckUtils]: 16: Hoare triple {2491#(<= ~counter~0 0)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {2491#(<= ~counter~0 0)} is VALID [2022-04-14 16:16:54,148 INFO L290 TraceCheckUtils]: 17: Hoare triple {2491#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2540#(<= ~counter~0 1)} is VALID [2022-04-14 16:16:54,148 INFO L290 TraceCheckUtils]: 18: Hoare triple {2540#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {2540#(<= ~counter~0 1)} is VALID [2022-04-14 16:16:54,149 INFO L272 TraceCheckUtils]: 19: Hoare triple {2540#(<= ~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)); {2540#(<= ~counter~0 1)} is VALID [2022-04-14 16:16:54,149 INFO L290 TraceCheckUtils]: 20: Hoare triple {2540#(<= ~counter~0 1)} ~cond := #in~cond; {2540#(<= ~counter~0 1)} is VALID [2022-04-14 16:16:54,149 INFO L290 TraceCheckUtils]: 21: Hoare triple {2540#(<= ~counter~0 1)} assume !(0 == ~cond); {2540#(<= ~counter~0 1)} is VALID [2022-04-14 16:16:54,149 INFO L290 TraceCheckUtils]: 22: Hoare triple {2540#(<= ~counter~0 1)} assume true; {2540#(<= ~counter~0 1)} is VALID [2022-04-14 16:16:54,150 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2540#(<= ~counter~0 1)} {2540#(<= ~counter~0 1)} #63#return; {2540#(<= ~counter~0 1)} is VALID [2022-04-14 16:16:54,150 INFO L290 TraceCheckUtils]: 24: Hoare triple {2540#(<= ~counter~0 1)} assume !!(0 != ~r~0); {2540#(<= ~counter~0 1)} is VALID [2022-04-14 16:16:54,151 INFO L290 TraceCheckUtils]: 25: Hoare triple {2540#(<= ~counter~0 1)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2540#(<= ~counter~0 1)} is VALID [2022-04-14 16:16:54,151 INFO L290 TraceCheckUtils]: 26: Hoare triple {2540#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2568#(<= ~counter~0 2)} is VALID [2022-04-14 16:16:54,151 INFO L290 TraceCheckUtils]: 27: Hoare triple {2568#(<= ~counter~0 2)} assume !!(#t~post6 < 20);havoc #t~post6; {2568#(<= ~counter~0 2)} is VALID [2022-04-14 16:16:54,156 INFO L272 TraceCheckUtils]: 28: Hoare triple {2568#(<= ~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)); {2568#(<= ~counter~0 2)} is VALID [2022-04-14 16:16:54,156 INFO L290 TraceCheckUtils]: 29: Hoare triple {2568#(<= ~counter~0 2)} ~cond := #in~cond; {2568#(<= ~counter~0 2)} is VALID [2022-04-14 16:16:54,157 INFO L290 TraceCheckUtils]: 30: Hoare triple {2568#(<= ~counter~0 2)} assume !(0 == ~cond); {2568#(<= ~counter~0 2)} is VALID [2022-04-14 16:16:54,157 INFO L290 TraceCheckUtils]: 31: Hoare triple {2568#(<= ~counter~0 2)} assume true; {2568#(<= ~counter~0 2)} is VALID [2022-04-14 16:16:54,157 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2568#(<= ~counter~0 2)} {2568#(<= ~counter~0 2)} #63#return; {2568#(<= ~counter~0 2)} is VALID [2022-04-14 16:16:54,158 INFO L290 TraceCheckUtils]: 33: Hoare triple {2568#(<= ~counter~0 2)} assume !!(0 != ~r~0); {2568#(<= ~counter~0 2)} is VALID [2022-04-14 16:16:54,158 INFO L290 TraceCheckUtils]: 34: Hoare triple {2568#(<= ~counter~0 2)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2568#(<= ~counter~0 2)} is VALID [2022-04-14 16:16:54,158 INFO L290 TraceCheckUtils]: 35: Hoare triple {2568#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2596#(<= ~counter~0 3)} is VALID [2022-04-14 16:16:54,159 INFO L290 TraceCheckUtils]: 36: Hoare triple {2596#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {2596#(<= ~counter~0 3)} is VALID [2022-04-14 16:16:54,159 INFO L272 TraceCheckUtils]: 37: Hoare triple {2596#(<= ~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)); {2596#(<= ~counter~0 3)} is VALID [2022-04-14 16:16:54,159 INFO L290 TraceCheckUtils]: 38: Hoare triple {2596#(<= ~counter~0 3)} ~cond := #in~cond; {2596#(<= ~counter~0 3)} is VALID [2022-04-14 16:16:54,160 INFO L290 TraceCheckUtils]: 39: Hoare triple {2596#(<= ~counter~0 3)} assume !(0 == ~cond); {2596#(<= ~counter~0 3)} is VALID [2022-04-14 16:16:54,160 INFO L290 TraceCheckUtils]: 40: Hoare triple {2596#(<= ~counter~0 3)} assume true; {2596#(<= ~counter~0 3)} is VALID [2022-04-14 16:16:54,161 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2596#(<= ~counter~0 3)} {2596#(<= ~counter~0 3)} #63#return; {2596#(<= ~counter~0 3)} is VALID [2022-04-14 16:16:54,161 INFO L290 TraceCheckUtils]: 42: Hoare triple {2596#(<= ~counter~0 3)} assume !!(0 != ~r~0); {2596#(<= ~counter~0 3)} is VALID [2022-04-14 16:16:54,161 INFO L290 TraceCheckUtils]: 43: Hoare triple {2596#(<= ~counter~0 3)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2596#(<= ~counter~0 3)} is VALID [2022-04-14 16:16:54,162 INFO L290 TraceCheckUtils]: 44: Hoare triple {2596#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2624#(<= ~counter~0 4)} is VALID [2022-04-14 16:16:54,162 INFO L290 TraceCheckUtils]: 45: Hoare triple {2624#(<= ~counter~0 4)} assume !!(#t~post6 < 20);havoc #t~post6; {2624#(<= ~counter~0 4)} is VALID [2022-04-14 16:16:54,162 INFO L272 TraceCheckUtils]: 46: Hoare triple {2624#(<= ~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)); {2624#(<= ~counter~0 4)} is VALID [2022-04-14 16:16:54,163 INFO L290 TraceCheckUtils]: 47: Hoare triple {2624#(<= ~counter~0 4)} ~cond := #in~cond; {2624#(<= ~counter~0 4)} is VALID [2022-04-14 16:16:54,163 INFO L290 TraceCheckUtils]: 48: Hoare triple {2624#(<= ~counter~0 4)} assume !(0 == ~cond); {2624#(<= ~counter~0 4)} is VALID [2022-04-14 16:16:54,163 INFO L290 TraceCheckUtils]: 49: Hoare triple {2624#(<= ~counter~0 4)} assume true; {2624#(<= ~counter~0 4)} is VALID [2022-04-14 16:16:54,164 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2624#(<= ~counter~0 4)} {2624#(<= ~counter~0 4)} #63#return; {2624#(<= ~counter~0 4)} is VALID [2022-04-14 16:16:54,164 INFO L290 TraceCheckUtils]: 51: Hoare triple {2624#(<= ~counter~0 4)} assume !!(0 != ~r~0); {2624#(<= ~counter~0 4)} is VALID [2022-04-14 16:16:54,164 INFO L290 TraceCheckUtils]: 52: Hoare triple {2624#(<= ~counter~0 4)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2624#(<= ~counter~0 4)} is VALID [2022-04-14 16:16:54,165 INFO L290 TraceCheckUtils]: 53: Hoare triple {2624#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2652#(<= ~counter~0 5)} is VALID [2022-04-14 16:16:54,165 INFO L290 TraceCheckUtils]: 54: Hoare triple {2652#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {2652#(<= ~counter~0 5)} is VALID [2022-04-14 16:16:54,166 INFO L272 TraceCheckUtils]: 55: Hoare triple {2652#(<= ~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)); {2652#(<= ~counter~0 5)} is VALID [2022-04-14 16:16:54,166 INFO L290 TraceCheckUtils]: 56: Hoare triple {2652#(<= ~counter~0 5)} ~cond := #in~cond; {2652#(<= ~counter~0 5)} is VALID [2022-04-14 16:16:54,166 INFO L290 TraceCheckUtils]: 57: Hoare triple {2652#(<= ~counter~0 5)} assume !(0 == ~cond); {2652#(<= ~counter~0 5)} is VALID [2022-04-14 16:16:54,166 INFO L290 TraceCheckUtils]: 58: Hoare triple {2652#(<= ~counter~0 5)} assume true; {2652#(<= ~counter~0 5)} is VALID [2022-04-14 16:16:54,167 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {2652#(<= ~counter~0 5)} {2652#(<= ~counter~0 5)} #63#return; {2652#(<= ~counter~0 5)} is VALID [2022-04-14 16:16:54,167 INFO L290 TraceCheckUtils]: 60: Hoare triple {2652#(<= ~counter~0 5)} assume !!(0 != ~r~0); {2652#(<= ~counter~0 5)} is VALID [2022-04-14 16:16:54,168 INFO L290 TraceCheckUtils]: 61: Hoare triple {2652#(<= ~counter~0 5)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2652#(<= ~counter~0 5)} is VALID [2022-04-14 16:16:54,168 INFO L290 TraceCheckUtils]: 62: Hoare triple {2652#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2680#(<= ~counter~0 6)} is VALID [2022-04-14 16:16:54,169 INFO L290 TraceCheckUtils]: 63: Hoare triple {2680#(<= ~counter~0 6)} assume !!(#t~post6 < 20);havoc #t~post6; {2680#(<= ~counter~0 6)} is VALID [2022-04-14 16:16:54,169 INFO L272 TraceCheckUtils]: 64: Hoare triple {2680#(<= ~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)); {2680#(<= ~counter~0 6)} is VALID [2022-04-14 16:16:54,170 INFO L290 TraceCheckUtils]: 65: Hoare triple {2680#(<= ~counter~0 6)} ~cond := #in~cond; {2680#(<= ~counter~0 6)} is VALID [2022-04-14 16:16:54,172 INFO L290 TraceCheckUtils]: 66: Hoare triple {2680#(<= ~counter~0 6)} assume !(0 == ~cond); {2680#(<= ~counter~0 6)} is VALID [2022-04-14 16:16:54,173 INFO L290 TraceCheckUtils]: 67: Hoare triple {2680#(<= ~counter~0 6)} assume true; {2680#(<= ~counter~0 6)} is VALID [2022-04-14 16:16:54,174 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {2680#(<= ~counter~0 6)} {2680#(<= ~counter~0 6)} #63#return; {2680#(<= ~counter~0 6)} is VALID [2022-04-14 16:16:54,175 INFO L290 TraceCheckUtils]: 69: Hoare triple {2680#(<= ~counter~0 6)} assume !!(0 != ~r~0); {2680#(<= ~counter~0 6)} is VALID [2022-04-14 16:16:54,176 INFO L290 TraceCheckUtils]: 70: Hoare triple {2680#(<= ~counter~0 6)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2680#(<= ~counter~0 6)} is VALID [2022-04-14 16:16:54,176 INFO L290 TraceCheckUtils]: 71: Hoare triple {2680#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2708#(<= ~counter~0 7)} is VALID [2022-04-14 16:16:54,177 INFO L290 TraceCheckUtils]: 72: Hoare triple {2708#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {2708#(<= ~counter~0 7)} is VALID [2022-04-14 16:16:54,178 INFO L272 TraceCheckUtils]: 73: Hoare triple {2708#(<= ~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)); {2708#(<= ~counter~0 7)} is VALID [2022-04-14 16:16:54,178 INFO L290 TraceCheckUtils]: 74: Hoare triple {2708#(<= ~counter~0 7)} ~cond := #in~cond; {2708#(<= ~counter~0 7)} is VALID [2022-04-14 16:16:54,179 INFO L290 TraceCheckUtils]: 75: Hoare triple {2708#(<= ~counter~0 7)} assume !(0 == ~cond); {2708#(<= ~counter~0 7)} is VALID [2022-04-14 16:16:54,179 INFO L290 TraceCheckUtils]: 76: Hoare triple {2708#(<= ~counter~0 7)} assume true; {2708#(<= ~counter~0 7)} is VALID [2022-04-14 16:16:54,180 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {2708#(<= ~counter~0 7)} {2708#(<= ~counter~0 7)} #63#return; {2708#(<= ~counter~0 7)} is VALID [2022-04-14 16:16:54,180 INFO L290 TraceCheckUtils]: 78: Hoare triple {2708#(<= ~counter~0 7)} assume !!(0 != ~r~0); {2708#(<= ~counter~0 7)} is VALID [2022-04-14 16:16:54,180 INFO L290 TraceCheckUtils]: 79: Hoare triple {2708#(<= ~counter~0 7)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2708#(<= ~counter~0 7)} is VALID [2022-04-14 16:16:54,181 INFO L290 TraceCheckUtils]: 80: Hoare triple {2708#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2736#(<= ~counter~0 8)} is VALID [2022-04-14 16:16:54,181 INFO L290 TraceCheckUtils]: 81: Hoare triple {2736#(<= ~counter~0 8)} assume !!(#t~post6 < 20);havoc #t~post6; {2736#(<= ~counter~0 8)} is VALID [2022-04-14 16:16:54,182 INFO L272 TraceCheckUtils]: 82: Hoare triple {2736#(<= ~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)); {2736#(<= ~counter~0 8)} is VALID [2022-04-14 16:16:54,182 INFO L290 TraceCheckUtils]: 83: Hoare triple {2736#(<= ~counter~0 8)} ~cond := #in~cond; {2736#(<= ~counter~0 8)} is VALID [2022-04-14 16:16:54,183 INFO L290 TraceCheckUtils]: 84: Hoare triple {2736#(<= ~counter~0 8)} assume !(0 == ~cond); {2736#(<= ~counter~0 8)} is VALID [2022-04-14 16:16:54,183 INFO L290 TraceCheckUtils]: 85: Hoare triple {2736#(<= ~counter~0 8)} assume true; {2736#(<= ~counter~0 8)} is VALID [2022-04-14 16:16:54,183 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {2736#(<= ~counter~0 8)} {2736#(<= ~counter~0 8)} #63#return; {2736#(<= ~counter~0 8)} is VALID [2022-04-14 16:16:54,184 INFO L290 TraceCheckUtils]: 87: Hoare triple {2736#(<= ~counter~0 8)} assume !!(0 != ~r~0); {2736#(<= ~counter~0 8)} is VALID [2022-04-14 16:16:54,184 INFO L290 TraceCheckUtils]: 88: Hoare triple {2736#(<= ~counter~0 8)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2736#(<= ~counter~0 8)} is VALID [2022-04-14 16:16:54,185 INFO L290 TraceCheckUtils]: 89: Hoare triple {2736#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2764#(<= ~counter~0 9)} is VALID [2022-04-14 16:16:54,185 INFO L290 TraceCheckUtils]: 90: Hoare triple {2764#(<= ~counter~0 9)} assume !!(#t~post6 < 20);havoc #t~post6; {2764#(<= ~counter~0 9)} is VALID [2022-04-14 16:16:54,186 INFO L272 TraceCheckUtils]: 91: Hoare triple {2764#(<= ~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)); {2764#(<= ~counter~0 9)} is VALID [2022-04-14 16:16:54,186 INFO L290 TraceCheckUtils]: 92: Hoare triple {2764#(<= ~counter~0 9)} ~cond := #in~cond; {2764#(<= ~counter~0 9)} is VALID [2022-04-14 16:16:54,186 INFO L290 TraceCheckUtils]: 93: Hoare triple {2764#(<= ~counter~0 9)} assume !(0 == ~cond); {2764#(<= ~counter~0 9)} is VALID [2022-04-14 16:16:54,187 INFO L290 TraceCheckUtils]: 94: Hoare triple {2764#(<= ~counter~0 9)} assume true; {2764#(<= ~counter~0 9)} is VALID [2022-04-14 16:16:54,187 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {2764#(<= ~counter~0 9)} {2764#(<= ~counter~0 9)} #63#return; {2764#(<= ~counter~0 9)} is VALID [2022-04-14 16:16:54,188 INFO L290 TraceCheckUtils]: 96: Hoare triple {2764#(<= ~counter~0 9)} assume !!(0 != ~r~0); {2764#(<= ~counter~0 9)} is VALID [2022-04-14 16:16:54,188 INFO L290 TraceCheckUtils]: 97: Hoare triple {2764#(<= ~counter~0 9)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2764#(<= ~counter~0 9)} is VALID [2022-04-14 16:16:54,189 INFO L290 TraceCheckUtils]: 98: Hoare triple {2764#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2792#(<= ~counter~0 10)} is VALID [2022-04-14 16:16:54,189 INFO L290 TraceCheckUtils]: 99: Hoare triple {2792#(<= ~counter~0 10)} assume !!(#t~post6 < 20);havoc #t~post6; {2792#(<= ~counter~0 10)} is VALID [2022-04-14 16:16:54,190 INFO L272 TraceCheckUtils]: 100: Hoare triple {2792#(<= ~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)); {2792#(<= ~counter~0 10)} is VALID [2022-04-14 16:16:54,190 INFO L290 TraceCheckUtils]: 101: Hoare triple {2792#(<= ~counter~0 10)} ~cond := #in~cond; {2792#(<= ~counter~0 10)} is VALID [2022-04-14 16:16:54,190 INFO L290 TraceCheckUtils]: 102: Hoare triple {2792#(<= ~counter~0 10)} assume !(0 == ~cond); {2792#(<= ~counter~0 10)} is VALID [2022-04-14 16:16:54,191 INFO L290 TraceCheckUtils]: 103: Hoare triple {2792#(<= ~counter~0 10)} assume true; {2792#(<= ~counter~0 10)} is VALID [2022-04-14 16:16:54,191 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {2792#(<= ~counter~0 10)} {2792#(<= ~counter~0 10)} #63#return; {2792#(<= ~counter~0 10)} is VALID [2022-04-14 16:16:54,191 INFO L290 TraceCheckUtils]: 105: Hoare triple {2792#(<= ~counter~0 10)} assume !!(0 != ~r~0); {2792#(<= ~counter~0 10)} is VALID [2022-04-14 16:16:54,192 INFO L290 TraceCheckUtils]: 106: Hoare triple {2792#(<= ~counter~0 10)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2792#(<= ~counter~0 10)} is VALID [2022-04-14 16:16:54,192 INFO L290 TraceCheckUtils]: 107: Hoare triple {2792#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2820#(<= |main_#t~post6| 10)} is VALID [2022-04-14 16:16:54,193 INFO L290 TraceCheckUtils]: 108: Hoare triple {2820#(<= |main_#t~post6| 10)} assume !(#t~post6 < 20);havoc #t~post6; {2484#false} is VALID [2022-04-14 16:16:54,193 INFO L272 TraceCheckUtils]: 109: Hoare triple {2484#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)); {2484#false} is VALID [2022-04-14 16:16:54,193 INFO L290 TraceCheckUtils]: 110: Hoare triple {2484#false} ~cond := #in~cond; {2484#false} is VALID [2022-04-14 16:16:54,193 INFO L290 TraceCheckUtils]: 111: Hoare triple {2484#false} assume 0 == ~cond; {2484#false} is VALID [2022-04-14 16:16:54,193 INFO L290 TraceCheckUtils]: 112: Hoare triple {2484#false} assume !false; {2484#false} is VALID [2022-04-14 16:16:54,195 INFO L134 CoverageAnalysis]: Checked inductivity of 449 backedges. 20 proven. 425 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-14 16:16:54,195 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 16:16:54,844 INFO L290 TraceCheckUtils]: 112: Hoare triple {2484#false} assume !false; {2484#false} is VALID [2022-04-14 16:16:54,845 INFO L290 TraceCheckUtils]: 111: Hoare triple {2484#false} assume 0 == ~cond; {2484#false} is VALID [2022-04-14 16:16:54,845 INFO L290 TraceCheckUtils]: 110: Hoare triple {2484#false} ~cond := #in~cond; {2484#false} is VALID [2022-04-14 16:16:54,845 INFO L272 TraceCheckUtils]: 109: Hoare triple {2484#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)); {2484#false} is VALID [2022-04-14 16:16:54,845 INFO L290 TraceCheckUtils]: 108: Hoare triple {2848#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {2484#false} is VALID [2022-04-14 16:16:54,845 INFO L290 TraceCheckUtils]: 107: Hoare triple {2852#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2848#(< |main_#t~post6| 20)} is VALID [2022-04-14 16:16:54,846 INFO L290 TraceCheckUtils]: 106: Hoare triple {2852#(< ~counter~0 20)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2852#(< ~counter~0 20)} is VALID [2022-04-14 16:16:54,846 INFO L290 TraceCheckUtils]: 105: Hoare triple {2852#(< ~counter~0 20)} assume !!(0 != ~r~0); {2852#(< ~counter~0 20)} is VALID [2022-04-14 16:16:54,847 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {2483#true} {2852#(< ~counter~0 20)} #63#return; {2852#(< ~counter~0 20)} is VALID [2022-04-14 16:16:54,847 INFO L290 TraceCheckUtils]: 103: Hoare triple {2483#true} assume true; {2483#true} is VALID [2022-04-14 16:16:54,847 INFO L290 TraceCheckUtils]: 102: Hoare triple {2483#true} assume !(0 == ~cond); {2483#true} is VALID [2022-04-14 16:16:54,847 INFO L290 TraceCheckUtils]: 101: Hoare triple {2483#true} ~cond := #in~cond; {2483#true} is VALID [2022-04-14 16:16:54,847 INFO L272 TraceCheckUtils]: 100: Hoare triple {2852#(< ~counter~0 20)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2483#true} is VALID [2022-04-14 16:16:54,847 INFO L290 TraceCheckUtils]: 99: Hoare triple {2852#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {2852#(< ~counter~0 20)} is VALID [2022-04-14 16:16:54,848 INFO L290 TraceCheckUtils]: 98: Hoare triple {2880#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2852#(< ~counter~0 20)} is VALID [2022-04-14 16:16:54,848 INFO L290 TraceCheckUtils]: 97: Hoare triple {2880#(< ~counter~0 19)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2880#(< ~counter~0 19)} is VALID [2022-04-14 16:16:54,848 INFO L290 TraceCheckUtils]: 96: Hoare triple {2880#(< ~counter~0 19)} assume !!(0 != ~r~0); {2880#(< ~counter~0 19)} is VALID [2022-04-14 16:16:54,849 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {2483#true} {2880#(< ~counter~0 19)} #63#return; {2880#(< ~counter~0 19)} is VALID [2022-04-14 16:16:54,849 INFO L290 TraceCheckUtils]: 94: Hoare triple {2483#true} assume true; {2483#true} is VALID [2022-04-14 16:16:54,849 INFO L290 TraceCheckUtils]: 93: Hoare triple {2483#true} assume !(0 == ~cond); {2483#true} is VALID [2022-04-14 16:16:54,849 INFO L290 TraceCheckUtils]: 92: Hoare triple {2483#true} ~cond := #in~cond; {2483#true} is VALID [2022-04-14 16:16:54,849 INFO L272 TraceCheckUtils]: 91: Hoare triple {2880#(< ~counter~0 19)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2483#true} is VALID [2022-04-14 16:16:54,849 INFO L290 TraceCheckUtils]: 90: Hoare triple {2880#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {2880#(< ~counter~0 19)} is VALID [2022-04-14 16:16:54,850 INFO L290 TraceCheckUtils]: 89: Hoare triple {2908#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2880#(< ~counter~0 19)} is VALID [2022-04-14 16:16:54,850 INFO L290 TraceCheckUtils]: 88: Hoare triple {2908#(< ~counter~0 18)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2908#(< ~counter~0 18)} is VALID [2022-04-14 16:16:54,851 INFO L290 TraceCheckUtils]: 87: Hoare triple {2908#(< ~counter~0 18)} assume !!(0 != ~r~0); {2908#(< ~counter~0 18)} is VALID [2022-04-14 16:16:54,851 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {2483#true} {2908#(< ~counter~0 18)} #63#return; {2908#(< ~counter~0 18)} is VALID [2022-04-14 16:16:54,851 INFO L290 TraceCheckUtils]: 85: Hoare triple {2483#true} assume true; {2483#true} is VALID [2022-04-14 16:16:54,851 INFO L290 TraceCheckUtils]: 84: Hoare triple {2483#true} assume !(0 == ~cond); {2483#true} is VALID [2022-04-14 16:16:54,851 INFO L290 TraceCheckUtils]: 83: Hoare triple {2483#true} ~cond := #in~cond; {2483#true} is VALID [2022-04-14 16:16:54,851 INFO L272 TraceCheckUtils]: 82: Hoare triple {2908#(< ~counter~0 18)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2483#true} is VALID [2022-04-14 16:16:54,852 INFO L290 TraceCheckUtils]: 81: Hoare triple {2908#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {2908#(< ~counter~0 18)} is VALID [2022-04-14 16:16:54,852 INFO L290 TraceCheckUtils]: 80: Hoare triple {2936#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2908#(< ~counter~0 18)} is VALID [2022-04-14 16:16:54,852 INFO L290 TraceCheckUtils]: 79: Hoare triple {2936#(< ~counter~0 17)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2936#(< ~counter~0 17)} is VALID [2022-04-14 16:16:54,853 INFO L290 TraceCheckUtils]: 78: Hoare triple {2936#(< ~counter~0 17)} assume !!(0 != ~r~0); {2936#(< ~counter~0 17)} is VALID [2022-04-14 16:16:54,853 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {2483#true} {2936#(< ~counter~0 17)} #63#return; {2936#(< ~counter~0 17)} is VALID [2022-04-14 16:16:54,853 INFO L290 TraceCheckUtils]: 76: Hoare triple {2483#true} assume true; {2483#true} is VALID [2022-04-14 16:16:54,854 INFO L290 TraceCheckUtils]: 75: Hoare triple {2483#true} assume !(0 == ~cond); {2483#true} is VALID [2022-04-14 16:16:54,854 INFO L290 TraceCheckUtils]: 74: Hoare triple {2483#true} ~cond := #in~cond; {2483#true} is VALID [2022-04-14 16:16:54,854 INFO L272 TraceCheckUtils]: 73: Hoare triple {2936#(< ~counter~0 17)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2483#true} is VALID [2022-04-14 16:16:54,854 INFO L290 TraceCheckUtils]: 72: Hoare triple {2936#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {2936#(< ~counter~0 17)} is VALID [2022-04-14 16:16:54,854 INFO L290 TraceCheckUtils]: 71: Hoare triple {2964#(< ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2936#(< ~counter~0 17)} is VALID [2022-04-14 16:16:54,855 INFO L290 TraceCheckUtils]: 70: Hoare triple {2964#(< ~counter~0 16)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2964#(< ~counter~0 16)} is VALID [2022-04-14 16:16:54,855 INFO L290 TraceCheckUtils]: 69: Hoare triple {2964#(< ~counter~0 16)} assume !!(0 != ~r~0); {2964#(< ~counter~0 16)} is VALID [2022-04-14 16:16:54,856 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {2483#true} {2964#(< ~counter~0 16)} #63#return; {2964#(< ~counter~0 16)} is VALID [2022-04-14 16:16:54,856 INFO L290 TraceCheckUtils]: 67: Hoare triple {2483#true} assume true; {2483#true} is VALID [2022-04-14 16:16:54,856 INFO L290 TraceCheckUtils]: 66: Hoare triple {2483#true} assume !(0 == ~cond); {2483#true} is VALID [2022-04-14 16:16:54,856 INFO L290 TraceCheckUtils]: 65: Hoare triple {2483#true} ~cond := #in~cond; {2483#true} is VALID [2022-04-14 16:16:54,856 INFO L272 TraceCheckUtils]: 64: Hoare triple {2964#(< ~counter~0 16)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2483#true} is VALID [2022-04-14 16:16:54,856 INFO L290 TraceCheckUtils]: 63: Hoare triple {2964#(< ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {2964#(< ~counter~0 16)} is VALID [2022-04-14 16:16:54,856 INFO L290 TraceCheckUtils]: 62: Hoare triple {2992#(< ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2964#(< ~counter~0 16)} is VALID [2022-04-14 16:16:54,857 INFO L290 TraceCheckUtils]: 61: Hoare triple {2992#(< ~counter~0 15)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2992#(< ~counter~0 15)} is VALID [2022-04-14 16:16:54,857 INFO L290 TraceCheckUtils]: 60: Hoare triple {2992#(< ~counter~0 15)} assume !!(0 != ~r~0); {2992#(< ~counter~0 15)} is VALID [2022-04-14 16:16:54,858 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {2483#true} {2992#(< ~counter~0 15)} #63#return; {2992#(< ~counter~0 15)} is VALID [2022-04-14 16:16:54,858 INFO L290 TraceCheckUtils]: 58: Hoare triple {2483#true} assume true; {2483#true} is VALID [2022-04-14 16:16:54,858 INFO L290 TraceCheckUtils]: 57: Hoare triple {2483#true} assume !(0 == ~cond); {2483#true} is VALID [2022-04-14 16:16:54,858 INFO L290 TraceCheckUtils]: 56: Hoare triple {2483#true} ~cond := #in~cond; {2483#true} is VALID [2022-04-14 16:16:54,858 INFO L272 TraceCheckUtils]: 55: Hoare triple {2992#(< ~counter~0 15)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2483#true} is VALID [2022-04-14 16:16:54,858 INFO L290 TraceCheckUtils]: 54: Hoare triple {2992#(< ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {2992#(< ~counter~0 15)} is VALID [2022-04-14 16:16:54,858 INFO L290 TraceCheckUtils]: 53: Hoare triple {3020#(< ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2992#(< ~counter~0 15)} is VALID [2022-04-14 16:16:54,859 INFO L290 TraceCheckUtils]: 52: Hoare triple {3020#(< ~counter~0 14)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3020#(< ~counter~0 14)} is VALID [2022-04-14 16:16:54,859 INFO L290 TraceCheckUtils]: 51: Hoare triple {3020#(< ~counter~0 14)} assume !!(0 != ~r~0); {3020#(< ~counter~0 14)} is VALID [2022-04-14 16:16:54,859 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2483#true} {3020#(< ~counter~0 14)} #63#return; {3020#(< ~counter~0 14)} is VALID [2022-04-14 16:16:54,860 INFO L290 TraceCheckUtils]: 49: Hoare triple {2483#true} assume true; {2483#true} is VALID [2022-04-14 16:16:54,860 INFO L290 TraceCheckUtils]: 48: Hoare triple {2483#true} assume !(0 == ~cond); {2483#true} is VALID [2022-04-14 16:16:54,860 INFO L290 TraceCheckUtils]: 47: Hoare triple {2483#true} ~cond := #in~cond; {2483#true} is VALID [2022-04-14 16:16:54,860 INFO L272 TraceCheckUtils]: 46: Hoare triple {3020#(< ~counter~0 14)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2483#true} is VALID [2022-04-14 16:16:54,860 INFO L290 TraceCheckUtils]: 45: Hoare triple {3020#(< ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {3020#(< ~counter~0 14)} is VALID [2022-04-14 16:16:54,860 INFO L290 TraceCheckUtils]: 44: Hoare triple {3048#(< ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3020#(< ~counter~0 14)} is VALID [2022-04-14 16:16:54,861 INFO L290 TraceCheckUtils]: 43: Hoare triple {3048#(< ~counter~0 13)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3048#(< ~counter~0 13)} is VALID [2022-04-14 16:16:54,861 INFO L290 TraceCheckUtils]: 42: Hoare triple {3048#(< ~counter~0 13)} assume !!(0 != ~r~0); {3048#(< ~counter~0 13)} is VALID [2022-04-14 16:16:54,861 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2483#true} {3048#(< ~counter~0 13)} #63#return; {3048#(< ~counter~0 13)} is VALID [2022-04-14 16:16:54,862 INFO L290 TraceCheckUtils]: 40: Hoare triple {2483#true} assume true; {2483#true} is VALID [2022-04-14 16:16:54,862 INFO L290 TraceCheckUtils]: 39: Hoare triple {2483#true} assume !(0 == ~cond); {2483#true} is VALID [2022-04-14 16:16:54,862 INFO L290 TraceCheckUtils]: 38: Hoare triple {2483#true} ~cond := #in~cond; {2483#true} is VALID [2022-04-14 16:16:54,862 INFO L272 TraceCheckUtils]: 37: Hoare triple {3048#(< ~counter~0 13)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2483#true} is VALID [2022-04-14 16:16:54,862 INFO L290 TraceCheckUtils]: 36: Hoare triple {3048#(< ~counter~0 13)} assume !!(#t~post6 < 20);havoc #t~post6; {3048#(< ~counter~0 13)} is VALID [2022-04-14 16:16:54,862 INFO L290 TraceCheckUtils]: 35: Hoare triple {3076#(< ~counter~0 12)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3048#(< ~counter~0 13)} is VALID [2022-04-14 16:16:54,863 INFO L290 TraceCheckUtils]: 34: Hoare triple {3076#(< ~counter~0 12)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {3076#(< ~counter~0 12)} is VALID [2022-04-14 16:16:54,863 INFO L290 TraceCheckUtils]: 33: Hoare triple {3076#(< ~counter~0 12)} assume !!(0 != ~r~0); {3076#(< ~counter~0 12)} is VALID [2022-04-14 16:16:54,863 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2483#true} {3076#(< ~counter~0 12)} #63#return; {3076#(< ~counter~0 12)} is VALID [2022-04-14 16:16:54,864 INFO L290 TraceCheckUtils]: 31: Hoare triple {2483#true} assume true; {2483#true} is VALID [2022-04-14 16:16:54,864 INFO L290 TraceCheckUtils]: 30: Hoare triple {2483#true} assume !(0 == ~cond); {2483#true} is VALID [2022-04-14 16:16:54,864 INFO L290 TraceCheckUtils]: 29: Hoare triple {2483#true} ~cond := #in~cond; {2483#true} is VALID [2022-04-14 16:16:54,864 INFO L272 TraceCheckUtils]: 28: Hoare triple {3076#(< ~counter~0 12)} call __VERIFIER_assert((if 4 * (~A~0 + ~r~0) == ~u~0 * ~u~0 - ~v~0 * ~v~0 - 2 * ~u~0 + 2 * ~v~0 then 1 else 0)); {2483#true} is VALID [2022-04-14 16:16:54,864 INFO L290 TraceCheckUtils]: 27: Hoare triple {3076#(< ~counter~0 12)} assume !!(#t~post6 < 20);havoc #t~post6; {3076#(< ~counter~0 12)} is VALID [2022-04-14 16:16:54,864 INFO L290 TraceCheckUtils]: 26: Hoare triple {2792#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3076#(< ~counter~0 12)} is VALID [2022-04-14 16:16:54,865 INFO L290 TraceCheckUtils]: 25: Hoare triple {2792#(<= ~counter~0 10)} assume ~r~0 > 0;~r~0 := ~r~0 - ~v~0;~v~0 := 2 + ~v~0; {2792#(<= ~counter~0 10)} is VALID [2022-04-14 16:16:54,865 INFO L290 TraceCheckUtils]: 24: Hoare triple {2792#(<= ~counter~0 10)} assume !!(0 != ~r~0); {2792#(<= ~counter~0 10)} is VALID [2022-04-14 16:16:54,865 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2483#true} {2792#(<= ~counter~0 10)} #63#return; {2792#(<= ~counter~0 10)} is VALID [2022-04-14 16:16:54,866 INFO L290 TraceCheckUtils]: 22: Hoare triple {2483#true} assume true; {2483#true} is VALID [2022-04-14 16:16:54,866 INFO L290 TraceCheckUtils]: 21: Hoare triple {2483#true} assume !(0 == ~cond); {2483#true} is VALID [2022-04-14 16:16:54,866 INFO L290 TraceCheckUtils]: 20: Hoare triple {2483#true} ~cond := #in~cond; {2483#true} is VALID [2022-04-14 16:16:54,866 INFO L272 TraceCheckUtils]: 19: Hoare triple {2792#(<= ~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)); {2483#true} is VALID [2022-04-14 16:16:54,866 INFO L290 TraceCheckUtils]: 18: Hoare triple {2792#(<= ~counter~0 10)} assume !!(#t~post6 < 20);havoc #t~post6; {2792#(<= ~counter~0 10)} is VALID [2022-04-14 16:16:54,866 INFO L290 TraceCheckUtils]: 17: Hoare triple {2764#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2792#(<= ~counter~0 10)} is VALID [2022-04-14 16:16:54,867 INFO L290 TraceCheckUtils]: 16: Hoare triple {2764#(<= ~counter~0 9)} ~u~0 := 1 + 2 * ~R~0;~v~0 := 1;~r~0 := ~R~0 * ~R~0 - ~A~0; {2764#(<= ~counter~0 9)} is VALID [2022-04-14 16:16:54,867 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2483#true} {2764#(<= ~counter~0 9)} #61#return; {2764#(<= ~counter~0 9)} is VALID [2022-04-14 16:16:54,867 INFO L290 TraceCheckUtils]: 14: Hoare triple {2483#true} assume true; {2483#true} is VALID [2022-04-14 16:16:54,867 INFO L290 TraceCheckUtils]: 13: Hoare triple {2483#true} assume !(0 == ~cond); {2483#true} is VALID [2022-04-14 16:16:54,867 INFO L290 TraceCheckUtils]: 12: Hoare triple {2483#true} ~cond := #in~cond; {2483#true} is VALID [2022-04-14 16:16:54,867 INFO L272 TraceCheckUtils]: 11: Hoare triple {2764#(<= ~counter~0 9)} call assume_abort_if_not((if 1 == (if ~A~0 < 0 && 0 != ~A~0 % 2 then ~A~0 % 2 - 2 else ~A~0 % 2) then 1 else 0)); {2483#true} is VALID [2022-04-14 16:16:54,868 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2483#true} {2764#(<= ~counter~0 9)} #59#return; {2764#(<= ~counter~0 9)} is VALID [2022-04-14 16:16:54,868 INFO L290 TraceCheckUtils]: 9: Hoare triple {2483#true} assume true; {2483#true} is VALID [2022-04-14 16:16:54,868 INFO L290 TraceCheckUtils]: 8: Hoare triple {2483#true} assume !(0 == ~cond); {2483#true} is VALID [2022-04-14 16:16:54,868 INFO L290 TraceCheckUtils]: 7: Hoare triple {2483#true} ~cond := #in~cond; {2483#true} is VALID [2022-04-14 16:16:54,868 INFO L272 TraceCheckUtils]: 6: Hoare triple {2764#(<= ~counter~0 9)} call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); {2483#true} is VALID [2022-04-14 16:16:54,868 INFO L290 TraceCheckUtils]: 5: Hoare triple {2764#(<= ~counter~0 9)} havoc ~A~0;havoc ~R~0;havoc ~u~0;havoc ~v~0;havoc ~r~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~A~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~R~0 := #t~nondet5;havoc #t~nondet5; {2764#(<= ~counter~0 9)} is VALID [2022-04-14 16:16:54,869 INFO L272 TraceCheckUtils]: 4: Hoare triple {2764#(<= ~counter~0 9)} call #t~ret7 := main(); {2764#(<= ~counter~0 9)} is VALID [2022-04-14 16:16:54,869 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2764#(<= ~counter~0 9)} {2483#true} #67#return; {2764#(<= ~counter~0 9)} is VALID [2022-04-14 16:16:54,869 INFO L290 TraceCheckUtils]: 2: Hoare triple {2764#(<= ~counter~0 9)} assume true; {2764#(<= ~counter~0 9)} is VALID [2022-04-14 16:16:54,870 INFO L290 TraceCheckUtils]: 1: Hoare triple {2483#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; {2764#(<= ~counter~0 9)} is VALID [2022-04-14 16:16:54,870 INFO L272 TraceCheckUtils]: 0: Hoare triple {2483#true} call ULTIMATE.init(); {2483#true} is VALID [2022-04-14 16:16:54,870 INFO L134 CoverageAnalysis]: Checked inductivity of 449 backedges. 20 proven. 245 refuted. 0 times theorem prover too weak. 184 trivial. 0 not checked. [2022-04-14 16:16:54,870 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 16:16:54,870 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1349353197] [2022-04-14 16:16:54,870 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 16:16:54,870 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [227959620] [2022-04-14 16:16:54,870 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [227959620] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 16:16:54,870 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 16:16:54,870 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 24 [2022-04-14 16:16:54,871 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [201455420] [2022-04-14 16:16:54,871 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 16:16:54,871 INFO L78 Accepts]: Start accepts. Automaton has has 24 states, 24 states have (on average 5.416666666666667) internal successors, (130), 24 states have internal predecessors, (130), 22 states have call successors, (28), 13 states have call predecessors, (28), 12 states have return successors, (26), 20 states have call predecessors, (26), 21 states have call successors, (26) Word has length 113 [2022-04-14 16:16:54,872 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 16:16:54,872 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 24 states, 24 states have (on average 5.416666666666667) internal successors, (130), 24 states have internal predecessors, (130), 22 states have call successors, (28), 13 states have call predecessors, (28), 12 states have return successors, (26), 20 states have call predecessors, (26), 21 states have call successors, (26) [2022-04-14 16:16:54,985 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 184 edges. 184 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 16:16:54,985 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 24 states [2022-04-14 16:16:54,985 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 16:16:54,986 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 24 interpolants. [2022-04-14 16:16:54,986 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-14 16:16:54,986 INFO L87 Difference]: Start difference. First operand 110 states and 121 transitions. Second operand has 24 states, 24 states have (on average 5.416666666666667) internal successors, (130), 24 states have internal predecessors, (130), 22 states have call successors, (28), 13 states have call predecessors, (28), 12 states have return successors, (26), 20 states have call predecessors, (26), 21 states have call successors, (26) [2022-04-14 16:16:55,795 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 16:16:55,795 INFO L93 Difference]: Finished difference Result 205 states and 235 transitions. [2022-04-14 16:16:55,795 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 42 states. [2022-04-14 16:16:55,795 INFO L78 Accepts]: Start accepts. Automaton has has 24 states, 24 states have (on average 5.416666666666667) internal successors, (130), 24 states have internal predecessors, (130), 22 states have call successors, (28), 13 states have call predecessors, (28), 12 states have return successors, (26), 20 states have call predecessors, (26), 21 states have call successors, (26) Word has length 113 [2022-04-14 16:16:55,796 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 16:16:55,796 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 24 states, 24 states have (on average 5.416666666666667) internal successors, (130), 24 states have internal predecessors, (130), 22 states have call successors, (28), 13 states have call predecessors, (28), 12 states have return successors, (26), 20 states have call predecessors, (26), 21 states have call successors, (26) [2022-04-14 16:16:55,802 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 42 states to 42 states and 234 transitions. [2022-04-14 16:16:55,802 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 24 states, 24 states have (on average 5.416666666666667) internal successors, (130), 24 states have internal predecessors, (130), 22 states have call successors, (28), 13 states have call predecessors, (28), 12 states have return successors, (26), 20 states have call predecessors, (26), 21 states have call successors, (26) [2022-04-14 16:16:55,808 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 42 states to 42 states and 234 transitions. [2022-04-14 16:16:55,808 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 42 states and 234 transitions. [2022-04-14 16:16:55,976 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 234 edges. 234 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 16:16:55,979 INFO L225 Difference]: With dead ends: 205 [2022-04-14 16:16:55,979 INFO L226 Difference]: Without dead ends: 200 [2022-04-14 16:16:55,980 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 244 GetRequests, 202 SyntacticMatches, 1 SemanticMatches, 41 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 237 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=665, Invalid=1141, Unknown=0, NotChecked=0, Total=1806 [2022-04-14 16:16:55,980 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 187 mSDsluCounter, 239 mSDsCounter, 0 mSdLazyCounter, 142 mSolverCounterSat, 43 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 187 SdHoareTripleChecker+Valid, 284 SdHoareTripleChecker+Invalid, 185 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 43 IncrementalHoareTripleChecker+Valid, 142 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-14 16:16:55,980 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [187 Valid, 284 Invalid, 185 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [43 Valid, 142 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-14 16:16:55,981 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 200 states. [2022-04-14 16:16:56,035 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 200 to 200. [2022-04-14 16:16:56,035 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 16:16:56,036 INFO L82 GeneralOperation]: Start isEquivalent. First operand 200 states. Second operand has 200 states, 152 states have (on average 1.138157894736842) internal successors, (173), 152 states have internal predecessors, (173), 25 states have call successors, (25), 24 states have call predecessors, (25), 22 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-14 16:16:56,036 INFO L74 IsIncluded]: Start isIncluded. First operand 200 states. Second operand has 200 states, 152 states have (on average 1.138157894736842) internal successors, (173), 152 states have internal predecessors, (173), 25 states have call successors, (25), 24 states have call predecessors, (25), 22 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-14 16:16:56,036 INFO L87 Difference]: Start difference. First operand 200 states. Second operand has 200 states, 152 states have (on average 1.138157894736842) internal successors, (173), 152 states have internal predecessors, (173), 25 states have call successors, (25), 24 states have call predecessors, (25), 22 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-14 16:16:56,040 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 16:16:56,040 INFO L93 Difference]: Finished difference Result 200 states and 221 transitions. [2022-04-14 16:16:56,040 INFO L276 IsEmpty]: Start isEmpty. Operand 200 states and 221 transitions. [2022-04-14 16:16:56,041 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 16:16:56,041 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 16:16:56,041 INFO L74 IsIncluded]: Start isIncluded. First operand has 200 states, 152 states have (on average 1.138157894736842) internal successors, (173), 152 states have internal predecessors, (173), 25 states have call successors, (25), 24 states have call predecessors, (25), 22 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand 200 states. [2022-04-14 16:16:56,041 INFO L87 Difference]: Start difference. First operand has 200 states, 152 states have (on average 1.138157894736842) internal successors, (173), 152 states have internal predecessors, (173), 25 states have call successors, (25), 24 states have call predecessors, (25), 22 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand 200 states. [2022-04-14 16:16:56,046 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 16:16:56,046 INFO L93 Difference]: Finished difference Result 200 states and 221 transitions. [2022-04-14 16:16:56,046 INFO L276 IsEmpty]: Start isEmpty. Operand 200 states and 221 transitions. [2022-04-14 16:16:56,046 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 16:16:56,046 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 16:16:56,046 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 16:16:56,046 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 16:16:56,047 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 200 states, 152 states have (on average 1.138157894736842) internal successors, (173), 152 states have internal predecessors, (173), 25 states have call successors, (25), 24 states have call predecessors, (25), 22 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-14 16:16:56,050 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 200 states to 200 states and 221 transitions. [2022-04-14 16:16:56,050 INFO L78 Accepts]: Start accepts. Automaton has 200 states and 221 transitions. Word has length 113 [2022-04-14 16:16:56,051 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 16:16:56,051 INFO L478 AbstractCegarLoop]: Abstraction has 200 states and 221 transitions. [2022-04-14 16:16:56,051 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 24 states, 24 states have (on average 5.416666666666667) internal successors, (130), 24 states have internal predecessors, (130), 22 states have call successors, (28), 13 states have call predecessors, (28), 12 states have return successors, (26), 20 states have call predecessors, (26), 21 states have call successors, (26) [2022-04-14 16:16:56,051 INFO L276 IsEmpty]: Start isEmpty. Operand 200 states and 221 transitions. [2022-04-14 16:16:56,056 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 204 [2022-04-14 16:16:56,056 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 16:16:56,056 INFO L499 BasicCegarLoop]: trace histogram [21, 21, 20, 20, 20, 20, 20, 20, 20, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 16:16:56,064 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-14 16:16:56,264 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-14 16:16:56,264 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 16:16:56,264 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 16:16:56,265 INFO L85 PathProgramCache]: Analyzing trace with hash 1934081686, now seen corresponding path program 4 times [2022-04-14 16:16:56,265 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 16:16:56,265 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1283596545] [2022-04-14 16:16:56,265 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 16:16:56,265 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 16:16:56,286 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 16:16:56,287 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [382322938] [2022-04-14 16:16:56,287 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-14 16:16:56,287 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 16:16:56,287 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 16:16:56,288 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-14 16:16:56,288 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-14 16:16:56,465 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-14 16:16:56,465 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-04-14 16:16:56,465 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-04-14 16:16:56,610 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-04-14 16:16:56,684 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-04-14 16:16:56,685 INFO L618 BasicCegarLoop]: Counterexample is feasible [2022-04-14 16:16:56,685 INFO L788 garLoopResultBuilder]: Registering result UNSAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-14 16:16:56,692 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-14 16:16:56,892 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-14 16:16:56,894 INFO L719 BasicCegarLoop]: Path program histogram: [4, 1, 1, 1, 1] [2022-04-14 16:16:56,896 INFO L177 ceAbstractionStarter]: Computing trace abstraction results [2022-04-14 16:16:56,962 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-14 16:16:56,963 WARN L170 areAnnotationChecker]: ULTIMATE.initENTRY has no Hoare annotation [2022-04-14 16:16:56,963 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-04-14 16:16:56,963 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-04-14 16:16:56,963 WARN L170 areAnnotationChecker]: assume_abort_if_notENTRY has no Hoare annotation [2022-04-14 16:16:56,963 WARN L170 areAnnotationChecker]: mainENTRY has no Hoare annotation [2022-04-14 16:16:56,963 WARN L170 areAnnotationChecker]: __VERIFIER_assertENTRY has no Hoare annotation [2022-04-14 16:16:56,963 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-14 16:16:56,963 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-14 16:16:56,963 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-04-14 16:16:56,963 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-04-14 16:16:56,963 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-04-14 16:16:56,963 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-04-14 16:16:56,963 WARN L170 areAnnotationChecker]: L26 has no Hoare annotation [2022-04-14 16:16:56,963 WARN L170 areAnnotationChecker]: L26 has no Hoare annotation [2022-04-14 16:16:56,963 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-14 16:16:56,963 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-14 16:16:56,963 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-14 16:16:56,963 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-14 16:16:56,963 WARN L170 areAnnotationChecker]: L9-2 has no Hoare annotation [2022-04-14 16:16:56,963 WARN L170 areAnnotationChecker]: L26-1 has no Hoare annotation [2022-04-14 16:16:56,963 WARN L170 areAnnotationChecker]: L26-1 has no Hoare annotation [2022-04-14 16:16:56,963 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-04-14 16:16:56,963 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-04-14 16:16:56,963 WARN L170 areAnnotationChecker]: L12-2 has no Hoare annotation [2022-04-14 16:16:56,963 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-14 16:16:56,963 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-14 16:16:56,963 WARN L170 areAnnotationChecker]: L28 has no Hoare annotation [2022-04-14 16:16:56,963 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-14 16:16:56,963 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-14 16:16:56,963 WARN L170 areAnnotationChecker]: L38-2 has no Hoare annotation [2022-04-14 16:16:56,963 WARN L170 areAnnotationChecker]: L38-2 has no Hoare annotation [2022-04-14 16:16:56,963 WARN L170 areAnnotationChecker]: L35-1 has no Hoare annotation [2022-04-14 16:16:56,964 WARN L170 areAnnotationChecker]: L35-1 has no Hoare annotation [2022-04-14 16:16:56,964 WARN L170 areAnnotationChecker]: L48 has no Hoare annotation [2022-04-14 16:16:56,964 WARN L170 areAnnotationChecker]: L34-3 has no Hoare annotation [2022-04-14 16:16:56,964 WARN L170 areAnnotationChecker]: L34-3 has no Hoare annotation [2022-04-14 16:16:56,964 WARN L170 areAnnotationChecker]: L34-1 has no Hoare annotation [2022-04-14 16:16:56,964 WARN L170 areAnnotationChecker]: L34-1 has no Hoare annotation [2022-04-14 16:16:56,964 WARN L170 areAnnotationChecker]: L38 has no Hoare annotation [2022-04-14 16:16:56,964 WARN L170 areAnnotationChecker]: L38 has no Hoare annotation [2022-04-14 16:16:56,964 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-14 16:16:56,964 WARN L170 areAnnotationChecker]: L35 has no Hoare annotation [2022-04-14 16:16:56,964 WARN L170 areAnnotationChecker]: L35 has no Hoare annotation [2022-04-14 16:16:56,964 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-14 16:16:56,964 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-14 16:16:56,964 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 14.04 04:16:56 BoogieIcfgContainer [2022-04-14 16:16:56,964 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-14 16:16:56,965 INFO L158 Benchmark]: Toolchain (without parser) took 23957.81ms. Allocated memory was 173.0MB in the beginning and 227.5MB in the end (delta: 54.5MB). Free memory was 119.7MB in the beginning and 186.2MB in the end (delta: -66.6MB). Peak memory consumption was 105.9MB. Max. memory is 8.0GB. [2022-04-14 16:16:56,965 INFO L158 Benchmark]: CDTParser took 0.09ms. Allocated memory is still 173.0MB. Free memory is still 136.4MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-14 16:16:56,965 INFO L158 Benchmark]: CACSL2BoogieTranslator took 198.68ms. Allocated memory is still 173.0MB. Free memory was 119.5MB in the beginning and 146.8MB in the end (delta: -27.3MB). Peak memory consumption was 12.4MB. Max. memory is 8.0GB. [2022-04-14 16:16:56,965 INFO L158 Benchmark]: Boogie Preprocessor took 29.59ms. Allocated memory is still 173.0MB. Free memory was 146.8MB in the beginning and 145.5MB in the end (delta: 1.3MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-14 16:16:56,966 INFO L158 Benchmark]: RCFGBuilder took 255.41ms. Allocated memory is still 173.0MB. Free memory was 145.5MB in the beginning and 134.0MB in the end (delta: 11.5MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-14 16:16:56,966 INFO L158 Benchmark]: TraceAbstraction took 23470.82ms. Allocated memory was 173.0MB in the beginning and 227.5MB in the end (delta: 54.5MB). Free memory was 133.6MB in the beginning and 186.2MB in the end (delta: -52.6MB). Peak memory consumption was 119.6MB. Max. memory is 8.0GB. [2022-04-14 16:16:56,966 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.09ms. Allocated memory is still 173.0MB. Free memory is still 136.4MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 198.68ms. Allocated memory is still 173.0MB. Free memory was 119.5MB in the beginning and 146.8MB in the end (delta: -27.3MB). Peak memory consumption was 12.4MB. Max. memory is 8.0GB. * Boogie Preprocessor took 29.59ms. Allocated memory is still 173.0MB. Free memory was 146.8MB in the beginning and 145.5MB in the end (delta: 1.3MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 255.41ms. Allocated memory is still 173.0MB. Free memory was 145.5MB in the beginning and 134.0MB in the end (delta: 11.5MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * TraceAbstraction took 23470.82ms. Allocated memory was 173.0MB in the beginning and 227.5MB in the end (delta: 54.5MB). Free memory was 133.6MB in the beginning and 186.2MB in the end (delta: -52.6MB). Peak memory consumption was 119.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; VAL [\old(counter)=26, counter=0] [L21] int A, R; [L22] long long u, v, r; [L23] A = __VERIFIER_nondet_int() [L24] R = __VERIFIER_nondet_int() [L26] CALL assume_abort_if_not(((long long) R - 1) * ((long long) R - 1) < A) VAL [\old(cond)=1, \old(counter)=0, counter=0] [L9] COND FALSE !(!cond) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=0] [L26] RET assume_abort_if_not(((long long) R - 1) * ((long long) R - 1) < A) VAL [\old(counter)=0, A=33127, counter=0, R=183] [L28] CALL assume_abort_if_not(A % 2 == 1) VAL [\old(cond)=1, \old(counter)=0, counter=0] [L9] COND FALSE !(!cond) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=0] [L28] RET assume_abort_if_not(A % 2 == 1) VAL [\old(counter)=0, A=33127, counter=0, R=183] [L30] u = ((long long) 2 * R) + 1 [L31] v = 1 [L32] r = ((long long) R * R) - A VAL [\old(counter)=0, A=33127, counter=0, R=183, r=362, u=367, v=1] [L34] EXPR counter++ VAL [\old(counter)=0, A=33127, counter=1, counter++=0, R=183, r=362, u=367, v=1] [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=1, \old(counter)=0, counter=1] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=1] [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=33127, counter=1, r=362, R=183, u=367, v=1] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=33127, counter=1, r=362, R=183, u=367, v=1] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=33127, counter=1, r=361, R=183, u=367, v=3] [L34] EXPR counter++ VAL [\old(counter)=0, A=33127, counter=2, counter++=1, R=183, r=361, u=367, v=3] [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=1, \old(counter)=0, counter=2] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=2] [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=33127, counter=2, r=361, R=183, u=367, v=3] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=33127, counter=2, r=361, R=183, u=367, v=3] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=33127, counter=2, R=183, r=358, u=367, v=5] [L34] EXPR counter++ VAL [\old(counter)=0, A=33127, counter=3, counter++=2, r=358, R=183, u=367, v=5] [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=1, \old(counter)=0, counter=3] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=3] [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=33127, counter=3, R=183, r=358, u=367, v=5] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=33127, counter=3, r=358, R=183, u=367, v=5] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=33127, counter=3, r=353, R=183, u=367, v=7] [L34] EXPR counter++ VAL [\old(counter)=0, A=33127, counter=4, counter++=3, r=353, R=183, u=367, v=7] [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=1, \old(counter)=0, counter=4] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=4] [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=33127, counter=4, r=353, R=183, u=367, v=7] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=33127, counter=4, R=183, r=353, u=367, v=7] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=33127, counter=4, R=183, r=346, u=367, v=9] [L34] EXPR counter++ VAL [\old(counter)=0, A=33127, counter=5, counter++=4, R=183, r=346, u=367, v=9] [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=1, \old(counter)=0, counter=5] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=5] [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=33127, counter=5, R=183, r=346, u=367, v=9] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=33127, counter=5, R=183, r=346, u=367, v=9] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=33127, counter=5, R=183, r=337, u=367, v=11] [L34] EXPR counter++ VAL [\old(counter)=0, A=33127, counter=6, counter++=5, R=183, r=337, u=367, v=11] [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=1, \old(counter)=0, counter=6] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=6] [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=33127, counter=6, R=183, r=337, u=367, v=11] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=33127, counter=6, r=337, R=183, u=367, v=11] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=33127, counter=6, r=326, R=183, u=367, v=13] [L34] EXPR counter++ VAL [\old(counter)=0, A=33127, counter=7, counter++=6, r=326, R=183, u=367, v=13] [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=1, \old(counter)=0, counter=7] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=7] [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=33127, counter=7, r=326, R=183, u=367, v=13] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=33127, counter=7, r=326, R=183, u=367, v=13] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=33127, counter=7, r=313, R=183, u=367, v=15] [L34] EXPR counter++ VAL [\old(counter)=0, A=33127, counter=8, counter++=7, R=183, r=313, u=367, v=15] [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=1, \old(counter)=0, counter=8] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=8] [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=33127, counter=8, R=183, r=313, u=367, v=15] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=33127, counter=8, R=183, r=313, u=367, v=15] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=33127, counter=8, r=298, R=183, u=367, v=17] [L34] EXPR counter++ VAL [\old(counter)=0, A=33127, counter=9, counter++=8, r=298, R=183, u=367, v=17] [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=1, \old(counter)=0, counter=9] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=9] [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=33127, counter=9, r=298, R=183, u=367, v=17] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=33127, counter=9, r=298, R=183, u=367, v=17] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=33127, counter=9, R=183, r=281, u=367, v=19] [L34] EXPR counter++ VAL [\old(counter)=0, A=33127, counter=10, counter++=9, R=183, r=281, u=367, v=19] [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=1, \old(counter)=0, counter=10] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=10] [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=33127, counter=10, r=281, R=183, u=367, v=19] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=33127, counter=10, R=183, r=281, u=367, v=19] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=33127, counter=10, R=183, r=262, u=367, v=21] [L34] EXPR counter++ VAL [\old(counter)=0, A=33127, counter=11, counter++=10, r=262, R=183, u=367, v=21] [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=1, \old(counter)=0, counter=11] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=11] [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=33127, counter=11, r=262, R=183, u=367, v=21] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=33127, counter=11, R=183, r=262, u=367, v=21] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=33127, counter=11, R=183, r=241, u=367, v=23] [L34] EXPR counter++ VAL [\old(counter)=0, A=33127, counter=12, counter++=11, R=183, r=241, u=367, v=23] [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=1, \old(counter)=0, counter=12] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=12] [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=33127, counter=12, R=183, r=241, u=367, v=23] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=33127, counter=12, R=183, r=241, u=367, v=23] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=33127, counter=12, r=218, R=183, u=367, v=25] [L34] EXPR counter++ VAL [\old(counter)=0, A=33127, counter=13, counter++=12, r=218, R=183, u=367, v=25] [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=1, \old(counter)=0, counter=13] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=13] [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=33127, counter=13, R=183, r=218, u=367, v=25] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=33127, counter=13, R=183, r=218, u=367, v=25] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=33127, counter=13, R=183, r=193, u=367, v=27] [L34] EXPR counter++ VAL [\old(counter)=0, A=33127, counter=14, counter++=13, R=183, r=193, u=367, v=27] [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=1, \old(counter)=0, counter=14] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=14] [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=33127, counter=14, r=193, R=183, u=367, v=27] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=33127, counter=14, r=193, R=183, u=367, v=27] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=33127, counter=14, R=183, r=166, u=367, v=29] [L34] EXPR counter++ VAL [\old(counter)=0, A=33127, counter=15, counter++=14, R=183, r=166, u=367, v=29] [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=1, \old(counter)=0, counter=15] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=15] [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=33127, counter=15, r=166, R=183, u=367, v=29] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=33127, counter=15, R=183, r=166, u=367, v=29] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=33127, counter=15, R=183, r=137, u=367, v=31] [L34] EXPR counter++ VAL [\old(counter)=0, A=33127, counter=16, counter++=15, r=137, R=183, u=367, v=31] [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=1, \old(counter)=0, counter=16] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=16] [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=33127, counter=16, R=183, r=137, u=367, v=31] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=33127, counter=16, R=183, r=137, u=367, v=31] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=33127, counter=16, R=183, r=106, u=367, v=33] [L34] EXPR counter++ VAL [\old(counter)=0, A=33127, counter=17, counter++=16, r=106, R=183, u=367, v=33] [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=1, \old(counter)=0, counter=17] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=17] [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=33127, counter=17, r=106, R=183, u=367, v=33] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=33127, counter=17, R=183, r=106, u=367, v=33] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=33127, counter=17, r=73, R=183, u=367, v=35] [L34] EXPR counter++ VAL [\old(counter)=0, A=33127, counter=18, counter++=17, R=183, r=73, u=367, v=35] [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=1, \old(counter)=0, counter=18] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=18] [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=33127, counter=18, R=183, r=73, u=367, v=35] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=33127, counter=18, r=73, R=183, u=367, v=35] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=33127, counter=18, r=38, R=183, u=367, v=37] [L34] EXPR counter++ VAL [\old(counter)=0, A=33127, counter=19, counter++=18, R=183, r=38, u=367, v=37] [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=1, \old(counter)=0, counter=19] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=19] [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=33127, counter=19, R=183, r=38, u=367, v=37] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=33127, counter=19, r=38, R=183, u=367, v=37] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=33127, counter=19, r=1, R=183, u=367, v=39] [L34] EXPR counter++ VAL [\old(counter)=0, A=33127, counter=20, counter++=19, r=1, R=183, u=367, v=39] [L34] COND TRUE counter++<20 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=1, \old(counter)=0, counter=20] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=20] [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=33127, counter=20, R=183, r=1, u=367, v=39] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=33127, counter=20, R=183, r=1, u=367, v=39] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=33127, counter=20, r=-38, R=183, u=367, v=41] [L34] EXPR counter++ VAL [\old(counter)=0, A=33127, counter=21, counter++=20, r=-38, R=183, u=367, v=41] [L34] COND FALSE !(counter++<20) [L48] CALL __VERIFIER_assert(((long long) 4*A) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=0, \old(counter)=0, counter=21] [L12] COND TRUE !(cond) VAL [\old(cond)=0, \old(counter)=0, cond=0, counter=21] [L14] reach_error() VAL [\old(cond)=0, \old(counter)=0, cond=0, counter=21] - StatisticsResult: Ultimate Automizer benchmark data CFG has 6 procedures, 33 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 23.4s, OverallIterations: 8, TraceHistogramMax: 21, PathProgramHistogramMax: 4, EmptinessCheckTime: 0.0s, AutomataDifference: 10.1s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 329 SdHoareTripleChecker+Valid, 2.2s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 328 mSDsluCounter, 833 SdHoareTripleChecker+Invalid, 2.2s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 618 mSDsCounter, 103 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 318 IncrementalHoareTripleChecker+Invalid, 421 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 103 mSolverCounterUnsat, 215 mSDtfsCounter, 318 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 562 GetRequests, 472 SyntacticMatches, 2 SemanticMatches, 88 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 309 ImplicationChecksByTransitivity, 0.6s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=200occurred in iteration=7, InterpolantAutomatonStates: 93, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.2s AutomataMinimizationTime, 7 MinimizatonAttempts, 10 StatesRemovedByMinimization, 2 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.1s SsaConstructionTime, 2.3s SatisfiabilityAnalysisTime, 6.9s InterpolantComputationTime, 504 NumberOfCodeBlocks, 504 NumberOfCodeBlocksAsserted, 20 NumberOfCheckSat, 523 ConstructedInterpolants, 0 QuantifiedInterpolants, 1335 SizeOfPredicates, 28 NumberOfNonLiveVariables, 958 ConjunctsInSsa, 74 ConjunctsInUnsatCore, 11 InterpolantComputations, 3 PerfectInterpolantSequences, 310/1086 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be incorrect! [2022-04-14 16:16:56,984 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...