/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/egcd-ll_valuebound1.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-27 12:50:00,205 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-27 12:50:00,206 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-27 12:50:00,263 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-27 12:50:00,263 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-27 12:50:00,264 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-27 12:50:00,267 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-27 12:50:00,269 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-27 12:50:00,271 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-27 12:50:00,275 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-27 12:50:00,275 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-27 12:50:00,277 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-27 12:50:00,277 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-27 12:50:00,279 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-27 12:50:00,280 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-27 12:50:00,282 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-27 12:50:00,282 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-27 12:50:00,283 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-27 12:50:00,285 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-27 12:50:00,290 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-27 12:50:00,291 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-27 12:50:00,292 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-27 12:50:00,293 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-27 12:50:00,293 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-27 12:50:00,295 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-27 12:50:00,300 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-27 12:50:00,301 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-27 12:50:00,301 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-27 12:50:00,302 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-27 12:50:00,302 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-27 12:50:00,303 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-27 12:50:00,303 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-27 12:50:00,305 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-27 12:50:00,305 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-27 12:50:00,306 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-27 12:50:00,306 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-27 12:50:00,307 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-27 12:50:00,307 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-27 12:50:00,307 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-27 12:50:00,307 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-27 12:50:00,308 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-27 12:50:00,309 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-27 12:50:00,310 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf [2022-04-27 12:50:00,342 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-27 12:50:00,343 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-27 12:50:00,343 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-04-27 12:50:00,343 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-04-27 12:50:00,344 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-27 12:50:00,344 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-27 12:50:00,344 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-27 12:50:00,344 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-27 12:50:00,344 INFO L138 SettingsManager]: * Use SBE=true [2022-04-27 12:50:00,345 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-27 12:50:00,345 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-27 12:50:00,345 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-27 12:50:00,346 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-27 12:50:00,346 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-27 12:50:00,346 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-27 12:50:00,346 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-27 12:50:00,346 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-27 12:50:00,347 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-27 12:50:00,347 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-27 12:50:00,347 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-27 12:50:00,347 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-27 12:50:00,347 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-27 12:50:00,348 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-27 12:50:00,348 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-27 12:50:00,348 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 12:50:00,348 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-27 12:50:00,348 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-27 12:50:00,348 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-27 12:50:00,348 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-27 12:50:00,349 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-27 12:50:00,349 INFO L138 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2022-04-27 12:50:00,349 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-04-27 12:50:00,349 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-27 12:50:00,349 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-27 12:50:00,523 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-27 12:50:00,546 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-27 12:50:00,548 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-27 12:50:00,549 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-27 12:50:00,550 INFO L275 PluginConnector]: CDTParser initialized [2022-04-27 12:50:00,551 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/egcd-ll_valuebound1.c [2022-04-27 12:50:00,605 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e8fe7fbd1/9758c5022ebf43df959d61d6ee3cba3f/FLAGf71b29496 [2022-04-27 12:50:01,004 INFO L306 CDTParser]: Found 1 translation units. [2022-04-27 12:50:01,005 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd-ll_valuebound1.c [2022-04-27 12:50:01,011 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e8fe7fbd1/9758c5022ebf43df959d61d6ee3cba3f/FLAGf71b29496 [2022-04-27 12:50:01,024 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e8fe7fbd1/9758c5022ebf43df959d61d6ee3cba3f [2022-04-27 12:50:01,027 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-27 12:50:01,029 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-27 12:50:01,031 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-27 12:50:01,031 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-27 12:50:01,034 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-27 12:50:01,035 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 12:50:01" (1/1) ... [2022-04-27 12:50:01,036 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@33fb7c98 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:50:01, skipping insertion in model container [2022-04-27 12:50:01,036 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 12:50:01" (1/1) ... [2022-04-27 12:50:01,041 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-27 12:50:01,056 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-27 12:50:01,223 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/egcd-ll_valuebound1.c[489,502] [2022-04-27 12:50:01,240 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 12:50:01,247 INFO L203 MainTranslator]: Completed pre-run [2022-04-27 12:50:01,257 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/egcd-ll_valuebound1.c[489,502] [2022-04-27 12:50:01,265 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 12:50:01,275 INFO L208 MainTranslator]: Completed translation [2022-04-27 12:50:01,276 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:50:01 WrapperNode [2022-04-27 12:50:01,276 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-27 12:50:01,276 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-27 12:50:01,277 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-27 12:50:01,277 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-27 12:50:01,285 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:50:01" (1/1) ... [2022-04-27 12:50:01,285 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:50:01" (1/1) ... [2022-04-27 12:50:01,290 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:50:01" (1/1) ... [2022-04-27 12:50:01,290 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:50:01" (1/1) ... [2022-04-27 12:50:01,295 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:50:01" (1/1) ... [2022-04-27 12:50:01,299 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:50:01" (1/1) ... [2022-04-27 12:50:01,300 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:50:01" (1/1) ... [2022-04-27 12:50:01,301 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-27 12:50:01,302 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-27 12:50:01,302 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-27 12:50:01,302 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-27 12:50:01,303 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:50:01" (1/1) ... [2022-04-27 12:50:01,315 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 12:50:01,324 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:50:01,333 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-27 12:50:01,334 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-27 12:50:01,366 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-27 12:50:01,366 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-27 12:50:01,367 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-27 12:50:01,367 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-27 12:50:01,367 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-27 12:50:01,367 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-27 12:50:01,367 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-27 12:50:01,367 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-27 12:50:01,367 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-27 12:50:01,367 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-27 12:50:01,368 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-27 12:50:01,368 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-27 12:50:01,368 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-27 12:50:01,368 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-27 12:50:01,368 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-27 12:50:01,368 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-27 12:50:01,368 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-27 12:50:01,368 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-27 12:50:01,368 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-27 12:50:01,369 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-27 12:50:01,412 INFO L234 CfgBuilder]: Building ICFG [2022-04-27 12:50:01,413 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-27 12:50:01,607 INFO L275 CfgBuilder]: Performing block encoding [2022-04-27 12:50:01,614 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-27 12:50:01,615 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-27 12:50:01,616 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 12:50:01 BoogieIcfgContainer [2022-04-27 12:50:01,616 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-27 12:50:01,618 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-27 12:50:01,618 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-27 12:50:01,620 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-27 12:50:01,621 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.04 12:50:01" (1/3) ... [2022-04-27 12:50:01,621 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1b580c8a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 12:50:01, skipping insertion in model container [2022-04-27 12:50:01,621 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:50:01" (2/3) ... [2022-04-27 12:50:01,622 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1b580c8a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 12:50:01, skipping insertion in model container [2022-04-27 12:50:01,622 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 12:50:01" (3/3) ... [2022-04-27 12:50:01,623 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd-ll_valuebound1.c [2022-04-27 12:50:01,634 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-27 12:50:01,634 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-27 12:50:01,671 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-27 12:50:01,677 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@537ce88a, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@5183d3f7 [2022-04-27 12:50:01,677 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-27 12:50:01,688 INFO L276 IsEmpty]: Start isEmpty. Operand has 37 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 19 states have internal predecessors, (25), 13 states have call successors, (13), 4 states have call predecessors, (13), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-27 12:50:01,694 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-27 12:50:01,694 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:50:01,695 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:50:01,695 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:50:01,703 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:50:01,703 INFO L85 PathProgramCache]: Analyzing trace with hash 870870740, now seen corresponding path program 1 times [2022-04-27 12:50:01,711 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:50:01,713 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1261217378] [2022-04-27 12:50:01,713 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:50:01,714 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:50:01,852 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:50:01,923 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 12:50:01,937 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:50:01,954 INFO L290 TraceCheckUtils]: 0: Hoare triple {61#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3); {40#true} is VALID [2022-04-27 12:50:01,954 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume true; {40#true} is VALID [2022-04-27 12:50:01,955 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {40#true} {40#true} #88#return; {40#true} is VALID [2022-04-27 12:50:01,956 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-27 12:50:01,962 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:50:01,986 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-27 12:50:01,987 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-27 12:50:01,987 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-27 12:50:01,988 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {40#true} #66#return; {41#false} is VALID [2022-04-27 12:50:01,988 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-27 12:50:01,990 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:50:01,998 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-27 12:50:01,999 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-27 12:50:01,999 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-27 12:50:01,999 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {41#false} #68#return; {41#false} is VALID [2022-04-27 12:50:01,999 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-27 12:50:02,001 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:50:02,013 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-27 12:50:02,014 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-27 12:50:02,014 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-27 12:50:02,014 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {41#false} #70#return; {41#false} is VALID [2022-04-27 12:50:02,014 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-27 12:50:02,016 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:50:02,029 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-27 12:50:02,031 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-27 12:50:02,031 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-27 12:50:02,032 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {41#false} #72#return; {41#false} is VALID [2022-04-27 12:50:02,033 INFO L272 TraceCheckUtils]: 0: Hoare triple {40#true} call ULTIMATE.init(); {61#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 12:50:02,033 INFO L290 TraceCheckUtils]: 1: Hoare triple {61#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3); {40#true} is VALID [2022-04-27 12:50:02,034 INFO L290 TraceCheckUtils]: 2: Hoare triple {40#true} assume true; {40#true} is VALID [2022-04-27 12:50:02,034 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40#true} {40#true} #88#return; {40#true} is VALID [2022-04-27 12:50:02,034 INFO L272 TraceCheckUtils]: 4: Hoare triple {40#true} call #t~ret6 := main(); {40#true} is VALID [2022-04-27 12:50:02,034 INFO L290 TraceCheckUtils]: 5: Hoare triple {40#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {40#true} is VALID [2022-04-27 12:50:02,034 INFO L272 TraceCheckUtils]: 6: Hoare triple {40#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {40#true} is VALID [2022-04-27 12:50:02,035 INFO L290 TraceCheckUtils]: 7: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-27 12:50:02,036 INFO L290 TraceCheckUtils]: 8: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-27 12:50:02,036 INFO L290 TraceCheckUtils]: 9: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-27 12:50:02,036 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {41#false} {40#true} #66#return; {41#false} is VALID [2022-04-27 12:50:02,037 INFO L290 TraceCheckUtils]: 11: Hoare triple {41#false} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {41#false} is VALID [2022-04-27 12:50:02,037 INFO L272 TraceCheckUtils]: 12: Hoare triple {41#false} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {40#true} is VALID [2022-04-27 12:50:02,037 INFO L290 TraceCheckUtils]: 13: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-27 12:50:02,038 INFO L290 TraceCheckUtils]: 14: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-27 12:50:02,038 INFO L290 TraceCheckUtils]: 15: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-27 12:50:02,038 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {41#false} {41#false} #68#return; {41#false} is VALID [2022-04-27 12:50:02,038 INFO L272 TraceCheckUtils]: 17: Hoare triple {41#false} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {40#true} is VALID [2022-04-27 12:50:02,039 INFO L290 TraceCheckUtils]: 18: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-27 12:50:02,040 INFO L290 TraceCheckUtils]: 19: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-27 12:50:02,040 INFO L290 TraceCheckUtils]: 20: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-27 12:50:02,040 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {41#false} {41#false} #70#return; {41#false} is VALID [2022-04-27 12:50:02,041 INFO L272 TraceCheckUtils]: 22: Hoare triple {41#false} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {40#true} is VALID [2022-04-27 12:50:02,041 INFO L290 TraceCheckUtils]: 23: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-27 12:50:02,041 INFO L290 TraceCheckUtils]: 24: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-27 12:50:02,041 INFO L290 TraceCheckUtils]: 25: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-27 12:50:02,042 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {41#false} {41#false} #72#return; {41#false} is VALID [2022-04-27 12:50:02,042 INFO L290 TraceCheckUtils]: 27: Hoare triple {41#false} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {41#false} is VALID [2022-04-27 12:50:02,042 INFO L290 TraceCheckUtils]: 28: Hoare triple {41#false} assume false; {41#false} is VALID [2022-04-27 12:50:02,045 INFO L272 TraceCheckUtils]: 29: Hoare triple {41#false} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {41#false} is VALID [2022-04-27 12:50:02,045 INFO L290 TraceCheckUtils]: 30: Hoare triple {41#false} ~cond := #in~cond; {41#false} is VALID [2022-04-27 12:50:02,045 INFO L290 TraceCheckUtils]: 31: Hoare triple {41#false} assume 0 == ~cond; {41#false} is VALID [2022-04-27 12:50:02,046 INFO L290 TraceCheckUtils]: 32: Hoare triple {41#false} assume !false; {41#false} is VALID [2022-04-27 12:50:02,046 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-27 12:50:02,047 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:50:02,047 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1261217378] [2022-04-27 12:50:02,048 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1261217378] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:50:02,048 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:50:02,049 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-27 12:50:02,050 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1883798519] [2022-04-27 12:50:02,052 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:50:02,057 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-27 12:50:02,059 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:50:02,061 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:50:02,100 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:50:02,101 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-27 12:50:02,101 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:50:02,123 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-27 12:50:02,126 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-27 12:50:02,129 INFO L87 Difference]: Start difference. First operand has 37 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 19 states have internal predecessors, (25), 13 states have call successors, (13), 4 states have call predecessors, (13), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:50:02,314 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:50:02,315 INFO L93 Difference]: Finished difference Result 67 states and 105 transitions. [2022-04-27 12:50:02,315 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-27 12:50:02,315 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-27 12:50:02,315 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:50:02,316 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:50:02,325 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 105 transitions. [2022-04-27 12:50:02,325 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:50:02,331 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 105 transitions. [2022-04-27 12:50:02,332 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 105 transitions. [2022-04-27 12:50:02,521 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 105 edges. 105 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:50:02,538 INFO L225 Difference]: With dead ends: 67 [2022-04-27 12:50:02,538 INFO L226 Difference]: Without dead ends: 32 [2022-04-27 12:50:02,541 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 16 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-27 12:50:02,544 INFO L413 NwaCegarLoop]: 36 mSDtfsCounter, 18 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 13 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 29 SdHoareTripleChecker+Valid, 39 SdHoareTripleChecker+Invalid, 25 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 13 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 12:50:02,545 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [29 Valid, 39 Invalid, 25 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [12 Valid, 13 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 12:50:02,558 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2022-04-27 12:50:02,574 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 32. [2022-04-27 12:50:02,574 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:50:02,575 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand has 32 states, 15 states have (on average 1.2) internal successors, (18), 16 states have internal predecessors, (18), 13 states have call successors, (13), 4 states have call predecessors, (13), 3 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-27 12:50:02,576 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand has 32 states, 15 states have (on average 1.2) internal successors, (18), 16 states have internal predecessors, (18), 13 states have call successors, (13), 4 states have call predecessors, (13), 3 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-27 12:50:02,576 INFO L87 Difference]: Start difference. First operand 32 states. Second operand has 32 states, 15 states have (on average 1.2) internal successors, (18), 16 states have internal predecessors, (18), 13 states have call successors, (13), 4 states have call predecessors, (13), 3 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-27 12:50:02,580 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:50:02,581 INFO L93 Difference]: Finished difference Result 32 states and 42 transitions. [2022-04-27 12:50:02,581 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 42 transitions. [2022-04-27 12:50:02,582 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:50:02,582 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:50:02,582 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 15 states have (on average 1.2) internal successors, (18), 16 states have internal predecessors, (18), 13 states have call successors, (13), 4 states have call predecessors, (13), 3 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 32 states. [2022-04-27 12:50:02,583 INFO L87 Difference]: Start difference. First operand has 32 states, 15 states have (on average 1.2) internal successors, (18), 16 states have internal predecessors, (18), 13 states have call successors, (13), 4 states have call predecessors, (13), 3 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 32 states. [2022-04-27 12:50:02,586 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:50:02,586 INFO L93 Difference]: Finished difference Result 32 states and 42 transitions. [2022-04-27 12:50:02,586 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 42 transitions. [2022-04-27 12:50:02,587 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:50:02,587 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:50:02,588 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:50:02,588 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:50:02,588 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 15 states have (on average 1.2) internal successors, (18), 16 states have internal predecessors, (18), 13 states have call successors, (13), 4 states have call predecessors, (13), 3 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-27 12:50:02,591 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 42 transitions. [2022-04-27 12:50:02,592 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 42 transitions. Word has length 33 [2022-04-27 12:50:02,592 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:50:02,593 INFO L495 AbstractCegarLoop]: Abstraction has 32 states and 42 transitions. [2022-04-27 12:50:02,593 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:50:02,593 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 42 transitions. [2022-04-27 12:50:02,594 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-27 12:50:02,594 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:50:02,594 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:50:02,594 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-27 12:50:02,595 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:50:02,595 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:50:02,595 INFO L85 PathProgramCache]: Analyzing trace with hash -1006914976, now seen corresponding path program 1 times [2022-04-27 12:50:02,596 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:50:02,596 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1047517866] [2022-04-27 12:50:02,596 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:50:02,596 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:50:02,619 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:50:02,620 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1846844811] [2022-04-27 12:50:02,620 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:50:02,620 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:50:02,620 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:50:02,622 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:50:02,623 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-27 12:50:02,674 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:50:02,676 INFO L263 TraceCheckSpWp]: Trace formula consists of 105 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 12:50:02,687 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:50:02,692 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:50:05,840 INFO L272 TraceCheckUtils]: 0: Hoare triple {276#true} call ULTIMATE.init(); {276#true} is VALID [2022-04-27 12:50:05,840 INFO L290 TraceCheckUtils]: 1: Hoare triple {276#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(10, 2);call #Ultimate.allocInit(12, 3); {276#true} is VALID [2022-04-27 12:50:05,840 INFO L290 TraceCheckUtils]: 2: Hoare triple {276#true} assume true; {276#true} is VALID [2022-04-27 12:50:05,841 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {276#true} {276#true} #88#return; {276#true} is VALID [2022-04-27 12:50:05,841 INFO L272 TraceCheckUtils]: 4: Hoare triple {276#true} call #t~ret6 := main(); {276#true} is VALID [2022-04-27 12:50:05,841 INFO L290 TraceCheckUtils]: 5: Hoare triple {276#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {276#true} is VALID [2022-04-27 12:50:05,841 INFO L272 TraceCheckUtils]: 6: Hoare triple {276#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {276#true} is VALID [2022-04-27 12:50:05,841 INFO L290 TraceCheckUtils]: 7: Hoare triple {276#true} ~cond := #in~cond; {276#true} is VALID [2022-04-27 12:50:05,842 INFO L290 TraceCheckUtils]: 8: Hoare triple {276#true} assume !(0 == ~cond); {276#true} is VALID [2022-04-27 12:50:05,842 INFO L290 TraceCheckUtils]: 9: Hoare triple {276#true} assume true; {276#true} is VALID [2022-04-27 12:50:05,842 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {276#true} {276#true} #66#return; {276#true} is VALID [2022-04-27 12:50:05,842 INFO L290 TraceCheckUtils]: 11: Hoare triple {276#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {276#true} is VALID [2022-04-27 12:50:05,842 INFO L272 TraceCheckUtils]: 12: Hoare triple {276#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {276#true} is VALID [2022-04-27 12:50:05,842 INFO L290 TraceCheckUtils]: 13: Hoare triple {276#true} ~cond := #in~cond; {276#true} is VALID [2022-04-27 12:50:05,843 INFO L290 TraceCheckUtils]: 14: Hoare triple {276#true} assume !(0 == ~cond); {276#true} is VALID [2022-04-27 12:50:05,843 INFO L290 TraceCheckUtils]: 15: Hoare triple {276#true} assume true; {276#true} is VALID [2022-04-27 12:50:05,843 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {276#true} {276#true} #68#return; {276#true} is VALID [2022-04-27 12:50:05,843 INFO L272 TraceCheckUtils]: 17: Hoare triple {276#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {276#true} is VALID [2022-04-27 12:50:05,843 INFO L290 TraceCheckUtils]: 18: Hoare triple {276#true} ~cond := #in~cond; {276#true} is VALID [2022-04-27 12:50:05,843 INFO L290 TraceCheckUtils]: 19: Hoare triple {276#true} assume !(0 == ~cond); {276#true} is VALID [2022-04-27 12:50:05,844 INFO L290 TraceCheckUtils]: 20: Hoare triple {276#true} assume true; {276#true} is VALID [2022-04-27 12:50:05,844 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {276#true} {276#true} #70#return; {276#true} is VALID [2022-04-27 12:50:05,844 INFO L272 TraceCheckUtils]: 22: Hoare triple {276#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {276#true} is VALID [2022-04-27 12:50:05,844 INFO L290 TraceCheckUtils]: 23: Hoare triple {276#true} ~cond := #in~cond; {276#true} is VALID [2022-04-27 12:50:05,844 INFO L290 TraceCheckUtils]: 24: Hoare triple {276#true} assume !(0 == ~cond); {276#true} is VALID [2022-04-27 12:50:05,844 INFO L290 TraceCheckUtils]: 25: Hoare triple {276#true} assume true; {276#true} is VALID [2022-04-27 12:50:05,845 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {276#true} {276#true} #72#return; {276#true} is VALID [2022-04-27 12:50:05,845 INFO L290 TraceCheckUtils]: 27: Hoare triple {276#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {362#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-27 12:50:05,846 INFO L290 TraceCheckUtils]: 28: Hoare triple {362#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} assume !false; {362#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-27 12:50:05,847 INFO L272 TraceCheckUtils]: 29: Hoare triple {362#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {369#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:50:05,847 INFO L290 TraceCheckUtils]: 30: Hoare triple {369#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {373#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:50:05,848 INFO L290 TraceCheckUtils]: 31: Hoare triple {373#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {277#false} is VALID [2022-04-27 12:50:05,848 INFO L290 TraceCheckUtils]: 32: Hoare triple {277#false} assume !false; {277#false} is VALID [2022-04-27 12:50:05,848 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-27 12:50:05,848 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 12:50:05,849 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:50:05,849 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1047517866] [2022-04-27 12:50:05,849 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:50:05,849 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1846844811] [2022-04-27 12:50:05,849 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1846844811] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:50:05,849 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:50:05,849 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 12:50:05,850 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [37687135] [2022-04-27 12:50:05,850 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:50:05,851 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, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 33 [2022-04-27 12:50:05,851 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:50:05,851 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, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-27 12:50:05,872 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:50:05,872 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 12:50:05,872 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:50:05,873 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 12:50:05,873 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 12:50:05,873 INFO L87 Difference]: Start difference. First operand 32 states and 42 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, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-27 12:50:06,080 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:50:06,080 INFO L93 Difference]: Finished difference Result 48 states and 65 transitions. [2022-04-27 12:50:06,080 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 12:50:06,081 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, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 33 [2022-04-27 12:50:06,081 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:50:06,081 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, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-27 12:50:06,089 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-27 12:50:06,091 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, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-27 12:50:06,093 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-27 12:50:06,093 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-27 12:50:06,159 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:50:06,161 INFO L225 Difference]: With dead ends: 48 [2022-04-27 12:50:06,161 INFO L226 Difference]: Without dead ends: 46 [2022-04-27 12:50:06,162 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 33 GetRequests, 29 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-27 12:50:06,163 INFO L413 NwaCegarLoop]: 42 mSDtfsCounter, 7 mSDsluCounter, 101 mSDsCounter, 0 mSdLazyCounter, 42 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 143 SdHoareTripleChecker+Invalid, 44 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 42 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 12:50:06,163 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [13 Valid, 143 Invalid, 44 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 42 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 12:50:06,164 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 46 states. [2022-04-27 12:50:06,173 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 46 to 45. [2022-04-27 12:50:06,173 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:50:06,174 INFO L82 GeneralOperation]: Start isEquivalent. First operand 46 states. Second operand has 45 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 23 states have internal predecessors, (26), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-27 12:50:06,175 INFO L74 IsIncluded]: Start isIncluded. First operand 46 states. Second operand has 45 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 23 states have internal predecessors, (26), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-27 12:50:06,176 INFO L87 Difference]: Start difference. First operand 46 states. Second operand has 45 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 23 states have internal predecessors, (26), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-27 12:50:06,186 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:50:06,186 INFO L93 Difference]: Finished difference Result 46 states and 63 transitions. [2022-04-27 12:50:06,186 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 63 transitions. [2022-04-27 12:50:06,189 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:50:06,189 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:50:06,189 INFO L74 IsIncluded]: Start isIncluded. First operand has 45 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 23 states have internal predecessors, (26), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) Second operand 46 states. [2022-04-27 12:50:06,190 INFO L87 Difference]: Start difference. First operand has 45 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 23 states have internal predecessors, (26), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) Second operand 46 states. [2022-04-27 12:50:06,196 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:50:06,196 INFO L93 Difference]: Finished difference Result 46 states and 63 transitions. [2022-04-27 12:50:06,196 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 63 transitions. [2022-04-27 12:50:06,197 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:50:06,197 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:50:06,197 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:50:06,197 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:50:06,197 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 45 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 23 states have internal predecessors, (26), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-27 12:50:06,200 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 45 states to 45 states and 62 transitions. [2022-04-27 12:50:06,200 INFO L78 Accepts]: Start accepts. Automaton has 45 states and 62 transitions. Word has length 33 [2022-04-27 12:50:06,200 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:50:06,200 INFO L495 AbstractCegarLoop]: Abstraction has 45 states and 62 transitions. [2022-04-27 12:50:06,200 INFO L496 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, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-27 12:50:06,201 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 62 transitions. [2022-04-27 12:50:06,201 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-04-27 12:50:06,201 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:50:06,202 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:50:06,232 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-27 12:50:06,428 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:50:06,429 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:50:06,429 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:50:06,429 INFO L85 PathProgramCache]: Analyzing trace with hash -124657161, now seen corresponding path program 1 times [2022-04-27 12:50:06,429 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:50:06,430 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [133254596] [2022-04-27 12:50:06,430 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:50:06,430 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:50:06,449 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:50:06,450 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1727171460] [2022-04-27 12:50:06,450 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:50:06,450 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:50:06,450 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:50:06,451 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:50:06,469 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-27 12:50:06,510 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:50:06,511 INFO L263 TraceCheckSpWp]: Trace formula consists of 114 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-27 12:50:06,528 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:50:06,530 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:50:09,295 INFO L272 TraceCheckUtils]: 0: Hoare triple {619#true} call ULTIMATE.init(); {619#true} is VALID [2022-04-27 12:50:09,295 INFO L290 TraceCheckUtils]: 1: Hoare triple {619#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(10, 2);call #Ultimate.allocInit(12, 3); {619#true} is VALID [2022-04-27 12:50:09,296 INFO L290 TraceCheckUtils]: 2: Hoare triple {619#true} assume true; {619#true} is VALID [2022-04-27 12:50:09,296 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {619#true} {619#true} #88#return; {619#true} is VALID [2022-04-27 12:50:09,296 INFO L272 TraceCheckUtils]: 4: Hoare triple {619#true} call #t~ret6 := main(); {619#true} is VALID [2022-04-27 12:50:09,296 INFO L290 TraceCheckUtils]: 5: Hoare triple {619#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {619#true} is VALID [2022-04-27 12:50:09,296 INFO L272 TraceCheckUtils]: 6: Hoare triple {619#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {619#true} is VALID [2022-04-27 12:50:09,299 INFO L290 TraceCheckUtils]: 7: Hoare triple {619#true} ~cond := #in~cond; {645#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 12:50:09,300 INFO L290 TraceCheckUtils]: 8: Hoare triple {645#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {649#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:50:09,300 INFO L290 TraceCheckUtils]: 9: Hoare triple {649#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {649#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:50:09,301 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {649#(not (= |assume_abort_if_not_#in~cond| 0))} {619#true} #66#return; {656#(and (<= 0 main_~x~0) (<= main_~x~0 1))} is VALID [2022-04-27 12:50:09,302 INFO L290 TraceCheckUtils]: 11: Hoare triple {656#(and (<= 0 main_~x~0) (<= main_~x~0 1))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {656#(and (<= 0 main_~x~0) (<= main_~x~0 1))} is VALID [2022-04-27 12:50:09,302 INFO L272 TraceCheckUtils]: 12: Hoare triple {656#(and (<= 0 main_~x~0) (<= main_~x~0 1))} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {619#true} is VALID [2022-04-27 12:50:09,302 INFO L290 TraceCheckUtils]: 13: Hoare triple {619#true} ~cond := #in~cond; {619#true} is VALID [2022-04-27 12:50:09,302 INFO L290 TraceCheckUtils]: 14: Hoare triple {619#true} assume !(0 == ~cond); {619#true} is VALID [2022-04-27 12:50:09,302 INFO L290 TraceCheckUtils]: 15: Hoare triple {619#true} assume true; {619#true} is VALID [2022-04-27 12:50:09,303 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {619#true} {656#(and (<= 0 main_~x~0) (<= main_~x~0 1))} #68#return; {656#(and (<= 0 main_~x~0) (<= main_~x~0 1))} is VALID [2022-04-27 12:50:09,303 INFO L272 TraceCheckUtils]: 17: Hoare triple {656#(and (<= 0 main_~x~0) (<= main_~x~0 1))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {619#true} is VALID [2022-04-27 12:50:09,304 INFO L290 TraceCheckUtils]: 18: Hoare triple {619#true} ~cond := #in~cond; {645#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 12:50:09,304 INFO L290 TraceCheckUtils]: 19: Hoare triple {645#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {649#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:50:09,305 INFO L290 TraceCheckUtils]: 20: Hoare triple {649#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {649#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:50:09,305 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {649#(not (= |assume_abort_if_not_#in~cond| 0))} {656#(and (<= 0 main_~x~0) (<= main_~x~0 1))} #70#return; {690#(and (<= 1 main_~x~0) (<= main_~x~0 1))} is VALID [2022-04-27 12:50:09,305 INFO L272 TraceCheckUtils]: 22: Hoare triple {690#(and (<= 1 main_~x~0) (<= main_~x~0 1))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {619#true} is VALID [2022-04-27 12:50:09,306 INFO L290 TraceCheckUtils]: 23: Hoare triple {619#true} ~cond := #in~cond; {619#true} is VALID [2022-04-27 12:50:09,306 INFO L290 TraceCheckUtils]: 24: Hoare triple {619#true} assume !(0 == ~cond); {619#true} is VALID [2022-04-27 12:50:09,306 INFO L290 TraceCheckUtils]: 25: Hoare triple {619#true} assume true; {619#true} is VALID [2022-04-27 12:50:09,306 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {619#true} {690#(and (<= 1 main_~x~0) (<= main_~x~0 1))} #72#return; {690#(and (<= 1 main_~x~0) (<= main_~x~0 1))} is VALID [2022-04-27 12:50:09,307 INFO L290 TraceCheckUtils]: 27: Hoare triple {690#(and (<= 1 main_~x~0) (<= main_~x~0 1))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {709#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~x~0 1) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:50:09,308 INFO L290 TraceCheckUtils]: 28: Hoare triple {709#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~x~0 1) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {709#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~x~0 1) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:50:09,308 INFO L272 TraceCheckUtils]: 29: Hoare triple {709#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~x~0 1) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {619#true} is VALID [2022-04-27 12:50:09,308 INFO L290 TraceCheckUtils]: 30: Hoare triple {619#true} ~cond := #in~cond; {619#true} is VALID [2022-04-27 12:50:09,308 INFO L290 TraceCheckUtils]: 31: Hoare triple {619#true} assume !(0 == ~cond); {619#true} is VALID [2022-04-27 12:50:09,308 INFO L290 TraceCheckUtils]: 32: Hoare triple {619#true} assume true; {619#true} is VALID [2022-04-27 12:50:09,309 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {619#true} {709#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~x~0 1) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #74#return; {709#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~x~0 1) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:50:09,310 INFO L272 TraceCheckUtils]: 34: Hoare triple {709#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~x~0 1) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {731#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:50:09,311 INFO L290 TraceCheckUtils]: 35: Hoare triple {731#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {735#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:50:09,311 INFO L290 TraceCheckUtils]: 36: Hoare triple {735#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {620#false} is VALID [2022-04-27 12:50:09,311 INFO L290 TraceCheckUtils]: 37: Hoare triple {620#false} assume !false; {620#false} is VALID [2022-04-27 12:50:09,312 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 5 proven. 9 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-27 12:50:09,312 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:50:43,898 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:50:43,898 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [133254596] [2022-04-27 12:50:43,898 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:50:43,898 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1727171460] [2022-04-27 12:50:43,898 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1727171460] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 12:50:43,898 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-27 12:50:43,899 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9] total 9 [2022-04-27 12:50:43,899 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2072169474] [2022-04-27 12:50:43,899 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-27 12:50:43,900 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.0) internal successors, (18), 7 states have internal predecessors, (18), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) Word has length 38 [2022-04-27 12:50:43,901 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:50:43,901 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.0) internal successors, (18), 7 states have internal predecessors, (18), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 12:50:43,932 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:50:43,933 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-27 12:50:43,933 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:50:43,933 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-27 12:50:43,934 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2022-04-27 12:50:43,934 INFO L87 Difference]: Start difference. First operand 45 states and 62 transitions. Second operand has 9 states, 9 states have (on average 2.0) internal successors, (18), 7 states have internal predecessors, (18), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 12:50:44,449 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:50:44,449 INFO L93 Difference]: Finished difference Result 52 states and 68 transitions. [2022-04-27 12:50:44,449 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-27 12:50:44,449 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.0) internal successors, (18), 7 states have internal predecessors, (18), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) Word has length 38 [2022-04-27 12:50:44,450 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:50:44,450 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.0) internal successors, (18), 7 states have internal predecessors, (18), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 12:50:44,452 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 65 transitions. [2022-04-27 12:50:44,452 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.0) internal successors, (18), 7 states have internal predecessors, (18), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 12:50:44,454 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 65 transitions. [2022-04-27 12:50:44,454 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 65 transitions. [2022-04-27 12:50:44,523 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:50:44,525 INFO L225 Difference]: With dead ends: 52 [2022-04-27 12:50:44,525 INFO L226 Difference]: Without dead ends: 50 [2022-04-27 12:50:44,525 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 44 GetRequests, 33 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=29, Invalid=103, Unknown=0, NotChecked=0, Total=132 [2022-04-27 12:50:44,528 INFO L413 NwaCegarLoop]: 38 mSDtfsCounter, 17 mSDsluCounter, 152 mSDsCounter, 0 mSdLazyCounter, 157 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 29 SdHoareTripleChecker+Valid, 190 SdHoareTripleChecker+Invalid, 160 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 157 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 12:50:44,528 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [29 Valid, 190 Invalid, 160 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 157 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 12:50:44,529 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2022-04-27 12:50:44,564 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 49. [2022-04-27 12:50:44,564 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:50:44,565 INFO L82 GeneralOperation]: Start isEquivalent. First operand 50 states. Second operand has 49 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 19 states have call successors, (19), 6 states have call predecessors, (19), 5 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-27 12:50:44,565 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand has 49 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 19 states have call successors, (19), 6 states have call predecessors, (19), 5 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-27 12:50:44,566 INFO L87 Difference]: Start difference. First operand 50 states. Second operand has 49 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 19 states have call successors, (19), 6 states have call predecessors, (19), 5 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-27 12:50:44,572 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:50:44,573 INFO L93 Difference]: Finished difference Result 50 states and 66 transitions. [2022-04-27 12:50:44,573 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 66 transitions. [2022-04-27 12:50:44,574 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:50:44,574 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:50:44,575 INFO L74 IsIncluded]: Start isIncluded. First operand has 49 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 19 states have call successors, (19), 6 states have call predecessors, (19), 5 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) Second operand 50 states. [2022-04-27 12:50:44,575 INFO L87 Difference]: Start difference. First operand has 49 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 19 states have call successors, (19), 6 states have call predecessors, (19), 5 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) Second operand 50 states. [2022-04-27 12:50:44,578 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:50:44,578 INFO L93 Difference]: Finished difference Result 50 states and 66 transitions. [2022-04-27 12:50:44,578 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 66 transitions. [2022-04-27 12:50:44,578 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:50:44,579 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:50:44,579 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:50:44,579 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:50:44,579 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 49 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 19 states have call successors, (19), 6 states have call predecessors, (19), 5 states have return successors, (17), 16 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-27 12:50:44,582 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 49 states to 49 states and 65 transitions. [2022-04-27 12:50:44,582 INFO L78 Accepts]: Start accepts. Automaton has 49 states and 65 transitions. Word has length 38 [2022-04-27 12:50:44,582 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:50:44,582 INFO L495 AbstractCegarLoop]: Abstraction has 49 states and 65 transitions. [2022-04-27 12:50:44,582 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.0) internal successors, (18), 7 states have internal predecessors, (18), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 4 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-27 12:50:44,583 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 65 transitions. [2022-04-27 12:50:44,583 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-27 12:50:44,583 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:50:44,583 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:50:44,604 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-27 12:50:44,799 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-27 12:50:44,800 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:50:44,800 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:50:44,800 INFO L85 PathProgramCache]: Analyzing trace with hash 1732898944, now seen corresponding path program 1 times [2022-04-27 12:50:44,800 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:50:44,802 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [226634045] [2022-04-27 12:50:44,802 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:50:44,802 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:50:44,834 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:50:44,835 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1854834176] [2022-04-27 12:50:44,835 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:50:44,835 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:50:44,835 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:50:44,838 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:50:44,859 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-27 12:50:44,898 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:50:44,899 INFO L263 TraceCheckSpWp]: Trace formula consists of 123 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-27 12:50:44,917 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:50:44,918 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:50:46,302 INFO L272 TraceCheckUtils]: 0: Hoare triple {1017#true} call ULTIMATE.init(); {1017#true} is VALID [2022-04-27 12:50:46,302 INFO L290 TraceCheckUtils]: 1: Hoare triple {1017#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(10, 2);call #Ultimate.allocInit(12, 3); {1017#true} is VALID [2022-04-27 12:50:46,303 INFO L290 TraceCheckUtils]: 2: Hoare triple {1017#true} assume true; {1017#true} is VALID [2022-04-27 12:50:46,303 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1017#true} {1017#true} #88#return; {1017#true} is VALID [2022-04-27 12:50:46,303 INFO L272 TraceCheckUtils]: 4: Hoare triple {1017#true} call #t~ret6 := main(); {1017#true} is VALID [2022-04-27 12:50:46,303 INFO L290 TraceCheckUtils]: 5: Hoare triple {1017#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {1017#true} is VALID [2022-04-27 12:50:46,303 INFO L272 TraceCheckUtils]: 6: Hoare triple {1017#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {1017#true} is VALID [2022-04-27 12:50:46,303 INFO L290 TraceCheckUtils]: 7: Hoare triple {1017#true} ~cond := #in~cond; {1017#true} is VALID [2022-04-27 12:50:46,304 INFO L290 TraceCheckUtils]: 8: Hoare triple {1017#true} assume !(0 == ~cond); {1017#true} is VALID [2022-04-27 12:50:46,304 INFO L290 TraceCheckUtils]: 9: Hoare triple {1017#true} assume true; {1017#true} is VALID [2022-04-27 12:50:46,304 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1017#true} {1017#true} #66#return; {1017#true} is VALID [2022-04-27 12:50:46,304 INFO L290 TraceCheckUtils]: 11: Hoare triple {1017#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1017#true} is VALID [2022-04-27 12:50:46,304 INFO L272 TraceCheckUtils]: 12: Hoare triple {1017#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {1017#true} is VALID [2022-04-27 12:50:46,316 INFO L290 TraceCheckUtils]: 13: Hoare triple {1017#true} ~cond := #in~cond; {1061#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 12:50:46,316 INFO L290 TraceCheckUtils]: 14: Hoare triple {1061#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1065#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:50:46,317 INFO L290 TraceCheckUtils]: 15: Hoare triple {1065#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1065#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:50:46,317 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1065#(not (= |assume_abort_if_not_#in~cond| 0))} {1017#true} #68#return; {1072#(and (<= 0 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-27 12:50:46,318 INFO L272 TraceCheckUtils]: 17: Hoare triple {1072#(and (<= 0 main_~y~0) (<= main_~y~0 1))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1017#true} is VALID [2022-04-27 12:50:46,318 INFO L290 TraceCheckUtils]: 18: Hoare triple {1017#true} ~cond := #in~cond; {1017#true} is VALID [2022-04-27 12:50:46,318 INFO L290 TraceCheckUtils]: 19: Hoare triple {1017#true} assume !(0 == ~cond); {1017#true} is VALID [2022-04-27 12:50:46,318 INFO L290 TraceCheckUtils]: 20: Hoare triple {1017#true} assume true; {1017#true} is VALID [2022-04-27 12:50:46,318 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1017#true} {1072#(and (<= 0 main_~y~0) (<= main_~y~0 1))} #70#return; {1072#(and (<= 0 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-27 12:50:46,318 INFO L272 TraceCheckUtils]: 22: Hoare triple {1072#(and (<= 0 main_~y~0) (<= main_~y~0 1))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1017#true} is VALID [2022-04-27 12:50:46,319 INFO L290 TraceCheckUtils]: 23: Hoare triple {1017#true} ~cond := #in~cond; {1061#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 12:50:46,319 INFO L290 TraceCheckUtils]: 24: Hoare triple {1061#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1065#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:50:46,319 INFO L290 TraceCheckUtils]: 25: Hoare triple {1065#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1065#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:50:46,320 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1065#(not (= |assume_abort_if_not_#in~cond| 0))} {1072#(and (<= 0 main_~y~0) (<= main_~y~0 1))} #72#return; {1103#(and (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-27 12:50:46,320 INFO L290 TraceCheckUtils]: 27: Hoare triple {1103#(and (<= 1 main_~y~0) (<= main_~y~0 1))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1107#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-27 12:50:46,321 INFO L290 TraceCheckUtils]: 28: Hoare triple {1107#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (<= main_~y~0 1))} assume !false; {1107#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-27 12:50:46,321 INFO L272 TraceCheckUtils]: 29: Hoare triple {1107#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (<= main_~y~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {1017#true} is VALID [2022-04-27 12:50:46,321 INFO L290 TraceCheckUtils]: 30: Hoare triple {1017#true} ~cond := #in~cond; {1017#true} is VALID [2022-04-27 12:50:46,321 INFO L290 TraceCheckUtils]: 31: Hoare triple {1017#true} assume !(0 == ~cond); {1017#true} is VALID [2022-04-27 12:50:46,321 INFO L290 TraceCheckUtils]: 32: Hoare triple {1017#true} assume true; {1017#true} is VALID [2022-04-27 12:50:46,322 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1017#true} {1107#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (<= main_~y~0 1))} #74#return; {1107#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-27 12:50:46,322 INFO L272 TraceCheckUtils]: 34: Hoare triple {1107#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {1017#true} is VALID [2022-04-27 12:50:46,322 INFO L290 TraceCheckUtils]: 35: Hoare triple {1017#true} ~cond := #in~cond; {1017#true} is VALID [2022-04-27 12:50:46,322 INFO L290 TraceCheckUtils]: 36: Hoare triple {1017#true} assume !(0 == ~cond); {1017#true} is VALID [2022-04-27 12:50:46,322 INFO L290 TraceCheckUtils]: 37: Hoare triple {1017#true} assume true; {1017#true} is VALID [2022-04-27 12:50:46,323 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {1017#true} {1107#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (<= main_~y~0 1))} #76#return; {1107#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-27 12:50:46,324 INFO L272 TraceCheckUtils]: 39: Hoare triple {1107#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {1144#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:50:46,325 INFO L290 TraceCheckUtils]: 40: Hoare triple {1144#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1148#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:50:46,325 INFO L290 TraceCheckUtils]: 41: Hoare triple {1148#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1018#false} is VALID [2022-04-27 12:50:46,325 INFO L290 TraceCheckUtils]: 42: Hoare triple {1018#false} assume !false; {1018#false} is VALID [2022-04-27 12:50:46,325 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 13 proven. 3 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-27 12:50:46,325 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:51:15,882 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:51:15,883 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [226634045] [2022-04-27 12:51:15,883 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:51:15,883 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1854834176] [2022-04-27 12:51:15,883 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1854834176] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 12:51:15,883 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-27 12:51:15,883 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9] total 9 [2022-04-27 12:51:15,883 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1555171919] [2022-04-27 12:51:15,883 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-27 12:51:15,884 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 4 states have call predecessors, (7), 3 states have call successors, (7) Word has length 43 [2022-04-27 12:51:15,884 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:51:15,884 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 4 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-27 12:51:15,914 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:51:15,915 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-27 12:51:15,915 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:51:15,915 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-27 12:51:15,915 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2022-04-27 12:51:15,916 INFO L87 Difference]: Start difference. First operand 49 states and 65 transitions. Second operand has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 4 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-27 12:51:16,437 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:51:16,438 INFO L93 Difference]: Finished difference Result 74 states and 105 transitions. [2022-04-27 12:51:16,438 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-27 12:51:16,438 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 4 states have call predecessors, (7), 3 states have call successors, (7) Word has length 43 [2022-04-27 12:51:16,438 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:51:16,439 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 4 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-27 12:51:16,441 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 65 transitions. [2022-04-27 12:51:16,441 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 4 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-27 12:51:16,443 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 65 transitions. [2022-04-27 12:51:16,443 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 65 transitions. [2022-04-27 12:51:16,508 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:51:16,510 INFO L225 Difference]: With dead ends: 74 [2022-04-27 12:51:16,510 INFO L226 Difference]: Without dead ends: 70 [2022-04-27 12:51:16,511 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 49 GetRequests, 38 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=29, Invalid=103, Unknown=0, NotChecked=0, Total=132 [2022-04-27 12:51:16,512 INFO L413 NwaCegarLoop]: 38 mSDtfsCounter, 30 mSDsluCounter, 120 mSDsCounter, 0 mSdLazyCounter, 130 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 41 SdHoareTripleChecker+Valid, 158 SdHoareTripleChecker+Invalid, 151 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 130 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 12:51:16,512 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [41 Valid, 158 Invalid, 151 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 130 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 12:51:16,512 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 70 states. [2022-04-27 12:51:16,584 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 70 to 70. [2022-04-27 12:51:16,584 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:51:16,585 INFO L82 GeneralOperation]: Start isEquivalent. First operand 70 states. Second operand has 70 states, 33 states have (on average 1.2727272727272727) internal successors, (42), 37 states have internal predecessors, (42), 30 states have call successors, (30), 7 states have call predecessors, (30), 6 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-27 12:51:16,585 INFO L74 IsIncluded]: Start isIncluded. First operand 70 states. Second operand has 70 states, 33 states have (on average 1.2727272727272727) internal successors, (42), 37 states have internal predecessors, (42), 30 states have call successors, (30), 7 states have call predecessors, (30), 6 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-27 12:51:16,586 INFO L87 Difference]: Start difference. First operand 70 states. Second operand has 70 states, 33 states have (on average 1.2727272727272727) internal successors, (42), 37 states have internal predecessors, (42), 30 states have call successors, (30), 7 states have call predecessors, (30), 6 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-27 12:51:16,590 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:51:16,590 INFO L93 Difference]: Finished difference Result 70 states and 98 transitions. [2022-04-27 12:51:16,590 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 98 transitions. [2022-04-27 12:51:16,590 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:51:16,591 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:51:16,591 INFO L74 IsIncluded]: Start isIncluded. First operand has 70 states, 33 states have (on average 1.2727272727272727) internal successors, (42), 37 states have internal predecessors, (42), 30 states have call successors, (30), 7 states have call predecessors, (30), 6 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) Second operand 70 states. [2022-04-27 12:51:16,591 INFO L87 Difference]: Start difference. First operand has 70 states, 33 states have (on average 1.2727272727272727) internal successors, (42), 37 states have internal predecessors, (42), 30 states have call successors, (30), 7 states have call predecessors, (30), 6 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) Second operand 70 states. [2022-04-27 12:51:16,595 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:51:16,595 INFO L93 Difference]: Finished difference Result 70 states and 98 transitions. [2022-04-27 12:51:16,596 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 98 transitions. [2022-04-27 12:51:16,596 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:51:16,596 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:51:16,596 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:51:16,596 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:51:16,597 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 70 states, 33 states have (on average 1.2727272727272727) internal successors, (42), 37 states have internal predecessors, (42), 30 states have call successors, (30), 7 states have call predecessors, (30), 6 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-27 12:51:16,600 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 98 transitions. [2022-04-27 12:51:16,600 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 98 transitions. Word has length 43 [2022-04-27 12:51:16,600 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:51:16,601 INFO L495 AbstractCegarLoop]: Abstraction has 70 states and 98 transitions. [2022-04-27 12:51:16,601 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 4 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-27 12:51:16,601 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 98 transitions. [2022-04-27 12:51:16,602 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-04-27 12:51:16,602 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:51:16,602 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:51:16,622 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-27 12:51:16,811 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:51:16,812 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:51:16,812 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:51:16,812 INFO L85 PathProgramCache]: Analyzing trace with hash -301191846, now seen corresponding path program 1 times [2022-04-27 12:51:16,812 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:51:16,812 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1952922641] [2022-04-27 12:51:16,812 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:51:16,813 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:51:16,828 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:51:16,828 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [869338102] [2022-04-27 12:51:16,828 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:51:16,828 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:51:16,828 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:51:16,829 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:51:16,835 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-27 12:51:16,888 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:51:16,888 INFO L263 TraceCheckSpWp]: Trace formula consists of 134 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-27 12:51:16,901 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:51:16,903 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:51:17,006 INFO L272 TraceCheckUtils]: 0: Hoare triple {1542#true} call ULTIMATE.init(); {1542#true} is VALID [2022-04-27 12:51:17,007 INFO L290 TraceCheckUtils]: 1: Hoare triple {1542#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(10, 2);call #Ultimate.allocInit(12, 3); {1542#true} is VALID [2022-04-27 12:51:17,007 INFO L290 TraceCheckUtils]: 2: Hoare triple {1542#true} assume true; {1542#true} is VALID [2022-04-27 12:51:17,007 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1542#true} {1542#true} #88#return; {1542#true} is VALID [2022-04-27 12:51:17,007 INFO L272 TraceCheckUtils]: 4: Hoare triple {1542#true} call #t~ret6 := main(); {1542#true} is VALID [2022-04-27 12:51:17,007 INFO L290 TraceCheckUtils]: 5: Hoare triple {1542#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {1542#true} is VALID [2022-04-27 12:51:17,007 INFO L272 TraceCheckUtils]: 6: Hoare triple {1542#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {1542#true} is VALID [2022-04-27 12:51:17,007 INFO L290 TraceCheckUtils]: 7: Hoare triple {1542#true} ~cond := #in~cond; {1542#true} is VALID [2022-04-27 12:51:17,007 INFO L290 TraceCheckUtils]: 8: Hoare triple {1542#true} assume !(0 == ~cond); {1542#true} is VALID [2022-04-27 12:51:17,007 INFO L290 TraceCheckUtils]: 9: Hoare triple {1542#true} assume true; {1542#true} is VALID [2022-04-27 12:51:17,007 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1542#true} {1542#true} #66#return; {1542#true} is VALID [2022-04-27 12:51:17,008 INFO L290 TraceCheckUtils]: 11: Hoare triple {1542#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1542#true} is VALID [2022-04-27 12:51:17,008 INFO L272 TraceCheckUtils]: 12: Hoare triple {1542#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {1542#true} is VALID [2022-04-27 12:51:17,008 INFO L290 TraceCheckUtils]: 13: Hoare triple {1542#true} ~cond := #in~cond; {1542#true} is VALID [2022-04-27 12:51:17,008 INFO L290 TraceCheckUtils]: 14: Hoare triple {1542#true} assume !(0 == ~cond); {1542#true} is VALID [2022-04-27 12:51:17,008 INFO L290 TraceCheckUtils]: 15: Hoare triple {1542#true} assume true; {1542#true} is VALID [2022-04-27 12:51:17,008 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1542#true} {1542#true} #68#return; {1542#true} is VALID [2022-04-27 12:51:17,008 INFO L272 TraceCheckUtils]: 17: Hoare triple {1542#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1542#true} is VALID [2022-04-27 12:51:17,008 INFO L290 TraceCheckUtils]: 18: Hoare triple {1542#true} ~cond := #in~cond; {1542#true} is VALID [2022-04-27 12:51:17,009 INFO L290 TraceCheckUtils]: 19: Hoare triple {1542#true} assume !(0 == ~cond); {1542#true} is VALID [2022-04-27 12:51:17,009 INFO L290 TraceCheckUtils]: 20: Hoare triple {1542#true} assume true; {1542#true} is VALID [2022-04-27 12:51:17,009 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1542#true} {1542#true} #70#return; {1542#true} is VALID [2022-04-27 12:51:17,009 INFO L272 TraceCheckUtils]: 22: Hoare triple {1542#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1542#true} is VALID [2022-04-27 12:51:17,009 INFO L290 TraceCheckUtils]: 23: Hoare triple {1542#true} ~cond := #in~cond; {1542#true} is VALID [2022-04-27 12:51:17,009 INFO L290 TraceCheckUtils]: 24: Hoare triple {1542#true} assume !(0 == ~cond); {1542#true} is VALID [2022-04-27 12:51:17,009 INFO L290 TraceCheckUtils]: 25: Hoare triple {1542#true} assume true; {1542#true} is VALID [2022-04-27 12:51:17,009 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1542#true} {1542#true} #72#return; {1542#true} is VALID [2022-04-27 12:51:17,010 INFO L290 TraceCheckUtils]: 27: Hoare triple {1542#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1542#true} is VALID [2022-04-27 12:51:17,010 INFO L290 TraceCheckUtils]: 28: Hoare triple {1542#true} assume !false; {1542#true} is VALID [2022-04-27 12:51:17,010 INFO L272 TraceCheckUtils]: 29: Hoare triple {1542#true} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {1542#true} is VALID [2022-04-27 12:51:17,010 INFO L290 TraceCheckUtils]: 30: Hoare triple {1542#true} ~cond := #in~cond; {1542#true} is VALID [2022-04-27 12:51:17,010 INFO L290 TraceCheckUtils]: 31: Hoare triple {1542#true} assume !(0 == ~cond); {1542#true} is VALID [2022-04-27 12:51:17,010 INFO L290 TraceCheckUtils]: 32: Hoare triple {1542#true} assume true; {1542#true} is VALID [2022-04-27 12:51:17,010 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1542#true} {1542#true} #74#return; {1542#true} is VALID [2022-04-27 12:51:17,010 INFO L272 TraceCheckUtils]: 34: Hoare triple {1542#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {1542#true} is VALID [2022-04-27 12:51:17,011 INFO L290 TraceCheckUtils]: 35: Hoare triple {1542#true} ~cond := #in~cond; {1542#true} is VALID [2022-04-27 12:51:17,011 INFO L290 TraceCheckUtils]: 36: Hoare triple {1542#true} assume !(0 == ~cond); {1542#true} is VALID [2022-04-27 12:51:17,011 INFO L290 TraceCheckUtils]: 37: Hoare triple {1542#true} assume true; {1542#true} is VALID [2022-04-27 12:51:17,011 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {1542#true} {1542#true} #76#return; {1542#true} is VALID [2022-04-27 12:51:17,011 INFO L272 TraceCheckUtils]: 39: Hoare triple {1542#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {1542#true} is VALID [2022-04-27 12:51:17,011 INFO L290 TraceCheckUtils]: 40: Hoare triple {1542#true} ~cond := #in~cond; {1542#true} is VALID [2022-04-27 12:51:17,011 INFO L290 TraceCheckUtils]: 41: Hoare triple {1542#true} assume !(0 == ~cond); {1542#true} is VALID [2022-04-27 12:51:17,011 INFO L290 TraceCheckUtils]: 42: Hoare triple {1542#true} assume true; {1542#true} is VALID [2022-04-27 12:51:17,011 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {1542#true} {1542#true} #78#return; {1542#true} is VALID [2022-04-27 12:51:17,020 INFO L290 TraceCheckUtils]: 44: Hoare triple {1542#true} assume !(~a~0 != ~b~0); {1679#(= main_~b~0 main_~a~0)} is VALID [2022-04-27 12:51:17,021 INFO L272 TraceCheckUtils]: 45: Hoare triple {1679#(= main_~b~0 main_~a~0)} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {1683#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:51:17,022 INFO L290 TraceCheckUtils]: 46: Hoare triple {1683#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1687#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:51:17,022 INFO L290 TraceCheckUtils]: 47: Hoare triple {1687#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1543#false} is VALID [2022-04-27 12:51:17,022 INFO L290 TraceCheckUtils]: 48: Hoare triple {1543#false} assume !false; {1543#false} is VALID [2022-04-27 12:51:17,022 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2022-04-27 12:51:17,022 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 12:51:17,022 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:51:17,022 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1952922641] [2022-04-27 12:51:17,022 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:51:17,022 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [869338102] [2022-04-27 12:51:17,023 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [869338102] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:51:17,023 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:51:17,023 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 12:51:17,023 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2055591783] [2022-04-27 12:51:17,023 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:51:17,023 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 1 states have call predecessors, (8), 1 states have call successors, (8) Word has length 49 [2022-04-27 12:51:17,024 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:51:17,024 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 1 states have call predecessors, (8), 1 states have call successors, (8) [2022-04-27 12:51:17,048 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:51:17,049 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 12:51:17,049 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:51:17,049 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 12:51:17,049 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 12:51:17,050 INFO L87 Difference]: Start difference. First operand 70 states and 98 transitions. Second operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 1 states have call predecessors, (8), 1 states have call successors, (8) [2022-04-27 12:51:17,273 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:51:17,273 INFO L93 Difference]: Finished difference Result 76 states and 103 transitions. [2022-04-27 12:51:17,273 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 12:51:17,273 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 1 states have call predecessors, (8), 1 states have call successors, (8) Word has length 49 [2022-04-27 12:51:17,274 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:51:17,274 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 1 states have call predecessors, (8), 1 states have call successors, (8) [2022-04-27 12:51:17,275 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 47 transitions. [2022-04-27 12:51:17,275 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 1 states have call predecessors, (8), 1 states have call successors, (8) [2022-04-27 12:51:17,276 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 47 transitions. [2022-04-27 12:51:17,276 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 47 transitions. [2022-04-27 12:51:17,315 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:51:17,317 INFO L225 Difference]: With dead ends: 76 [2022-04-27 12:51:17,318 INFO L226 Difference]: Without dead ends: 74 [2022-04-27 12:51:17,318 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 49 GetRequests, 45 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-27 12:51:17,319 INFO L413 NwaCegarLoop]: 42 mSDtfsCounter, 5 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 30 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 139 SdHoareTripleChecker+Invalid, 30 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 30 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 12:51:17,319 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [8 Valid, 139 Invalid, 30 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 30 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 12:51:17,319 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2022-04-27 12:51:17,398 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 74. [2022-04-27 12:51:17,398 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:51:17,399 INFO L82 GeneralOperation]: Start isEquivalent. First operand 74 states. Second operand has 74 states, 36 states have (on average 1.25) internal successors, (45), 40 states have internal predecessors, (45), 30 states have call successors, (30), 8 states have call predecessors, (30), 7 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-27 12:51:17,399 INFO L74 IsIncluded]: Start isIncluded. First operand 74 states. Second operand has 74 states, 36 states have (on average 1.25) internal successors, (45), 40 states have internal predecessors, (45), 30 states have call successors, (30), 8 states have call predecessors, (30), 7 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-27 12:51:17,399 INFO L87 Difference]: Start difference. First operand 74 states. Second operand has 74 states, 36 states have (on average 1.25) internal successors, (45), 40 states have internal predecessors, (45), 30 states have call successors, (30), 8 states have call predecessors, (30), 7 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-27 12:51:17,403 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:51:17,403 INFO L93 Difference]: Finished difference Result 74 states and 101 transitions. [2022-04-27 12:51:17,403 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 101 transitions. [2022-04-27 12:51:17,404 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:51:17,404 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:51:17,404 INFO L74 IsIncluded]: Start isIncluded. First operand has 74 states, 36 states have (on average 1.25) internal successors, (45), 40 states have internal predecessors, (45), 30 states have call successors, (30), 8 states have call predecessors, (30), 7 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) Second operand 74 states. [2022-04-27 12:51:17,404 INFO L87 Difference]: Start difference. First operand has 74 states, 36 states have (on average 1.25) internal successors, (45), 40 states have internal predecessors, (45), 30 states have call successors, (30), 8 states have call predecessors, (30), 7 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) Second operand 74 states. [2022-04-27 12:51:17,408 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:51:17,408 INFO L93 Difference]: Finished difference Result 74 states and 101 transitions. [2022-04-27 12:51:17,408 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 101 transitions. [2022-04-27 12:51:17,409 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:51:17,409 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:51:17,409 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:51:17,409 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:51:17,409 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 74 states, 36 states have (on average 1.25) internal successors, (45), 40 states have internal predecessors, (45), 30 states have call successors, (30), 8 states have call predecessors, (30), 7 states have return successors, (26), 25 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-27 12:51:17,412 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 101 transitions. [2022-04-27 12:51:17,413 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 101 transitions. Word has length 49 [2022-04-27 12:51:17,413 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:51:17,413 INFO L495 AbstractCegarLoop]: Abstraction has 74 states and 101 transitions. [2022-04-27 12:51:17,413 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 1 states have call predecessors, (8), 1 states have call successors, (8) [2022-04-27 12:51:17,413 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 101 transitions. [2022-04-27 12:51:17,414 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2022-04-27 12:51:17,414 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:51:17,414 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:51:17,443 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-27 12:51:17,637 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:51:17,638 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:51:17,638 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:51:17,638 INFO L85 PathProgramCache]: Analyzing trace with hash -1164909737, now seen corresponding path program 1 times [2022-04-27 12:51:17,638 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:51:17,638 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2126607934] [2022-04-27 12:51:17,638 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:51:17,638 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:51:17,652 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:51:17,653 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1496315953] [2022-04-27 12:51:17,653 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:51:17,653 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:51:17,653 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:51:17,654 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:51:17,663 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-27 12:51:17,702 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:51:17,703 INFO L263 TraceCheckSpWp]: Trace formula consists of 141 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-27 12:51:17,773 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:51:17,775 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:51:18,055 INFO L272 TraceCheckUtils]: 0: Hoare triple {2077#true} call ULTIMATE.init(); {2077#true} is VALID [2022-04-27 12:51:18,056 INFO L290 TraceCheckUtils]: 1: Hoare triple {2077#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(10, 2);call #Ultimate.allocInit(12, 3); {2077#true} is VALID [2022-04-27 12:51:18,056 INFO L290 TraceCheckUtils]: 2: Hoare triple {2077#true} assume true; {2077#true} is VALID [2022-04-27 12:51:18,056 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2077#true} {2077#true} #88#return; {2077#true} is VALID [2022-04-27 12:51:18,056 INFO L272 TraceCheckUtils]: 4: Hoare triple {2077#true} call #t~ret6 := main(); {2077#true} is VALID [2022-04-27 12:51:18,056 INFO L290 TraceCheckUtils]: 5: Hoare triple {2077#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2077#true} is VALID [2022-04-27 12:51:18,056 INFO L272 TraceCheckUtils]: 6: Hoare triple {2077#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {2077#true} is VALID [2022-04-27 12:51:18,057 INFO L290 TraceCheckUtils]: 7: Hoare triple {2077#true} ~cond := #in~cond; {2103#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 12:51:18,057 INFO L290 TraceCheckUtils]: 8: Hoare triple {2103#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2107#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:51:18,057 INFO L290 TraceCheckUtils]: 9: Hoare triple {2107#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2107#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:51:18,058 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2107#(not (= |assume_abort_if_not_#in~cond| 0))} {2077#true} #66#return; {2114#(and (<= 0 main_~x~0) (<= main_~x~0 1))} is VALID [2022-04-27 12:51:18,059 INFO L290 TraceCheckUtils]: 11: Hoare triple {2114#(and (<= 0 main_~x~0) (<= main_~x~0 1))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2114#(and (<= 0 main_~x~0) (<= main_~x~0 1))} is VALID [2022-04-27 12:51:18,059 INFO L272 TraceCheckUtils]: 12: Hoare triple {2114#(and (<= 0 main_~x~0) (<= main_~x~0 1))} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {2077#true} is VALID [2022-04-27 12:51:18,059 INFO L290 TraceCheckUtils]: 13: Hoare triple {2077#true} ~cond := #in~cond; {2077#true} is VALID [2022-04-27 12:51:18,059 INFO L290 TraceCheckUtils]: 14: Hoare triple {2077#true} assume !(0 == ~cond); {2077#true} is VALID [2022-04-27 12:51:18,059 INFO L290 TraceCheckUtils]: 15: Hoare triple {2077#true} assume true; {2077#true} is VALID [2022-04-27 12:51:18,060 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2077#true} {2114#(and (<= 0 main_~x~0) (<= main_~x~0 1))} #68#return; {2114#(and (<= 0 main_~x~0) (<= main_~x~0 1))} is VALID [2022-04-27 12:51:18,060 INFO L272 TraceCheckUtils]: 17: Hoare triple {2114#(and (<= 0 main_~x~0) (<= main_~x~0 1))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2077#true} is VALID [2022-04-27 12:51:18,060 INFO L290 TraceCheckUtils]: 18: Hoare triple {2077#true} ~cond := #in~cond; {2077#true} is VALID [2022-04-27 12:51:18,060 INFO L290 TraceCheckUtils]: 19: Hoare triple {2077#true} assume !(0 == ~cond); {2077#true} is VALID [2022-04-27 12:51:18,060 INFO L290 TraceCheckUtils]: 20: Hoare triple {2077#true} assume true; {2077#true} is VALID [2022-04-27 12:51:18,061 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2077#true} {2114#(and (<= 0 main_~x~0) (<= main_~x~0 1))} #70#return; {2114#(and (<= 0 main_~x~0) (<= main_~x~0 1))} is VALID [2022-04-27 12:51:18,061 INFO L272 TraceCheckUtils]: 22: Hoare triple {2114#(and (<= 0 main_~x~0) (<= main_~x~0 1))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2077#true} is VALID [2022-04-27 12:51:18,061 INFO L290 TraceCheckUtils]: 23: Hoare triple {2077#true} ~cond := #in~cond; {2103#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 12:51:18,062 INFO L290 TraceCheckUtils]: 24: Hoare triple {2103#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2107#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:51:18,062 INFO L290 TraceCheckUtils]: 25: Hoare triple {2107#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2107#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:51:18,063 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2107#(not (= |assume_abort_if_not_#in~cond| 0))} {2114#(and (<= 0 main_~x~0) (<= main_~x~0 1))} #72#return; {2163#(and (<= 0 main_~x~0) (<= main_~x~0 1) (<= 1 main_~y~0))} is VALID [2022-04-27 12:51:18,063 INFO L290 TraceCheckUtils]: 27: Hoare triple {2163#(and (<= 0 main_~x~0) (<= main_~x~0 1) (<= 1 main_~y~0))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2167#(and (<= main_~a~0 1) (<= 1 main_~b~0))} is VALID [2022-04-27 12:51:18,064 INFO L290 TraceCheckUtils]: 28: Hoare triple {2167#(and (<= main_~a~0 1) (<= 1 main_~b~0))} assume !false; {2167#(and (<= main_~a~0 1) (<= 1 main_~b~0))} is VALID [2022-04-27 12:51:18,064 INFO L272 TraceCheckUtils]: 29: Hoare triple {2167#(and (<= main_~a~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {2077#true} is VALID [2022-04-27 12:51:18,064 INFO L290 TraceCheckUtils]: 30: Hoare triple {2077#true} ~cond := #in~cond; {2077#true} is VALID [2022-04-27 12:51:18,064 INFO L290 TraceCheckUtils]: 31: Hoare triple {2077#true} assume !(0 == ~cond); {2077#true} is VALID [2022-04-27 12:51:18,064 INFO L290 TraceCheckUtils]: 32: Hoare triple {2077#true} assume true; {2077#true} is VALID [2022-04-27 12:51:18,065 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2077#true} {2167#(and (<= main_~a~0 1) (<= 1 main_~b~0))} #74#return; {2167#(and (<= main_~a~0 1) (<= 1 main_~b~0))} is VALID [2022-04-27 12:51:18,065 INFO L272 TraceCheckUtils]: 34: Hoare triple {2167#(and (<= main_~a~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2077#true} is VALID [2022-04-27 12:51:18,065 INFO L290 TraceCheckUtils]: 35: Hoare triple {2077#true} ~cond := #in~cond; {2077#true} is VALID [2022-04-27 12:51:18,065 INFO L290 TraceCheckUtils]: 36: Hoare triple {2077#true} assume !(0 == ~cond); {2077#true} is VALID [2022-04-27 12:51:18,066 INFO L290 TraceCheckUtils]: 37: Hoare triple {2077#true} assume true; {2077#true} is VALID [2022-04-27 12:51:18,066 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {2077#true} {2167#(and (<= main_~a~0 1) (<= 1 main_~b~0))} #76#return; {2167#(and (<= main_~a~0 1) (<= 1 main_~b~0))} is VALID [2022-04-27 12:51:18,066 INFO L272 TraceCheckUtils]: 39: Hoare triple {2167#(and (<= main_~a~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2077#true} is VALID [2022-04-27 12:51:18,066 INFO L290 TraceCheckUtils]: 40: Hoare triple {2077#true} ~cond := #in~cond; {2077#true} is VALID [2022-04-27 12:51:18,067 INFO L290 TraceCheckUtils]: 41: Hoare triple {2077#true} assume !(0 == ~cond); {2077#true} is VALID [2022-04-27 12:51:18,067 INFO L290 TraceCheckUtils]: 42: Hoare triple {2077#true} assume true; {2077#true} is VALID [2022-04-27 12:51:18,067 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {2077#true} {2167#(and (<= main_~a~0 1) (<= 1 main_~b~0))} #78#return; {2167#(and (<= main_~a~0 1) (<= 1 main_~b~0))} is VALID [2022-04-27 12:51:18,068 INFO L290 TraceCheckUtils]: 44: Hoare triple {2167#(and (<= main_~a~0 1) (<= 1 main_~b~0))} assume !!(~a~0 != ~b~0); {2167#(and (<= main_~a~0 1) (<= 1 main_~b~0))} is VALID [2022-04-27 12:51:18,069 INFO L290 TraceCheckUtils]: 45: Hoare triple {2167#(and (<= main_~a~0 1) (<= 1 main_~b~0))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {2078#false} is VALID [2022-04-27 12:51:18,069 INFO L290 TraceCheckUtils]: 46: Hoare triple {2078#false} assume !false; {2078#false} is VALID [2022-04-27 12:51:18,069 INFO L272 TraceCheckUtils]: 47: Hoare triple {2078#false} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {2078#false} is VALID [2022-04-27 12:51:18,069 INFO L290 TraceCheckUtils]: 48: Hoare triple {2078#false} ~cond := #in~cond; {2078#false} is VALID [2022-04-27 12:51:18,069 INFO L290 TraceCheckUtils]: 49: Hoare triple {2078#false} assume 0 == ~cond; {2078#false} is VALID [2022-04-27 12:51:18,069 INFO L290 TraceCheckUtils]: 50: Hoare triple {2078#false} assume !false; {2078#false} is VALID [2022-04-27 12:51:18,069 INFO L134 CoverageAnalysis]: Checked inductivity of 44 backedges. 14 proven. 6 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-27 12:51:18,070 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:51:18,497 INFO L290 TraceCheckUtils]: 50: Hoare triple {2078#false} assume !false; {2078#false} is VALID [2022-04-27 12:51:18,497 INFO L290 TraceCheckUtils]: 49: Hoare triple {2078#false} assume 0 == ~cond; {2078#false} is VALID [2022-04-27 12:51:18,497 INFO L290 TraceCheckUtils]: 48: Hoare triple {2078#false} ~cond := #in~cond; {2078#false} is VALID [2022-04-27 12:51:18,497 INFO L272 TraceCheckUtils]: 47: Hoare triple {2078#false} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {2078#false} is VALID [2022-04-27 12:51:18,497 INFO L290 TraceCheckUtils]: 46: Hoare triple {2078#false} assume !false; {2078#false} is VALID [2022-04-27 12:51:18,498 INFO L290 TraceCheckUtils]: 45: Hoare triple {2252#(not (< main_~b~0 main_~a~0))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {2078#false} is VALID [2022-04-27 12:51:18,498 INFO L290 TraceCheckUtils]: 44: Hoare triple {2252#(not (< main_~b~0 main_~a~0))} assume !!(~a~0 != ~b~0); {2252#(not (< main_~b~0 main_~a~0))} is VALID [2022-04-27 12:51:18,499 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {2077#true} {2252#(not (< main_~b~0 main_~a~0))} #78#return; {2252#(not (< main_~b~0 main_~a~0))} is VALID [2022-04-27 12:51:18,499 INFO L290 TraceCheckUtils]: 42: Hoare triple {2077#true} assume true; {2077#true} is VALID [2022-04-27 12:51:18,499 INFO L290 TraceCheckUtils]: 41: Hoare triple {2077#true} assume !(0 == ~cond); {2077#true} is VALID [2022-04-27 12:51:18,499 INFO L290 TraceCheckUtils]: 40: Hoare triple {2077#true} ~cond := #in~cond; {2077#true} is VALID [2022-04-27 12:51:18,499 INFO L272 TraceCheckUtils]: 39: Hoare triple {2252#(not (< main_~b~0 main_~a~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2077#true} is VALID [2022-04-27 12:51:18,500 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {2077#true} {2252#(not (< main_~b~0 main_~a~0))} #76#return; {2252#(not (< main_~b~0 main_~a~0))} is VALID [2022-04-27 12:51:18,500 INFO L290 TraceCheckUtils]: 37: Hoare triple {2077#true} assume true; {2077#true} is VALID [2022-04-27 12:51:18,500 INFO L290 TraceCheckUtils]: 36: Hoare triple {2077#true} assume !(0 == ~cond); {2077#true} is VALID [2022-04-27 12:51:18,500 INFO L290 TraceCheckUtils]: 35: Hoare triple {2077#true} ~cond := #in~cond; {2077#true} is VALID [2022-04-27 12:51:18,501 INFO L272 TraceCheckUtils]: 34: Hoare triple {2252#(not (< main_~b~0 main_~a~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2077#true} is VALID [2022-04-27 12:51:18,501 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2077#true} {2252#(not (< main_~b~0 main_~a~0))} #74#return; {2252#(not (< main_~b~0 main_~a~0))} is VALID [2022-04-27 12:51:18,501 INFO L290 TraceCheckUtils]: 32: Hoare triple {2077#true} assume true; {2077#true} is VALID [2022-04-27 12:51:18,502 INFO L290 TraceCheckUtils]: 31: Hoare triple {2077#true} assume !(0 == ~cond); {2077#true} is VALID [2022-04-27 12:51:18,502 INFO L290 TraceCheckUtils]: 30: Hoare triple {2077#true} ~cond := #in~cond; {2077#true} is VALID [2022-04-27 12:51:18,502 INFO L272 TraceCheckUtils]: 29: Hoare triple {2252#(not (< main_~b~0 main_~a~0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {2077#true} is VALID [2022-04-27 12:51:18,502 INFO L290 TraceCheckUtils]: 28: Hoare triple {2252#(not (< main_~b~0 main_~a~0))} assume !false; {2252#(not (< main_~b~0 main_~a~0))} is VALID [2022-04-27 12:51:18,503 INFO L290 TraceCheckUtils]: 27: Hoare triple {2307#(<= main_~x~0 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2252#(not (< main_~b~0 main_~a~0))} is VALID [2022-04-27 12:51:18,503 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2107#(not (= |assume_abort_if_not_#in~cond| 0))} {2311#(<= main_~x~0 1)} #72#return; {2307#(<= main_~x~0 main_~y~0)} is VALID [2022-04-27 12:51:18,504 INFO L290 TraceCheckUtils]: 25: Hoare triple {2107#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2107#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:51:18,504 INFO L290 TraceCheckUtils]: 24: Hoare triple {2321#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {2107#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:51:18,505 INFO L290 TraceCheckUtils]: 23: Hoare triple {2077#true} ~cond := #in~cond; {2321#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-27 12:51:18,505 INFO L272 TraceCheckUtils]: 22: Hoare triple {2311#(<= main_~x~0 1)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2077#true} is VALID [2022-04-27 12:51:18,505 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2077#true} {2311#(<= main_~x~0 1)} #70#return; {2311#(<= main_~x~0 1)} is VALID [2022-04-27 12:51:18,505 INFO L290 TraceCheckUtils]: 20: Hoare triple {2077#true} assume true; {2077#true} is VALID [2022-04-27 12:51:18,506 INFO L290 TraceCheckUtils]: 19: Hoare triple {2077#true} assume !(0 == ~cond); {2077#true} is VALID [2022-04-27 12:51:18,506 INFO L290 TraceCheckUtils]: 18: Hoare triple {2077#true} ~cond := #in~cond; {2077#true} is VALID [2022-04-27 12:51:18,506 INFO L272 TraceCheckUtils]: 17: Hoare triple {2311#(<= main_~x~0 1)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2077#true} is VALID [2022-04-27 12:51:18,506 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2077#true} {2311#(<= main_~x~0 1)} #68#return; {2311#(<= main_~x~0 1)} is VALID [2022-04-27 12:51:18,506 INFO L290 TraceCheckUtils]: 15: Hoare triple {2077#true} assume true; {2077#true} is VALID [2022-04-27 12:51:18,507 INFO L290 TraceCheckUtils]: 14: Hoare triple {2077#true} assume !(0 == ~cond); {2077#true} is VALID [2022-04-27 12:51:18,507 INFO L290 TraceCheckUtils]: 13: Hoare triple {2077#true} ~cond := #in~cond; {2077#true} is VALID [2022-04-27 12:51:18,507 INFO L272 TraceCheckUtils]: 12: Hoare triple {2311#(<= main_~x~0 1)} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {2077#true} is VALID [2022-04-27 12:51:18,507 INFO L290 TraceCheckUtils]: 11: Hoare triple {2311#(<= main_~x~0 1)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2311#(<= main_~x~0 1)} is VALID [2022-04-27 12:51:18,508 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2107#(not (= |assume_abort_if_not_#in~cond| 0))} {2077#true} #66#return; {2311#(<= main_~x~0 1)} is VALID [2022-04-27 12:51:18,508 INFO L290 TraceCheckUtils]: 9: Hoare triple {2107#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2107#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:51:18,508 INFO L290 TraceCheckUtils]: 8: Hoare triple {2321#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {2107#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:51:18,509 INFO L290 TraceCheckUtils]: 7: Hoare triple {2077#true} ~cond := #in~cond; {2321#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-27 12:51:18,509 INFO L272 TraceCheckUtils]: 6: Hoare triple {2077#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {2077#true} is VALID [2022-04-27 12:51:18,509 INFO L290 TraceCheckUtils]: 5: Hoare triple {2077#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2077#true} is VALID [2022-04-27 12:51:18,509 INFO L272 TraceCheckUtils]: 4: Hoare triple {2077#true} call #t~ret6 := main(); {2077#true} is VALID [2022-04-27 12:51:18,509 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2077#true} {2077#true} #88#return; {2077#true} is VALID [2022-04-27 12:51:18,509 INFO L290 TraceCheckUtils]: 2: Hoare triple {2077#true} assume true; {2077#true} is VALID [2022-04-27 12:51:18,509 INFO L290 TraceCheckUtils]: 1: Hoare triple {2077#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(10, 2);call #Ultimate.allocInit(12, 3); {2077#true} is VALID [2022-04-27 12:51:18,509 INFO L272 TraceCheckUtils]: 0: Hoare triple {2077#true} call ULTIMATE.init(); {2077#true} is VALID [2022-04-27 12:51:18,510 INFO L134 CoverageAnalysis]: Checked inductivity of 44 backedges. 14 proven. 6 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-27 12:51:18,510 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:51:18,510 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2126607934] [2022-04-27 12:51:18,510 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:51:18,510 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1496315953] [2022-04-27 12:51:18,510 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1496315953] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 12:51:18,510 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 12:51:18,510 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 11 [2022-04-27 12:51:18,510 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [831540448] [2022-04-27 12:51:18,511 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 12:51:18,511 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 6 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (15), 7 states have call predecessors, (15), 5 states have call successors, (15) Word has length 51 [2022-04-27 12:51:18,512 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:51:18,512 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 6 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (15), 7 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-27 12:51:18,557 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:51:18,557 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-27 12:51:18,557 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:51:18,559 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-27 12:51:18,559 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=84, Unknown=0, NotChecked=0, Total=110 [2022-04-27 12:51:18,560 INFO L87 Difference]: Start difference. First operand 74 states and 101 transitions. Second operand has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 6 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (15), 7 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-27 12:51:18,998 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:51:18,998 INFO L93 Difference]: Finished difference Result 98 states and 130 transitions. [2022-04-27 12:51:18,998 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-27 12:51:18,998 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 6 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (15), 7 states have call predecessors, (15), 5 states have call successors, (15) Word has length 51 [2022-04-27 12:51:18,999 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:51:18,999 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 6 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (15), 7 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-27 12:51:19,001 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 79 transitions. [2022-04-27 12:51:19,001 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 6 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (15), 7 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-27 12:51:19,003 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 79 transitions. [2022-04-27 12:51:19,003 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 79 transitions. [2022-04-27 12:51:19,072 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:51:19,074 INFO L225 Difference]: With dead ends: 98 [2022-04-27 12:51:19,074 INFO L226 Difference]: Without dead ends: 65 [2022-04-27 12:51:19,075 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 104 GetRequests, 92 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 15 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=47, Invalid=135, Unknown=0, NotChecked=0, Total=182 [2022-04-27 12:51:19,075 INFO L413 NwaCegarLoop]: 37 mSDtfsCounter, 32 mSDsluCounter, 100 mSDsCounter, 0 mSdLazyCounter, 89 mSolverCounterSat, 36 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 36 SdHoareTripleChecker+Valid, 137 SdHoareTripleChecker+Invalid, 125 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 36 IncrementalHoareTripleChecker+Valid, 89 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 12:51:19,076 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [36 Valid, 137 Invalid, 125 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [36 Valid, 89 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 12:51:19,076 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 65 states. [2022-04-27 12:51:19,162 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 65 to 65. [2022-04-27 12:51:19,162 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:51:19,162 INFO L82 GeneralOperation]: Start isEquivalent. First operand 65 states. Second operand has 65 states, 33 states have (on average 1.1818181818181819) internal successors, (39), 36 states have internal predecessors, (39), 24 states have call successors, (24), 8 states have call predecessors, (24), 7 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-27 12:51:19,163 INFO L74 IsIncluded]: Start isIncluded. First operand 65 states. Second operand has 65 states, 33 states have (on average 1.1818181818181819) internal successors, (39), 36 states have internal predecessors, (39), 24 states have call successors, (24), 8 states have call predecessors, (24), 7 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-27 12:51:19,163 INFO L87 Difference]: Start difference. First operand 65 states. Second operand has 65 states, 33 states have (on average 1.1818181818181819) internal successors, (39), 36 states have internal predecessors, (39), 24 states have call successors, (24), 8 states have call predecessors, (24), 7 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-27 12:51:19,165 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:51:19,166 INFO L93 Difference]: Finished difference Result 65 states and 84 transitions. [2022-04-27 12:51:19,166 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 84 transitions. [2022-04-27 12:51:19,166 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:51:19,166 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:51:19,166 INFO L74 IsIncluded]: Start isIncluded. First operand has 65 states, 33 states have (on average 1.1818181818181819) internal successors, (39), 36 states have internal predecessors, (39), 24 states have call successors, (24), 8 states have call predecessors, (24), 7 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 65 states. [2022-04-27 12:51:19,167 INFO L87 Difference]: Start difference. First operand has 65 states, 33 states have (on average 1.1818181818181819) internal successors, (39), 36 states have internal predecessors, (39), 24 states have call successors, (24), 8 states have call predecessors, (24), 7 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 65 states. [2022-04-27 12:51:19,169 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:51:19,169 INFO L93 Difference]: Finished difference Result 65 states and 84 transitions. [2022-04-27 12:51:19,169 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 84 transitions. [2022-04-27 12:51:19,170 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:51:19,170 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:51:19,170 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:51:19,170 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:51:19,170 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 65 states, 33 states have (on average 1.1818181818181819) internal successors, (39), 36 states have internal predecessors, (39), 24 states have call successors, (24), 8 states have call predecessors, (24), 7 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-27 12:51:19,172 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 65 states to 65 states and 84 transitions. [2022-04-27 12:51:19,173 INFO L78 Accepts]: Start accepts. Automaton has 65 states and 84 transitions. Word has length 51 [2022-04-27 12:51:19,173 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:51:19,173 INFO L495 AbstractCegarLoop]: Abstraction has 65 states and 84 transitions. [2022-04-27 12:51:19,173 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 6 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (15), 7 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-27 12:51:19,173 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 84 transitions. [2022-04-27 12:51:19,174 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 55 [2022-04-27 12:51:19,174 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:51:19,174 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:51:19,201 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-27 12:51:19,387 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:51:19,388 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:51:19,388 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:51:19,388 INFO L85 PathProgramCache]: Analyzing trace with hash 1924168317, now seen corresponding path program 1 times [2022-04-27 12:51:19,388 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:51:19,388 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1976028788] [2022-04-27 12:51:19,388 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:51:19,388 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:51:19,402 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:51:19,402 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2047422583] [2022-04-27 12:51:19,402 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:51:19,402 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:51:19,403 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:51:19,404 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:51:19,431 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-27 12:51:19,461 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:51:19,462 INFO L263 TraceCheckSpWp]: Trace formula consists of 143 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-27 12:51:19,472 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:51:19,476 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:51:19,641 INFO L272 TraceCheckUtils]: 0: Hoare triple {2780#true} call ULTIMATE.init(); {2780#true} is VALID [2022-04-27 12:51:19,641 INFO L290 TraceCheckUtils]: 1: Hoare triple {2780#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(10, 2);call #Ultimate.allocInit(12, 3); {2780#true} is VALID [2022-04-27 12:51:19,641 INFO L290 TraceCheckUtils]: 2: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:51:19,641 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2780#true} {2780#true} #88#return; {2780#true} is VALID [2022-04-27 12:51:19,641 INFO L272 TraceCheckUtils]: 4: Hoare triple {2780#true} call #t~ret6 := main(); {2780#true} is VALID [2022-04-27 12:51:19,641 INFO L290 TraceCheckUtils]: 5: Hoare triple {2780#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2780#true} is VALID [2022-04-27 12:51:19,642 INFO L272 TraceCheckUtils]: 6: Hoare triple {2780#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {2780#true} is VALID [2022-04-27 12:51:19,642 INFO L290 TraceCheckUtils]: 7: Hoare triple {2780#true} ~cond := #in~cond; {2780#true} is VALID [2022-04-27 12:51:19,642 INFO L290 TraceCheckUtils]: 8: Hoare triple {2780#true} assume !(0 == ~cond); {2780#true} is VALID [2022-04-27 12:51:19,642 INFO L290 TraceCheckUtils]: 9: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:51:19,642 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2780#true} {2780#true} #66#return; {2780#true} is VALID [2022-04-27 12:51:19,642 INFO L290 TraceCheckUtils]: 11: Hoare triple {2780#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2780#true} is VALID [2022-04-27 12:51:19,642 INFO L272 TraceCheckUtils]: 12: Hoare triple {2780#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {2780#true} is VALID [2022-04-27 12:51:19,642 INFO L290 TraceCheckUtils]: 13: Hoare triple {2780#true} ~cond := #in~cond; {2780#true} is VALID [2022-04-27 12:51:19,642 INFO L290 TraceCheckUtils]: 14: Hoare triple {2780#true} assume !(0 == ~cond); {2780#true} is VALID [2022-04-27 12:51:19,643 INFO L290 TraceCheckUtils]: 15: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:51:19,643 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2780#true} {2780#true} #68#return; {2780#true} is VALID [2022-04-27 12:51:19,643 INFO L272 TraceCheckUtils]: 17: Hoare triple {2780#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2780#true} is VALID [2022-04-27 12:51:19,643 INFO L290 TraceCheckUtils]: 18: Hoare triple {2780#true} ~cond := #in~cond; {2780#true} is VALID [2022-04-27 12:51:19,643 INFO L290 TraceCheckUtils]: 19: Hoare triple {2780#true} assume !(0 == ~cond); {2780#true} is VALID [2022-04-27 12:51:19,643 INFO L290 TraceCheckUtils]: 20: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:51:19,643 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2780#true} {2780#true} #70#return; {2780#true} is VALID [2022-04-27 12:51:19,643 INFO L272 TraceCheckUtils]: 22: Hoare triple {2780#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2780#true} is VALID [2022-04-27 12:51:19,643 INFO L290 TraceCheckUtils]: 23: Hoare triple {2780#true} ~cond := #in~cond; {2780#true} is VALID [2022-04-27 12:51:19,643 INFO L290 TraceCheckUtils]: 24: Hoare triple {2780#true} assume !(0 == ~cond); {2780#true} is VALID [2022-04-27 12:51:19,643 INFO L290 TraceCheckUtils]: 25: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:51:19,644 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2780#true} {2780#true} #72#return; {2780#true} is VALID [2022-04-27 12:51:19,644 INFO L290 TraceCheckUtils]: 27: Hoare triple {2780#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2780#true} is VALID [2022-04-27 12:51:19,644 INFO L290 TraceCheckUtils]: 28: Hoare triple {2780#true} assume !false; {2780#true} is VALID [2022-04-27 12:51:19,644 INFO L272 TraceCheckUtils]: 29: Hoare triple {2780#true} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {2780#true} is VALID [2022-04-27 12:51:19,644 INFO L290 TraceCheckUtils]: 30: Hoare triple {2780#true} ~cond := #in~cond; {2780#true} is VALID [2022-04-27 12:51:19,644 INFO L290 TraceCheckUtils]: 31: Hoare triple {2780#true} assume !(0 == ~cond); {2780#true} is VALID [2022-04-27 12:51:19,644 INFO L290 TraceCheckUtils]: 32: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:51:19,644 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2780#true} {2780#true} #74#return; {2780#true} is VALID [2022-04-27 12:51:19,644 INFO L272 TraceCheckUtils]: 34: Hoare triple {2780#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2780#true} is VALID [2022-04-27 12:51:19,645 INFO L290 TraceCheckUtils]: 35: Hoare triple {2780#true} ~cond := #in~cond; {2890#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:51:19,645 INFO L290 TraceCheckUtils]: 36: Hoare triple {2890#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {2894#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:51:19,646 INFO L290 TraceCheckUtils]: 37: Hoare triple {2894#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2894#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:51:19,647 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {2894#(not (= |__VERIFIER_assert_#in~cond| 0))} {2780#true} #76#return; {2901#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:51:19,647 INFO L272 TraceCheckUtils]: 39: Hoare triple {2901#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2780#true} is VALID [2022-04-27 12:51:19,647 INFO L290 TraceCheckUtils]: 40: Hoare triple {2780#true} ~cond := #in~cond; {2780#true} is VALID [2022-04-27 12:51:19,647 INFO L290 TraceCheckUtils]: 41: Hoare triple {2780#true} assume !(0 == ~cond); {2780#true} is VALID [2022-04-27 12:51:19,647 INFO L290 TraceCheckUtils]: 42: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:51:19,648 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {2780#true} {2901#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #78#return; {2901#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:51:19,648 INFO L290 TraceCheckUtils]: 44: Hoare triple {2901#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !(~a~0 != ~b~0); {2920#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:51:19,649 INFO L272 TraceCheckUtils]: 45: Hoare triple {2920#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {2780#true} is VALID [2022-04-27 12:51:19,649 INFO L290 TraceCheckUtils]: 46: Hoare triple {2780#true} ~cond := #in~cond; {2780#true} is VALID [2022-04-27 12:51:19,649 INFO L290 TraceCheckUtils]: 47: Hoare triple {2780#true} assume !(0 == ~cond); {2780#true} is VALID [2022-04-27 12:51:19,649 INFO L290 TraceCheckUtils]: 48: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:51:19,650 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {2780#true} {2920#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #80#return; {2920#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:51:19,651 INFO L272 TraceCheckUtils]: 50: Hoare triple {2920#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~p~0 * ~x~0 + ~r~0 * ~y~0 - ~b~0 then 1 else 0)); {2939#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:51:19,651 INFO L290 TraceCheckUtils]: 51: Hoare triple {2939#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2943#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:51:19,651 INFO L290 TraceCheckUtils]: 52: Hoare triple {2943#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2781#false} is VALID [2022-04-27 12:51:19,651 INFO L290 TraceCheckUtils]: 53: Hoare triple {2781#false} assume !false; {2781#false} is VALID [2022-04-27 12:51:19,652 INFO L134 CoverageAnalysis]: Checked inductivity of 56 backedges. 10 proven. 7 refuted. 0 times theorem prover too weak. 39 trivial. 0 not checked. [2022-04-27 12:51:19,652 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:51:33,958 INFO L290 TraceCheckUtils]: 53: Hoare triple {2781#false} assume !false; {2781#false} is VALID [2022-04-27 12:51:33,959 INFO L290 TraceCheckUtils]: 52: Hoare triple {2943#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2781#false} is VALID [2022-04-27 12:51:33,960 INFO L290 TraceCheckUtils]: 51: Hoare triple {2939#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2943#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:51:33,962 INFO L272 TraceCheckUtils]: 50: Hoare triple {2920#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~p~0 * ~x~0 + ~r~0 * ~y~0 - ~b~0 then 1 else 0)); {2939#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:51:33,968 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {2780#true} {2920#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #80#return; {2920#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:51:33,968 INFO L290 TraceCheckUtils]: 48: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:51:33,968 INFO L290 TraceCheckUtils]: 47: Hoare triple {2780#true} assume !(0 == ~cond); {2780#true} is VALID [2022-04-27 12:51:33,968 INFO L290 TraceCheckUtils]: 46: Hoare triple {2780#true} ~cond := #in~cond; {2780#true} is VALID [2022-04-27 12:51:33,968 INFO L272 TraceCheckUtils]: 45: Hoare triple {2920#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {2780#true} is VALID [2022-04-27 12:51:33,969 INFO L290 TraceCheckUtils]: 44: Hoare triple {2901#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !(~a~0 != ~b~0); {2920#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:51:33,969 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {2780#true} {2901#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #78#return; {2901#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:51:33,969 INFO L290 TraceCheckUtils]: 42: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:51:33,970 INFO L290 TraceCheckUtils]: 41: Hoare triple {2780#true} assume !(0 == ~cond); {2780#true} is VALID [2022-04-27 12:51:33,970 INFO L290 TraceCheckUtils]: 40: Hoare triple {2780#true} ~cond := #in~cond; {2780#true} is VALID [2022-04-27 12:51:33,970 INFO L272 TraceCheckUtils]: 39: Hoare triple {2901#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2780#true} is VALID [2022-04-27 12:51:33,971 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {2894#(not (= |__VERIFIER_assert_#in~cond| 0))} {2780#true} #76#return; {2901#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:51:33,971 INFO L290 TraceCheckUtils]: 37: Hoare triple {2894#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2894#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:51:33,971 INFO L290 TraceCheckUtils]: 36: Hoare triple {3004#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {2894#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:51:33,972 INFO L290 TraceCheckUtils]: 35: Hoare triple {2780#true} ~cond := #in~cond; {3004#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 12:51:33,972 INFO L272 TraceCheckUtils]: 34: Hoare triple {2780#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2780#true} is VALID [2022-04-27 12:51:33,972 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2780#true} {2780#true} #74#return; {2780#true} is VALID [2022-04-27 12:51:33,972 INFO L290 TraceCheckUtils]: 32: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:51:33,972 INFO L290 TraceCheckUtils]: 31: Hoare triple {2780#true} assume !(0 == ~cond); {2780#true} is VALID [2022-04-27 12:51:33,972 INFO L290 TraceCheckUtils]: 30: Hoare triple {2780#true} ~cond := #in~cond; {2780#true} is VALID [2022-04-27 12:51:33,972 INFO L272 TraceCheckUtils]: 29: Hoare triple {2780#true} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {2780#true} is VALID [2022-04-27 12:51:33,972 INFO L290 TraceCheckUtils]: 28: Hoare triple {2780#true} assume !false; {2780#true} is VALID [2022-04-27 12:51:33,973 INFO L290 TraceCheckUtils]: 27: Hoare triple {2780#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2780#true} is VALID [2022-04-27 12:51:33,973 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2780#true} {2780#true} #72#return; {2780#true} is VALID [2022-04-27 12:51:33,973 INFO L290 TraceCheckUtils]: 25: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:51:33,973 INFO L290 TraceCheckUtils]: 24: Hoare triple {2780#true} assume !(0 == ~cond); {2780#true} is VALID [2022-04-27 12:51:33,973 INFO L290 TraceCheckUtils]: 23: Hoare triple {2780#true} ~cond := #in~cond; {2780#true} is VALID [2022-04-27 12:51:33,973 INFO L272 TraceCheckUtils]: 22: Hoare triple {2780#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2780#true} is VALID [2022-04-27 12:51:33,973 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2780#true} {2780#true} #70#return; {2780#true} is VALID [2022-04-27 12:51:33,973 INFO L290 TraceCheckUtils]: 20: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:51:33,973 INFO L290 TraceCheckUtils]: 19: Hoare triple {2780#true} assume !(0 == ~cond); {2780#true} is VALID [2022-04-27 12:51:33,973 INFO L290 TraceCheckUtils]: 18: Hoare triple {2780#true} ~cond := #in~cond; {2780#true} is VALID [2022-04-27 12:51:33,973 INFO L272 TraceCheckUtils]: 17: Hoare triple {2780#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2780#true} is VALID [2022-04-27 12:51:33,974 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2780#true} {2780#true} #68#return; {2780#true} is VALID [2022-04-27 12:51:33,974 INFO L290 TraceCheckUtils]: 15: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:51:33,974 INFO L290 TraceCheckUtils]: 14: Hoare triple {2780#true} assume !(0 == ~cond); {2780#true} is VALID [2022-04-27 12:51:33,974 INFO L290 TraceCheckUtils]: 13: Hoare triple {2780#true} ~cond := #in~cond; {2780#true} is VALID [2022-04-27 12:51:33,974 INFO L272 TraceCheckUtils]: 12: Hoare triple {2780#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {2780#true} is VALID [2022-04-27 12:51:33,974 INFO L290 TraceCheckUtils]: 11: Hoare triple {2780#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2780#true} is VALID [2022-04-27 12:51:33,974 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2780#true} {2780#true} #66#return; {2780#true} is VALID [2022-04-27 12:51:33,974 INFO L290 TraceCheckUtils]: 9: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:51:33,974 INFO L290 TraceCheckUtils]: 8: Hoare triple {2780#true} assume !(0 == ~cond); {2780#true} is VALID [2022-04-27 12:51:33,975 INFO L290 TraceCheckUtils]: 7: Hoare triple {2780#true} ~cond := #in~cond; {2780#true} is VALID [2022-04-27 12:51:33,975 INFO L272 TraceCheckUtils]: 6: Hoare triple {2780#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {2780#true} is VALID [2022-04-27 12:51:33,975 INFO L290 TraceCheckUtils]: 5: Hoare triple {2780#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2780#true} is VALID [2022-04-27 12:51:33,975 INFO L272 TraceCheckUtils]: 4: Hoare triple {2780#true} call #t~ret6 := main(); {2780#true} is VALID [2022-04-27 12:51:33,975 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2780#true} {2780#true} #88#return; {2780#true} is VALID [2022-04-27 12:51:33,975 INFO L290 TraceCheckUtils]: 2: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:51:33,975 INFO L290 TraceCheckUtils]: 1: Hoare triple {2780#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(10, 2);call #Ultimate.allocInit(12, 3); {2780#true} is VALID [2022-04-27 12:51:33,975 INFO L272 TraceCheckUtils]: 0: Hoare triple {2780#true} call ULTIMATE.init(); {2780#true} is VALID [2022-04-27 12:51:33,975 INFO L134 CoverageAnalysis]: Checked inductivity of 56 backedges. 10 proven. 7 refuted. 0 times theorem prover too weak. 39 trivial. 0 not checked. [2022-04-27 12:51:33,976 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:51:33,976 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1976028788] [2022-04-27 12:51:33,976 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:51:33,976 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2047422583] [2022-04-27 12:51:33,976 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2047422583] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 12:51:33,976 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 12:51:33,976 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-27 12:51:33,976 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1559904215] [2022-04-27 12:51:33,976 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 12:51:33,977 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) Word has length 54 [2022-04-27 12:51:33,977 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:51:33,977 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-27 12:51:34,008 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:51:34,008 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-27 12:51:34,008 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:51:34,009 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-27 12:51:34,009 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-04-27 12:51:34,009 INFO L87 Difference]: Start difference. First operand 65 states and 84 transitions. Second operand has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-27 12:51:34,591 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:51:34,591 INFO L93 Difference]: Finished difference Result 74 states and 94 transitions. [2022-04-27 12:51:34,591 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-27 12:51:34,591 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) Word has length 54 [2022-04-27 12:51:34,592 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:51:34,592 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-27 12:51:34,593 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 52 transitions. [2022-04-27 12:51:34,593 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-27 12:51:34,595 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 52 transitions. [2022-04-27 12:51:34,595 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 52 transitions. [2022-04-27 12:51:34,648 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:51:34,650 INFO L225 Difference]: With dead ends: 74 [2022-04-27 12:51:34,650 INFO L226 Difference]: Without dead ends: 70 [2022-04-27 12:51:34,650 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 110 GetRequests, 99 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2022-04-27 12:51:34,651 INFO L413 NwaCegarLoop]: 31 mSDtfsCounter, 18 mSDsluCounter, 78 mSDsCounter, 0 mSdLazyCounter, 106 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 19 SdHoareTripleChecker+Valid, 109 SdHoareTripleChecker+Invalid, 120 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 106 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 12:51:34,651 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [19 Valid, 109 Invalid, 120 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 106 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 12:51:34,652 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 70 states. [2022-04-27 12:51:34,739 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 70 to 70. [2022-04-27 12:51:34,739 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:51:34,739 INFO L82 GeneralOperation]: Start isEquivalent. First operand 70 states. Second operand has 70 states, 37 states have (on average 1.135135135135135) internal successors, (42), 40 states have internal predecessors, (42), 24 states have call successors, (24), 9 states have call predecessors, (24), 8 states have return successors, (22), 20 states have call predecessors, (22), 22 states have call successors, (22) [2022-04-27 12:51:34,739 INFO L74 IsIncluded]: Start isIncluded. First operand 70 states. Second operand has 70 states, 37 states have (on average 1.135135135135135) internal successors, (42), 40 states have internal predecessors, (42), 24 states have call successors, (24), 9 states have call predecessors, (24), 8 states have return successors, (22), 20 states have call predecessors, (22), 22 states have call successors, (22) [2022-04-27 12:51:34,740 INFO L87 Difference]: Start difference. First operand 70 states. Second operand has 70 states, 37 states have (on average 1.135135135135135) internal successors, (42), 40 states have internal predecessors, (42), 24 states have call successors, (24), 9 states have call predecessors, (24), 8 states have return successors, (22), 20 states have call predecessors, (22), 22 states have call successors, (22) [2022-04-27 12:51:34,742 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:51:34,742 INFO L93 Difference]: Finished difference Result 70 states and 88 transitions. [2022-04-27 12:51:34,743 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 88 transitions. [2022-04-27 12:51:34,743 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:51:34,743 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:51:34,743 INFO L74 IsIncluded]: Start isIncluded. First operand has 70 states, 37 states have (on average 1.135135135135135) internal successors, (42), 40 states have internal predecessors, (42), 24 states have call successors, (24), 9 states have call predecessors, (24), 8 states have return successors, (22), 20 states have call predecessors, (22), 22 states have call successors, (22) Second operand 70 states. [2022-04-27 12:51:34,744 INFO L87 Difference]: Start difference. First operand has 70 states, 37 states have (on average 1.135135135135135) internal successors, (42), 40 states have internal predecessors, (42), 24 states have call successors, (24), 9 states have call predecessors, (24), 8 states have return successors, (22), 20 states have call predecessors, (22), 22 states have call successors, (22) Second operand 70 states. [2022-04-27 12:51:34,747 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:51:34,747 INFO L93 Difference]: Finished difference Result 70 states and 88 transitions. [2022-04-27 12:51:34,747 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 88 transitions. [2022-04-27 12:51:34,747 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:51:34,747 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:51:34,747 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:51:34,747 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:51:34,748 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 70 states, 37 states have (on average 1.135135135135135) internal successors, (42), 40 states have internal predecessors, (42), 24 states have call successors, (24), 9 states have call predecessors, (24), 8 states have return successors, (22), 20 states have call predecessors, (22), 22 states have call successors, (22) [2022-04-27 12:51:34,750 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 88 transitions. [2022-04-27 12:51:34,750 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 88 transitions. Word has length 54 [2022-04-27 12:51:34,751 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:51:34,751 INFO L495 AbstractCegarLoop]: Abstraction has 70 states and 88 transitions. [2022-04-27 12:51:34,751 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-27 12:51:34,751 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 88 transitions. [2022-04-27 12:51:34,751 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 62 [2022-04-27 12:51:34,752 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:51:34,752 INFO L195 NwaCegarLoop]: trace histogram [6, 5, 5, 4, 4, 4, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:51:34,778 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-27 12:51:34,967 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:51:34,968 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:51:34,968 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:51:34,968 INFO L85 PathProgramCache]: Analyzing trace with hash 888099957, now seen corresponding path program 1 times [2022-04-27 12:51:34,968 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:51:34,968 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [264582538] [2022-04-27 12:51:34,968 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:51:34,968 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:51:34,994 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:51:34,995 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1722112167] [2022-04-27 12:51:34,995 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:51:34,995 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:51:34,995 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:51:34,996 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:51:35,003 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-27 12:51:35,041 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:51:35,041 INFO L263 TraceCheckSpWp]: Trace formula consists of 159 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-27 12:51:35,052 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:51:35,053 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:51:35,422 INFO L272 TraceCheckUtils]: 0: Hoare triple {3478#true} call ULTIMATE.init(); {3478#true} is VALID [2022-04-27 12:51:35,423 INFO L290 TraceCheckUtils]: 1: Hoare triple {3478#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(10, 2);call #Ultimate.allocInit(12, 3); {3478#true} is VALID [2022-04-27 12:51:35,423 INFO L290 TraceCheckUtils]: 2: Hoare triple {3478#true} assume true; {3478#true} is VALID [2022-04-27 12:51:35,423 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3478#true} {3478#true} #88#return; {3478#true} is VALID [2022-04-27 12:51:35,423 INFO L272 TraceCheckUtils]: 4: Hoare triple {3478#true} call #t~ret6 := main(); {3478#true} is VALID [2022-04-27 12:51:35,423 INFO L290 TraceCheckUtils]: 5: Hoare triple {3478#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {3478#true} is VALID [2022-04-27 12:51:35,423 INFO L272 TraceCheckUtils]: 6: Hoare triple {3478#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {3478#true} is VALID [2022-04-27 12:51:35,423 INFO L290 TraceCheckUtils]: 7: Hoare triple {3478#true} ~cond := #in~cond; {3478#true} is VALID [2022-04-27 12:51:35,423 INFO L290 TraceCheckUtils]: 8: Hoare triple {3478#true} assume !(0 == ~cond); {3478#true} is VALID [2022-04-27 12:51:35,423 INFO L290 TraceCheckUtils]: 9: Hoare triple {3478#true} assume true; {3478#true} is VALID [2022-04-27 12:51:35,423 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3478#true} {3478#true} #66#return; {3478#true} is VALID [2022-04-27 12:51:35,423 INFO L290 TraceCheckUtils]: 11: Hoare triple {3478#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3478#true} is VALID [2022-04-27 12:51:35,424 INFO L272 TraceCheckUtils]: 12: Hoare triple {3478#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {3478#true} is VALID [2022-04-27 12:51:35,424 INFO L290 TraceCheckUtils]: 13: Hoare triple {3478#true} ~cond := #in~cond; {3522#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 12:51:35,425 INFO L290 TraceCheckUtils]: 14: Hoare triple {3522#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3526#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:51:35,425 INFO L290 TraceCheckUtils]: 15: Hoare triple {3526#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3526#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:51:35,426 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3526#(not (= |assume_abort_if_not_#in~cond| 0))} {3478#true} #68#return; {3533#(and (<= 0 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-27 12:51:35,426 INFO L272 TraceCheckUtils]: 17: Hoare triple {3533#(and (<= 0 main_~y~0) (<= main_~y~0 1))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3478#true} is VALID [2022-04-27 12:51:35,426 INFO L290 TraceCheckUtils]: 18: Hoare triple {3478#true} ~cond := #in~cond; {3522#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 12:51:35,427 INFO L290 TraceCheckUtils]: 19: Hoare triple {3522#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3526#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:51:35,427 INFO L290 TraceCheckUtils]: 20: Hoare triple {3526#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3526#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:51:35,428 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3526#(not (= |assume_abort_if_not_#in~cond| 0))} {3533#(and (<= 0 main_~y~0) (<= main_~y~0 1))} #70#return; {3549#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 1))} is VALID [2022-04-27 12:51:35,428 INFO L272 TraceCheckUtils]: 22: Hoare triple {3549#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 1))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3478#true} is VALID [2022-04-27 12:51:35,428 INFO L290 TraceCheckUtils]: 23: Hoare triple {3478#true} ~cond := #in~cond; {3478#true} is VALID [2022-04-27 12:51:35,428 INFO L290 TraceCheckUtils]: 24: Hoare triple {3478#true} assume !(0 == ~cond); {3478#true} is VALID [2022-04-27 12:51:35,440 INFO L290 TraceCheckUtils]: 25: Hoare triple {3478#true} assume true; {3478#true} is VALID [2022-04-27 12:51:35,441 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3478#true} {3549#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 1))} #72#return; {3549#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 1))} is VALID [2022-04-27 12:51:35,442 INFO L290 TraceCheckUtils]: 27: Hoare triple {3549#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 1))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3568#(and (<= main_~b~0 1) (<= 1 main_~a~0))} is VALID [2022-04-27 12:51:35,442 INFO L290 TraceCheckUtils]: 28: Hoare triple {3568#(and (<= main_~b~0 1) (<= 1 main_~a~0))} assume !false; {3568#(and (<= main_~b~0 1) (<= 1 main_~a~0))} is VALID [2022-04-27 12:51:35,442 INFO L272 TraceCheckUtils]: 29: Hoare triple {3568#(and (<= main_~b~0 1) (<= 1 main_~a~0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {3478#true} is VALID [2022-04-27 12:51:35,442 INFO L290 TraceCheckUtils]: 30: Hoare triple {3478#true} ~cond := #in~cond; {3478#true} is VALID [2022-04-27 12:51:35,442 INFO L290 TraceCheckUtils]: 31: Hoare triple {3478#true} assume !(0 == ~cond); {3478#true} is VALID [2022-04-27 12:51:35,442 INFO L290 TraceCheckUtils]: 32: Hoare triple {3478#true} assume true; {3478#true} is VALID [2022-04-27 12:51:35,443 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {3478#true} {3568#(and (<= main_~b~0 1) (<= 1 main_~a~0))} #74#return; {3568#(and (<= main_~b~0 1) (<= 1 main_~a~0))} is VALID [2022-04-27 12:51:35,443 INFO L272 TraceCheckUtils]: 34: Hoare triple {3568#(and (<= main_~b~0 1) (<= 1 main_~a~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3478#true} is VALID [2022-04-27 12:51:35,443 INFO L290 TraceCheckUtils]: 35: Hoare triple {3478#true} ~cond := #in~cond; {3478#true} is VALID [2022-04-27 12:51:35,443 INFO L290 TraceCheckUtils]: 36: Hoare triple {3478#true} assume !(0 == ~cond); {3478#true} is VALID [2022-04-27 12:51:35,443 INFO L290 TraceCheckUtils]: 37: Hoare triple {3478#true} assume true; {3478#true} is VALID [2022-04-27 12:51:35,444 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {3478#true} {3568#(and (<= main_~b~0 1) (<= 1 main_~a~0))} #76#return; {3568#(and (<= main_~b~0 1) (<= 1 main_~a~0))} is VALID [2022-04-27 12:51:35,444 INFO L272 TraceCheckUtils]: 39: Hoare triple {3568#(and (<= main_~b~0 1) (<= 1 main_~a~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3478#true} is VALID [2022-04-27 12:51:35,444 INFO L290 TraceCheckUtils]: 40: Hoare triple {3478#true} ~cond := #in~cond; {3478#true} is VALID [2022-04-27 12:51:35,444 INFO L290 TraceCheckUtils]: 41: Hoare triple {3478#true} assume !(0 == ~cond); {3478#true} is VALID [2022-04-27 12:51:35,444 INFO L290 TraceCheckUtils]: 42: Hoare triple {3478#true} assume true; {3478#true} is VALID [2022-04-27 12:51:35,445 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {3478#true} {3568#(and (<= main_~b~0 1) (<= 1 main_~a~0))} #78#return; {3568#(and (<= main_~b~0 1) (<= 1 main_~a~0))} is VALID [2022-04-27 12:51:35,445 INFO L290 TraceCheckUtils]: 44: Hoare triple {3568#(and (<= main_~b~0 1) (<= 1 main_~a~0))} assume !!(~a~0 != ~b~0); {3620#(and (<= main_~b~0 1) (<= 1 main_~a~0) (not (= main_~b~0 main_~a~0)))} is VALID [2022-04-27 12:51:35,446 INFO L290 TraceCheckUtils]: 45: Hoare triple {3620#(and (<= main_~b~0 1) (<= 1 main_~a~0) (not (= main_~b~0 main_~a~0)))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {3479#false} is VALID [2022-04-27 12:51:35,446 INFO L290 TraceCheckUtils]: 46: Hoare triple {3479#false} assume !false; {3479#false} is VALID [2022-04-27 12:51:35,446 INFO L272 TraceCheckUtils]: 47: Hoare triple {3479#false} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {3479#false} is VALID [2022-04-27 12:51:35,446 INFO L290 TraceCheckUtils]: 48: Hoare triple {3479#false} ~cond := #in~cond; {3479#false} is VALID [2022-04-27 12:51:35,446 INFO L290 TraceCheckUtils]: 49: Hoare triple {3479#false} assume !(0 == ~cond); {3479#false} is VALID [2022-04-27 12:51:35,446 INFO L290 TraceCheckUtils]: 50: Hoare triple {3479#false} assume true; {3479#false} is VALID [2022-04-27 12:51:35,446 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {3479#false} {3479#false} #74#return; {3479#false} is VALID [2022-04-27 12:51:35,446 INFO L272 TraceCheckUtils]: 52: Hoare triple {3479#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3479#false} is VALID [2022-04-27 12:51:35,446 INFO L290 TraceCheckUtils]: 53: Hoare triple {3479#false} ~cond := #in~cond; {3479#false} is VALID [2022-04-27 12:51:35,446 INFO L290 TraceCheckUtils]: 54: Hoare triple {3479#false} assume !(0 == ~cond); {3479#false} is VALID [2022-04-27 12:51:35,447 INFO L290 TraceCheckUtils]: 55: Hoare triple {3479#false} assume true; {3479#false} is VALID [2022-04-27 12:51:35,447 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {3479#false} {3479#false} #76#return; {3479#false} is VALID [2022-04-27 12:51:35,447 INFO L272 TraceCheckUtils]: 57: Hoare triple {3479#false} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3479#false} is VALID [2022-04-27 12:51:35,447 INFO L290 TraceCheckUtils]: 58: Hoare triple {3479#false} ~cond := #in~cond; {3479#false} is VALID [2022-04-27 12:51:35,447 INFO L290 TraceCheckUtils]: 59: Hoare triple {3479#false} assume 0 == ~cond; {3479#false} is VALID [2022-04-27 12:51:35,447 INFO L290 TraceCheckUtils]: 60: Hoare triple {3479#false} assume !false; {3479#false} is VALID [2022-04-27 12:51:35,447 INFO L134 CoverageAnalysis]: Checked inductivity of 78 backedges. 40 proven. 6 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2022-04-27 12:51:35,447 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:51:35,926 INFO L290 TraceCheckUtils]: 60: Hoare triple {3479#false} assume !false; {3479#false} is VALID [2022-04-27 12:51:35,926 INFO L290 TraceCheckUtils]: 59: Hoare triple {3479#false} assume 0 == ~cond; {3479#false} is VALID [2022-04-27 12:51:35,926 INFO L290 TraceCheckUtils]: 58: Hoare triple {3479#false} ~cond := #in~cond; {3479#false} is VALID [2022-04-27 12:51:35,926 INFO L272 TraceCheckUtils]: 57: Hoare triple {3479#false} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3479#false} is VALID [2022-04-27 12:51:35,926 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {3478#true} {3479#false} #76#return; {3479#false} is VALID [2022-04-27 12:51:35,926 INFO L290 TraceCheckUtils]: 55: Hoare triple {3478#true} assume true; {3478#true} is VALID [2022-04-27 12:51:35,927 INFO L290 TraceCheckUtils]: 54: Hoare triple {3478#true} assume !(0 == ~cond); {3478#true} is VALID [2022-04-27 12:51:35,927 INFO L290 TraceCheckUtils]: 53: Hoare triple {3478#true} ~cond := #in~cond; {3478#true} is VALID [2022-04-27 12:51:35,927 INFO L272 TraceCheckUtils]: 52: Hoare triple {3479#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3478#true} is VALID [2022-04-27 12:51:35,927 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {3478#true} {3479#false} #74#return; {3479#false} is VALID [2022-04-27 12:51:35,927 INFO L290 TraceCheckUtils]: 50: Hoare triple {3478#true} assume true; {3478#true} is VALID [2022-04-27 12:51:35,927 INFO L290 TraceCheckUtils]: 49: Hoare triple {3478#true} assume !(0 == ~cond); {3478#true} is VALID [2022-04-27 12:51:35,927 INFO L290 TraceCheckUtils]: 48: Hoare triple {3478#true} ~cond := #in~cond; {3478#true} is VALID [2022-04-27 12:51:35,927 INFO L272 TraceCheckUtils]: 47: Hoare triple {3479#false} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {3478#true} is VALID [2022-04-27 12:51:35,927 INFO L290 TraceCheckUtils]: 46: Hoare triple {3479#false} assume !false; {3479#false} is VALID [2022-04-27 12:51:35,927 INFO L290 TraceCheckUtils]: 45: Hoare triple {3714#(< main_~b~0 main_~a~0)} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {3479#false} is VALID [2022-04-27 12:51:35,928 INFO L290 TraceCheckUtils]: 44: Hoare triple {3718#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} assume !!(~a~0 != ~b~0); {3714#(< main_~b~0 main_~a~0)} is VALID [2022-04-27 12:51:35,928 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {3478#true} {3718#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} #78#return; {3718#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} is VALID [2022-04-27 12:51:35,929 INFO L290 TraceCheckUtils]: 42: Hoare triple {3478#true} assume true; {3478#true} is VALID [2022-04-27 12:51:35,929 INFO L290 TraceCheckUtils]: 41: Hoare triple {3478#true} assume !(0 == ~cond); {3478#true} is VALID [2022-04-27 12:51:35,929 INFO L290 TraceCheckUtils]: 40: Hoare triple {3478#true} ~cond := #in~cond; {3478#true} is VALID [2022-04-27 12:51:35,929 INFO L272 TraceCheckUtils]: 39: Hoare triple {3718#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3478#true} is VALID [2022-04-27 12:51:35,929 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {3478#true} {3718#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} #76#return; {3718#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} is VALID [2022-04-27 12:51:35,929 INFO L290 TraceCheckUtils]: 37: Hoare triple {3478#true} assume true; {3478#true} is VALID [2022-04-27 12:51:35,930 INFO L290 TraceCheckUtils]: 36: Hoare triple {3478#true} assume !(0 == ~cond); {3478#true} is VALID [2022-04-27 12:51:35,930 INFO L290 TraceCheckUtils]: 35: Hoare triple {3478#true} ~cond := #in~cond; {3478#true} is VALID [2022-04-27 12:51:35,930 INFO L272 TraceCheckUtils]: 34: Hoare triple {3718#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3478#true} is VALID [2022-04-27 12:51:35,931 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {3478#true} {3718#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} #74#return; {3718#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} is VALID [2022-04-27 12:51:35,931 INFO L290 TraceCheckUtils]: 32: Hoare triple {3478#true} assume true; {3478#true} is VALID [2022-04-27 12:51:35,931 INFO L290 TraceCheckUtils]: 31: Hoare triple {3478#true} assume !(0 == ~cond); {3478#true} is VALID [2022-04-27 12:51:35,931 INFO L290 TraceCheckUtils]: 30: Hoare triple {3478#true} ~cond := #in~cond; {3478#true} is VALID [2022-04-27 12:51:35,931 INFO L272 TraceCheckUtils]: 29: Hoare triple {3718#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {3478#true} is VALID [2022-04-27 12:51:35,932 INFO L290 TraceCheckUtils]: 28: Hoare triple {3718#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} assume !false; {3718#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} is VALID [2022-04-27 12:51:35,932 INFO L290 TraceCheckUtils]: 27: Hoare triple {3770#(<= main_~y~0 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3718#(or (< main_~b~0 main_~a~0) (= main_~b~0 main_~a~0))} is VALID [2022-04-27 12:51:35,934 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3478#true} {3770#(<= main_~y~0 main_~x~0)} #72#return; {3770#(<= main_~y~0 main_~x~0)} is VALID [2022-04-27 12:51:35,934 INFO L290 TraceCheckUtils]: 25: Hoare triple {3478#true} assume true; {3478#true} is VALID [2022-04-27 12:51:35,934 INFO L290 TraceCheckUtils]: 24: Hoare triple {3478#true} assume !(0 == ~cond); {3478#true} is VALID [2022-04-27 12:51:35,934 INFO L290 TraceCheckUtils]: 23: Hoare triple {3478#true} ~cond := #in~cond; {3478#true} is VALID [2022-04-27 12:51:35,934 INFO L272 TraceCheckUtils]: 22: Hoare triple {3770#(<= main_~y~0 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3478#true} is VALID [2022-04-27 12:51:35,935 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3526#(not (= |assume_abort_if_not_#in~cond| 0))} {3789#(<= main_~y~0 1)} #70#return; {3770#(<= main_~y~0 main_~x~0)} is VALID [2022-04-27 12:51:35,935 INFO L290 TraceCheckUtils]: 20: Hoare triple {3526#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3526#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:51:35,935 INFO L290 TraceCheckUtils]: 19: Hoare triple {3799#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {3526#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:51:35,936 INFO L290 TraceCheckUtils]: 18: Hoare triple {3478#true} ~cond := #in~cond; {3799#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-27 12:51:35,936 INFO L272 TraceCheckUtils]: 17: Hoare triple {3789#(<= main_~y~0 1)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3478#true} is VALID [2022-04-27 12:51:35,936 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3526#(not (= |assume_abort_if_not_#in~cond| 0))} {3478#true} #68#return; {3789#(<= main_~y~0 1)} is VALID [2022-04-27 12:51:35,937 INFO L290 TraceCheckUtils]: 15: Hoare triple {3526#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3526#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:51:35,937 INFO L290 TraceCheckUtils]: 14: Hoare triple {3799#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {3526#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:51:35,937 INFO L290 TraceCheckUtils]: 13: Hoare triple {3478#true} ~cond := #in~cond; {3799#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-27 12:51:35,937 INFO L272 TraceCheckUtils]: 12: Hoare triple {3478#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {3478#true} is VALID [2022-04-27 12:51:35,937 INFO L290 TraceCheckUtils]: 11: Hoare triple {3478#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3478#true} is VALID [2022-04-27 12:51:35,938 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3478#true} {3478#true} #66#return; {3478#true} is VALID [2022-04-27 12:51:35,938 INFO L290 TraceCheckUtils]: 9: Hoare triple {3478#true} assume true; {3478#true} is VALID [2022-04-27 12:51:35,938 INFO L290 TraceCheckUtils]: 8: Hoare triple {3478#true} assume !(0 == ~cond); {3478#true} is VALID [2022-04-27 12:51:35,938 INFO L290 TraceCheckUtils]: 7: Hoare triple {3478#true} ~cond := #in~cond; {3478#true} is VALID [2022-04-27 12:51:35,938 INFO L272 TraceCheckUtils]: 6: Hoare triple {3478#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {3478#true} is VALID [2022-04-27 12:51:35,938 INFO L290 TraceCheckUtils]: 5: Hoare triple {3478#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {3478#true} is VALID [2022-04-27 12:51:35,938 INFO L272 TraceCheckUtils]: 4: Hoare triple {3478#true} call #t~ret6 := main(); {3478#true} is VALID [2022-04-27 12:51:35,938 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3478#true} {3478#true} #88#return; {3478#true} is VALID [2022-04-27 12:51:35,938 INFO L290 TraceCheckUtils]: 2: Hoare triple {3478#true} assume true; {3478#true} is VALID [2022-04-27 12:51:35,938 INFO L290 TraceCheckUtils]: 1: Hoare triple {3478#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(10, 2);call #Ultimate.allocInit(12, 3); {3478#true} is VALID [2022-04-27 12:51:35,938 INFO L272 TraceCheckUtils]: 0: Hoare triple {3478#true} call ULTIMATE.init(); {3478#true} is VALID [2022-04-27 12:51:35,939 INFO L134 CoverageAnalysis]: Checked inductivity of 78 backedges. 20 proven. 6 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-27 12:51:35,939 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:51:35,939 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [264582538] [2022-04-27 12:51:35,939 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:51:35,939 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1722112167] [2022-04-27 12:51:35,939 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1722112167] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 12:51:35,939 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 12:51:35,939 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 13 [2022-04-27 12:51:35,939 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [460799320] [2022-04-27 12:51:35,939 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 12:51:35,940 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 9 states have internal predecessors, (29), 8 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (18), 8 states have call predecessors, (18), 8 states have call successors, (18) Word has length 61 [2022-04-27 12:51:35,941 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:51:35,941 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 9 states have internal predecessors, (29), 8 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (18), 8 states have call predecessors, (18), 8 states have call successors, (18) [2022-04-27 12:51:35,994 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:51:35,994 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-27 12:51:35,994 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:51:35,994 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-27 12:51:35,994 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=34, Invalid=122, Unknown=0, NotChecked=0, Total=156 [2022-04-27 12:51:35,995 INFO L87 Difference]: Start difference. First operand 70 states and 88 transitions. Second operand has 13 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 9 states have internal predecessors, (29), 8 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (18), 8 states have call predecessors, (18), 8 states have call successors, (18) [2022-04-27 12:51:36,320 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:51:36,320 INFO L93 Difference]: Finished difference Result 78 states and 94 transitions. [2022-04-27 12:51:36,320 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-27 12:51:36,320 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 9 states have internal predecessors, (29), 8 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (18), 8 states have call predecessors, (18), 8 states have call successors, (18) Word has length 61 [2022-04-27 12:51:36,321 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:51:36,321 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 9 states have internal predecessors, (29), 8 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (18), 8 states have call predecessors, (18), 8 states have call successors, (18) [2022-04-27 12:51:36,322 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 54 transitions. [2022-04-27 12:51:36,323 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 9 states have internal predecessors, (29), 8 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (18), 8 states have call predecessors, (18), 8 states have call successors, (18) [2022-04-27 12:51:36,324 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 54 transitions. [2022-04-27 12:51:36,324 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 54 transitions. [2022-04-27 12:51:36,375 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:51:36,375 INFO L225 Difference]: With dead ends: 78 [2022-04-27 12:51:36,375 INFO L226 Difference]: Without dead ends: 0 [2022-04-27 12:51:36,376 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 124 GetRequests, 110 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 26 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=58, Invalid=182, Unknown=0, NotChecked=0, Total=240 [2022-04-27 12:51:36,376 INFO L413 NwaCegarLoop]: 23 mSDtfsCounter, 14 mSDsluCounter, 100 mSDsCounter, 0 mSdLazyCounter, 82 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 15 SdHoareTripleChecker+Valid, 123 SdHoareTripleChecker+Invalid, 94 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 82 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 12:51:36,377 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [15 Valid, 123 Invalid, 94 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [12 Valid, 82 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 12:51:36,377 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-27 12:51:36,377 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-27 12:51:36,377 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:51:36,377 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-27 12:51:36,377 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-27 12:51:36,377 INFO L87 Difference]: Start difference. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-27 12:51:36,378 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:51:36,378 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-27 12:51:36,378 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-27 12:51:36,378 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:51:36,378 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:51:36,378 INFO L74 IsIncluded]: Start isIncluded. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-27 12:51:36,378 INFO L87 Difference]: Start difference. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-27 12:51:36,378 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:51:36,378 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-27 12:51:36,378 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-27 12:51:36,378 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:51:36,378 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:51:36,378 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:51:36,378 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:51:36,379 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-27 12:51:36,379 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-27 12:51:36,379 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 61 [2022-04-27 12:51:36,379 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:51:36,379 INFO L495 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-27 12:51:36,379 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 9 states have internal predecessors, (29), 8 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (18), 8 states have call predecessors, (18), 8 states have call successors, (18) [2022-04-27 12:51:36,379 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-27 12:51:36,379 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:51:36,382 INFO L805 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-27 12:51:36,408 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-27 12:51:36,595 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:51:36,597 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-04-27 12:51:37,050 INFO L899 garLoopResultBuilder]: For program point reach_errorEXIT(line 4) no Hoare annotation was computed. [2022-04-27 12:51:37,050 INFO L899 garLoopResultBuilder]: For program point reach_errorENTRY(line 4) no Hoare annotation was computed. [2022-04-27 12:51:37,050 INFO L899 garLoopResultBuilder]: For program point reach_errorFINAL(line 4) no Hoare annotation was computed. [2022-04-27 12:51:37,050 INFO L902 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 7 9) the Hoare annotation is: true [2022-04-27 12:51:37,050 INFO L899 garLoopResultBuilder]: For program point L8(line 8) no Hoare annotation was computed. [2022-04-27 12:51:37,050 INFO L899 garLoopResultBuilder]: For program point L8-2(lines 7 9) no Hoare annotation was computed. [2022-04-27 12:51:37,050 INFO L899 garLoopResultBuilder]: For program point assume_abort_if_notEXIT(lines 7 9) no Hoare annotation was computed. [2022-04-27 12:51:37,050 INFO L895 garLoopResultBuilder]: At program point L35-2(lines 35 52) the Hoare annotation is: (and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~x~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~y~0 1) (= main_~p~0 1)) [2022-04-27 12:51:37,051 INFO L895 garLoopResultBuilder]: At program point L25(line 25) the Hoare annotation is: (and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~x~0 1) (<= main_~y~0 1)) [2022-04-27 12:51:37,051 INFO L899 garLoopResultBuilder]: For program point mainEXIT(lines 18 59) no Hoare annotation was computed. [2022-04-27 12:51:37,051 INFO L895 garLoopResultBuilder]: At program point L56(line 56) the Hoare annotation is: (and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (<= main_~y~0 1)) [2022-04-27 12:51:37,051 INFO L895 garLoopResultBuilder]: At program point L54(line 54) the Hoare annotation is: (and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~x~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~y~0 1) (= main_~p~0 1)) [2022-04-27 12:51:37,051 INFO L899 garLoopResultBuilder]: For program point mainFINAL(lines 18 59) no Hoare annotation was computed. [2022-04-27 12:51:37,051 INFO L899 garLoopResultBuilder]: For program point L38(lines 35 52) no Hoare annotation was computed. [2022-04-27 12:51:37,051 INFO L895 garLoopResultBuilder]: At program point L36(line 36) the Hoare annotation is: (and (= main_~s~0 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~x~0 1) (<= 1 main_~a~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~y~0 1) (= main_~p~0 1)) [2022-04-27 12:51:37,051 INFO L895 garLoopResultBuilder]: At program point L36-1(line 36) the Hoare annotation is: (and (= main_~s~0 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~x~0 1) (<= 1 main_~a~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~y~0 1) (= main_~p~0 1)) [2022-04-27 12:51:37,051 INFO L902 garLoopResultBuilder]: At program point mainENTRY(lines 18 59) the Hoare annotation is: true [2022-04-27 12:51:37,051 INFO L899 garLoopResultBuilder]: For program point L26(line 26) no Hoare annotation was computed. [2022-04-27 12:51:37,051 INFO L899 garLoopResultBuilder]: For program point L57(line 57) no Hoare annotation was computed. [2022-04-27 12:51:37,051 INFO L895 garLoopResultBuilder]: At program point L24(line 24) the Hoare annotation is: (and (<= 0 main_~x~0) (<= main_~x~0 1)) [2022-04-27 12:51:37,051 INFO L895 garLoopResultBuilder]: At program point L24-1(line 24) the Hoare annotation is: (and (<= 0 main_~y~0) (<= 0 main_~x~0) (<= main_~x~0 1) (<= main_~y~0 1)) [2022-04-27 12:51:37,051 INFO L895 garLoopResultBuilder]: At program point L55(line 55) the Hoare annotation is: (and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~y~0 1) (= main_~p~0 1)) [2022-04-27 12:51:37,052 INFO L902 garLoopResultBuilder]: At program point L22(line 22) the Hoare annotation is: true [2022-04-27 12:51:37,052 INFO L899 garLoopResultBuilder]: For program point L22-1(line 22) no Hoare annotation was computed. [2022-04-27 12:51:37,052 INFO L899 garLoopResultBuilder]: For program point L43(lines 43 51) no Hoare annotation was computed. [2022-04-27 12:51:37,052 INFO L895 garLoopResultBuilder]: At program point L43-2(lines 35 52) the Hoare annotation is: (and (= main_~s~0 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~x~0 1) (<= 1 main_~a~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~y~0 1) (= main_~p~0 1)) [2022-04-27 12:51:37,052 INFO L895 garLoopResultBuilder]: At program point L37(line 37) the Hoare annotation is: (and (= main_~s~0 1) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~x~0 1) (<= 1 main_~a~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (<= main_~y~0 1) (= main_~p~0 1)) [2022-04-27 12:51:37,052 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.initFINAL(line -1) no Hoare annotation was computed. [2022-04-27 12:51:37,052 INFO L895 garLoopResultBuilder]: At program point ULTIMATE.initENTRY(line -1) the Hoare annotation is: (and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|)) [2022-04-27 12:51:37,052 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.initEXIT(line -1) no Hoare annotation was computed. [2022-04-27 12:51:37,052 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.startEXIT(line -1) no Hoare annotation was computed. [2022-04-27 12:51:37,052 INFO L902 garLoopResultBuilder]: At program point L-1(line -1) the Hoare annotation is: true [2022-04-27 12:51:37,052 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2022-04-27 12:51:37,052 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.startFINAL(line -1) no Hoare annotation was computed. [2022-04-27 12:51:37,052 INFO L902 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 10 16) the Hoare annotation is: true [2022-04-27 12:51:37,052 INFO L899 garLoopResultBuilder]: For program point L12(lines 12 13) no Hoare annotation was computed. [2022-04-27 12:51:37,052 INFO L899 garLoopResultBuilder]: For program point L11(lines 11 14) no Hoare annotation was computed. [2022-04-27 12:51:37,052 INFO L899 garLoopResultBuilder]: For program point __VERIFIER_assertEXIT(lines 10 16) no Hoare annotation was computed. [2022-04-27 12:51:37,053 INFO L899 garLoopResultBuilder]: For program point L11-2(lines 10 16) no Hoare annotation was computed. [2022-04-27 12:51:37,053 INFO L899 garLoopResultBuilder]: For program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 13) no Hoare annotation was computed. [2022-04-27 12:51:37,055 INFO L356 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:51:37,057 INFO L176 ceAbstractionStarter]: Computing trace abstraction results [2022-04-27 12:51:37,059 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-27 12:51:37,060 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-27 12:51:37,060 WARN L170 areAnnotationChecker]: L8 has no Hoare annotation [2022-04-27 12:51:37,060 WARN L170 areAnnotationChecker]: L11 has no Hoare annotation [2022-04-27 12:51:37,060 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-27 12:51:37,061 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-27 12:51:37,061 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-27 12:51:37,061 WARN L170 areAnnotationChecker]: L8 has no Hoare annotation [2022-04-27 12:51:37,061 WARN L170 areAnnotationChecker]: L8 has no Hoare annotation [2022-04-27 12:51:37,061 WARN L170 areAnnotationChecker]: L22-1 has no Hoare annotation [2022-04-27 12:51:37,061 WARN L170 areAnnotationChecker]: L11 has no Hoare annotation [2022-04-27 12:51:37,061 WARN L170 areAnnotationChecker]: L11 has no Hoare annotation [2022-04-27 12:51:37,061 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-27 12:51:37,061 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-27 12:51:37,061 WARN L170 areAnnotationChecker]: L8-2 has no Hoare annotation [2022-04-27 12:51:37,061 WARN L170 areAnnotationChecker]: L22-1 has no Hoare annotation [2022-04-27 12:51:37,061 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-27 12:51:37,061 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-27 12:51:37,061 WARN L170 areAnnotationChecker]: L11-2 has no Hoare annotation [2022-04-27 12:51:37,061 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-27 12:51:37,061 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-27 12:51:37,061 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-27 12:51:37,061 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-27 12:51:37,061 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:51:37,061 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:51:37,061 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:51:37,061 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:51:37,061 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:51:37,062 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:51:37,062 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:51:37,062 WARN L170 areAnnotationChecker]: L26 has no Hoare annotation [2022-04-27 12:51:37,062 WARN L170 areAnnotationChecker]: L26 has no Hoare annotation [2022-04-27 12:51:37,062 WARN L170 areAnnotationChecker]: L38 has no Hoare annotation [2022-04-27 12:51:37,062 WARN L170 areAnnotationChecker]: L38 has no Hoare annotation [2022-04-27 12:51:37,062 WARN L170 areAnnotationChecker]: L38 has no Hoare annotation [2022-04-27 12:51:37,062 WARN L170 areAnnotationChecker]: L57 has no Hoare annotation [2022-04-27 12:51:37,062 WARN L170 areAnnotationChecker]: L57 has no Hoare annotation [2022-04-27 12:51:37,066 WARN L170 areAnnotationChecker]: L43 has no Hoare annotation [2022-04-27 12:51:37,066 WARN L170 areAnnotationChecker]: L43 has no Hoare annotation [2022-04-27 12:51:37,066 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-27 12:51:37,066 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-27 12:51:37,066 INFO L163 areAnnotationChecker]: CFG has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-27 12:51:37,079 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 27.04 12:51:37 BoogieIcfgContainer [2022-04-27 12:51:37,079 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-27 12:51:37,080 INFO L158 Benchmark]: Toolchain (without parser) took 96051.28ms. Allocated memory was 178.3MB in the beginning and 213.9MB in the end (delta: 35.7MB). Free memory was 128.2MB in the beginning and 184.3MB in the end (delta: -56.2MB). Peak memory consumption was 97.8MB. Max. memory is 8.0GB. [2022-04-27 12:51:37,081 INFO L158 Benchmark]: CDTParser took 0.12ms. Allocated memory is still 178.3MB. Free memory is still 144.8MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-27 12:51:37,082 INFO L158 Benchmark]: CACSL2BoogieTranslator took 244.72ms. Allocated memory is still 178.3MB. Free memory was 128.0MB in the beginning and 152.6MB in the end (delta: -24.5MB). Peak memory consumption was 13.6MB. Max. memory is 8.0GB. [2022-04-27 12:51:37,082 INFO L158 Benchmark]: Boogie Preprocessor took 24.92ms. Allocated memory is still 178.3MB. Free memory was 152.6MB in the beginning and 150.9MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-27 12:51:37,082 INFO L158 Benchmark]: RCFGBuilder took 314.36ms. Allocated memory is still 178.3MB. Free memory was 150.9MB in the beginning and 139.3MB in the end (delta: 11.6MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-27 12:51:37,082 INFO L158 Benchmark]: TraceAbstraction took 95461.27ms. Allocated memory was 178.3MB in the beginning and 213.9MB in the end (delta: 35.7MB). Free memory was 138.7MB in the beginning and 184.3MB in the end (delta: -45.6MB). Peak memory consumption was 108.5MB. Max. memory is 8.0GB. [2022-04-27 12:51:37,084 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.12ms. Allocated memory is still 178.3MB. Free memory is still 144.8MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 244.72ms. Allocated memory is still 178.3MB. Free memory was 128.0MB in the beginning and 152.6MB in the end (delta: -24.5MB). Peak memory consumption was 13.6MB. Max. memory is 8.0GB. * Boogie Preprocessor took 24.92ms. Allocated memory is still 178.3MB. Free memory was 152.6MB in the beginning and 150.9MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 314.36ms. Allocated memory is still 178.3MB. Free memory was 150.9MB in the beginning and 139.3MB in the end (delta: 11.6MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * TraceAbstraction took 95461.27ms. Allocated memory was 178.3MB in the beginning and 213.9MB in the end (delta: 35.7MB). Free memory was 138.7MB in the beginning and 184.3MB in the end (delta: -45.6MB). Peak memory consumption was 108.5MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - PositiveResult [Line: 13]: call to reach_error is unreachable For all program executions holds that call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data CFG has 6 procedures, 40 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 95.4s, OverallIterations: 8, TraceHistogramMax: 6, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 3.7s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.5s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 190 SdHoareTripleChecker+Valid, 0.9s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 141 mSDsluCounter, 1038 SdHoareTripleChecker+Invalid, 0.9s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 751 mSDsCounter, 100 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 649 IncrementalHoareTripleChecker+Invalid, 749 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 100 mSolverCounterUnsat, 287 mSDtfsCounter, 649 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 529 GetRequests, 461 SyntacticMatches, 3 SemanticMatches, 65 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 74 ImplicationChecksByTransitivity, 0.4s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=74occurred in iteration=5, InterpolantAutomatonStates: 55, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.5s AutomataMinimizationTime, 8 MinimizatonAttempts, 2 StatesRemovedByMinimization, 2 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 18 LocationsWithAnnotation, 65 PreInvPairs, 76 NumberOfFragments, 321 HoareAnnotationTreeSize, 65 FomulaSimplifications, 33 FormulaSimplificationTreeSizeReduction, 0.1s HoareSimplificationTime, 18 FomulaSimplificationsInter, 120 FormulaSimplificationTreeSizeReductionInter, 0.3s HoareSimplificationTimeInter, RefinementEngineStatistics: TRACE_CHECK: 0.1s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 88.1s InterpolantComputationTime, 362 NumberOfCodeBlocks, 362 NumberOfCodeBlocksAsserted, 8 NumberOfCheckSat, 517 ConstructedInterpolants, 0 QuantifiedInterpolants, 1120 SizeOfPredicates, 23 NumberOfNonLiveVariables, 919 ConjunctsInSsa, 89 ConjunctsInUnsatCore, 11 InterpolantComputations, 3 PerfectInterpolantSequences, 454/504 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold - InvariantResult [Line: 35]: Loop Invariant Derived loop invariant: ((((((((s == 1 && a == y * r + p * x) && x <= 1) && 1 <= a) && b == y) && q == 0) && 1 <= y) && a == x) && y <= 1) && p == 1 RESULT: Ultimate proved your program to be correct! [2022-04-27 12:51:37,116 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...