/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/cohendiv-ll_valuebound2.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-07 13:01:45,648 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-07 13:01:45,649 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-07 13:01:45,682 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-07 13:01:45,682 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-07 13:01:45,683 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-07 13:01:45,684 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-07 13:01:45,685 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-07 13:01:45,689 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-07 13:01:45,690 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-07 13:01:45,690 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-07 13:01:45,691 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-07 13:01:45,691 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-07 13:01:45,692 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-07 13:01:45,692 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-07 13:01:45,693 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-07 13:01:45,694 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-07 13:01:45,694 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-07 13:01:45,696 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-07 13:01:45,700 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-07 13:01:45,702 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-07 13:01:45,705 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-07 13:01:45,707 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-07 13:01:45,709 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-07 13:01:45,710 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-07 13:01:45,714 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-07 13:01:45,714 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-07 13:01:45,715 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-07 13:01:45,715 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-07 13:01:45,715 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-07 13:01:45,716 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-07 13:01:45,716 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-07 13:01:45,718 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-07 13:01:45,718 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-07 13:01:45,718 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-07 13:01:45,720 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-07 13:01:45,720 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-07 13:01:45,721 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-07 13:01:45,721 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-07 13:01:45,721 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-07 13:01:45,721 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-07 13:01:45,723 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-07 13:01:45,724 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-07 13:01:45,741 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-07 13:01:45,741 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-07 13:01:45,741 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-04-07 13:01:45,741 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-04-07 13:01:45,742 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-07 13:01:45,742 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-07 13:01:45,742 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-07 13:01:45,742 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-07 13:01:45,742 INFO L138 SettingsManager]: * Use SBE=true [2022-04-07 13:01:45,743 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-07 13:01:45,743 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-07 13:01:45,743 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-07 13:01:45,743 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-07 13:01:45,743 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-07 13:01:45,743 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-07 13:01:45,743 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-07 13:01:45,743 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-07 13:01:45,743 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-07 13:01:45,743 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-07 13:01:45,743 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-07 13:01:45,743 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-07 13:01:45,744 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-07 13:01:45,744 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-07 13:01:45,744 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-07 13:01:45,744 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 13:01:45,744 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-07 13:01:45,744 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-07 13:01:45,744 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-07 13:01:45,744 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-07 13:01:45,744 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-07 13:01:45,744 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-04-07 13:01:45,744 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-04-07 13:01:45,745 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-07 13:01:45,745 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-07 13:01:45,908 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-07 13:01:45,925 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-07 13:01:45,927 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-07 13:01:45,927 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-07 13:01:45,928 INFO L275 PluginConnector]: CDTParser initialized [2022-04-07 13:01:45,928 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_valuebound2.c [2022-04-07 13:01:45,984 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9ff109b08/84acc5ca5b124314a66fe5eeb4993910/FLAG83f711745 [2022-04-07 13:01:46,316 INFO L306 CDTParser]: Found 1 translation units. [2022-04-07 13:01:46,317 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_valuebound2.c [2022-04-07 13:01:46,321 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9ff109b08/84acc5ca5b124314a66fe5eeb4993910/FLAG83f711745 [2022-04-07 13:01:46,330 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9ff109b08/84acc5ca5b124314a66fe5eeb4993910 [2022-04-07 13:01:46,331 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-07 13:01:46,333 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-07 13:01:46,334 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-07 13:01:46,335 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-07 13:01:46,336 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-07 13:01:46,340 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 01:01:46" (1/1) ... [2022-04-07 13:01:46,341 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@455f5821 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:46, skipping insertion in model container [2022-04-07 13:01:46,341 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 01:01:46" (1/1) ... [2022-04-07 13:01:46,345 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-07 13:01:46,356 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-07 13:01:46,466 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/cohendiv-ll_valuebound2.c[576,589] [2022-04-07 13:01:46,477 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 13:01:46,482 INFO L203 MainTranslator]: Completed pre-run [2022-04-07 13:01:46,490 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/cohendiv-ll_valuebound2.c[576,589] [2022-04-07 13:01:46,495 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 13:01:46,502 INFO L208 MainTranslator]: Completed translation [2022-04-07 13:01:46,503 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:46 WrapperNode [2022-04-07 13:01:46,503 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-07 13:01:46,503 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-07 13:01:46,503 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-07 13:01:46,504 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-07 13:01:46,510 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:46" (1/1) ... [2022-04-07 13:01:46,510 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:46" (1/1) ... [2022-04-07 13:01:46,515 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:46" (1/1) ... [2022-04-07 13:01:46,515 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:46" (1/1) ... [2022-04-07 13:01:46,525 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:46" (1/1) ... [2022-04-07 13:01:46,529 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:46" (1/1) ... [2022-04-07 13:01:46,529 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:46" (1/1) ... [2022-04-07 13:01:46,530 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-07 13:01:46,531 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-07 13:01:46,531 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-07 13:01:46,531 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-07 13:01:46,532 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:46" (1/1) ... [2022-04-07 13:01:46,539 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 13:01:46,548 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 13:01:46,557 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-07 13:01:46,575 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-07 13:01:46,586 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-07 13:01:46,587 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-07 13:01:46,587 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-07 13:01:46,587 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-07 13:01:46,589 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-07 13:01:46,589 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-07 13:01:46,589 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-07 13:01:46,589 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-07 13:01:46,589 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-07 13:01:46,589 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-07 13:01:46,589 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-07 13:01:46,589 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-07 13:01:46,589 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-07 13:01:46,589 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-07 13:01:46,590 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-07 13:01:46,590 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-07 13:01:46,590 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-07 13:01:46,590 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-07 13:01:46,590 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-07 13:01:46,590 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-07 13:01:46,633 INFO L234 CfgBuilder]: Building ICFG [2022-04-07 13:01:46,634 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-07 13:01:46,782 INFO L275 CfgBuilder]: Performing block encoding [2022-04-07 13:01:46,788 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-07 13:01:46,788 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-07 13:01:46,789 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 01:01:46 BoogieIcfgContainer [2022-04-07 13:01:46,789 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-07 13:01:46,790 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-07 13:01:46,790 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-07 13:01:46,792 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-07 13:01:46,792 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 07.04 01:01:46" (1/3) ... [2022-04-07 13:01:46,793 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@513f25dc and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 01:01:46, skipping insertion in model container [2022-04-07 13:01:46,793 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:46" (2/3) ... [2022-04-07 13:01:46,793 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@513f25dc and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 01:01:46, skipping insertion in model container [2022-04-07 13:01:46,793 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 01:01:46" (3/3) ... [2022-04-07 13:01:46,794 INFO L111 eAbstractionObserver]: Analyzing ICFG cohendiv-ll_valuebound2.c [2022-04-07 13:01:46,797 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-07 13:01:46,797 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-07 13:01:46,824 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-07 13:01:46,829 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-07 13:01:46,829 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-07 13:01:46,843 INFO L276 IsEmpty]: Start isEmpty. Operand has 39 states, 21 states have (on average 1.4285714285714286) internal successors, (30), 22 states have internal predecessors, (30), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-07 13:01:46,846 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-07 13:01:46,846 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 13:01:46,847 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 13:01:46,847 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 13:01:46,850 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 13:01:46,850 INFO L85 PathProgramCache]: Analyzing trace with hash -1768835633, now seen corresponding path program 1 times [2022-04-07 13:01:46,856 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 13:01:46,856 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [872274557] [2022-04-07 13:01:46,856 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:46,857 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 13:01:46,924 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:47,008 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-07 13:01:47,015 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:47,028 INFO L290 TraceCheckUtils]: 0: Hoare triple {59#(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(14, 2);call #Ultimate.allocInit(12, 3); {42#true} is VALID [2022-04-07 13:01:47,028 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume true; {42#true} is VALID [2022-04-07 13:01:47,028 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {42#true} {42#true} #98#return; {42#true} is VALID [2022-04-07 13:01:47,029 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-07 13:01:47,030 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:47,044 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-07 13:01:47,045 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-07 13:01:47,045 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-07 13:01:47,045 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {42#true} #78#return; {43#false} is VALID [2022-04-07 13:01:47,045 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-07 13:01:47,047 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:47,053 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-07 13:01:47,054 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-07 13:01:47,054 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-07 13:01:47,054 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {43#false} #80#return; {43#false} is VALID [2022-04-07 13:01:47,055 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-07 13:01:47,059 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:47,068 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-07 13:01:47,069 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-07 13:01:47,069 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-07 13:01:47,069 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {43#false} #82#return; {43#false} is VALID [2022-04-07 13:01:47,070 INFO L272 TraceCheckUtils]: 0: Hoare triple {42#true} call ULTIMATE.init(); {59#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-07 13:01:47,070 INFO L290 TraceCheckUtils]: 1: Hoare triple {59#(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(14, 2);call #Ultimate.allocInit(12, 3); {42#true} is VALID [2022-04-07 13:01:47,070 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#true} assume true; {42#true} is VALID [2022-04-07 13:01:47,071 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#true} {42#true} #98#return; {42#true} is VALID [2022-04-07 13:01:47,071 INFO L272 TraceCheckUtils]: 4: Hoare triple {42#true} call #t~ret6 := main(); {42#true} is VALID [2022-04-07 13:01:47,071 INFO L290 TraceCheckUtils]: 5: Hoare triple {42#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {42#true} is VALID [2022-04-07 13:01:47,071 INFO L272 TraceCheckUtils]: 6: Hoare triple {42#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {42#true} is VALID [2022-04-07 13:01:47,072 INFO L290 TraceCheckUtils]: 7: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-07 13:01:47,072 INFO L290 TraceCheckUtils]: 8: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-07 13:01:47,072 INFO L290 TraceCheckUtils]: 9: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-07 13:01:47,073 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {43#false} {42#true} #78#return; {43#false} is VALID [2022-04-07 13:01:47,073 INFO L290 TraceCheckUtils]: 11: Hoare triple {43#false} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {43#false} is VALID [2022-04-07 13:01:47,073 INFO L272 TraceCheckUtils]: 12: Hoare triple {43#false} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {42#true} is VALID [2022-04-07 13:01:47,073 INFO L290 TraceCheckUtils]: 13: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-07 13:01:47,074 INFO L290 TraceCheckUtils]: 14: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-07 13:01:47,074 INFO L290 TraceCheckUtils]: 15: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-07 13:01:47,075 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {43#false} {43#false} #80#return; {43#false} is VALID [2022-04-07 13:01:47,075 INFO L272 TraceCheckUtils]: 17: Hoare triple {43#false} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {42#true} is VALID [2022-04-07 13:01:47,075 INFO L290 TraceCheckUtils]: 18: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-07 13:01:47,076 INFO L290 TraceCheckUtils]: 19: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-07 13:01:47,076 INFO L290 TraceCheckUtils]: 20: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-07 13:01:47,077 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {43#false} {43#false} #82#return; {43#false} is VALID [2022-04-07 13:01:47,077 INFO L290 TraceCheckUtils]: 22: Hoare triple {43#false} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {43#false} is VALID [2022-04-07 13:01:47,077 INFO L290 TraceCheckUtils]: 23: Hoare triple {43#false} assume false; {43#false} is VALID [2022-04-07 13:01:47,077 INFO L272 TraceCheckUtils]: 24: Hoare triple {43#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {43#false} is VALID [2022-04-07 13:01:47,078 INFO L290 TraceCheckUtils]: 25: Hoare triple {43#false} ~cond := #in~cond; {43#false} is VALID [2022-04-07 13:01:47,078 INFO L290 TraceCheckUtils]: 26: Hoare triple {43#false} assume 0 == ~cond; {43#false} is VALID [2022-04-07 13:01:47,078 INFO L290 TraceCheckUtils]: 27: Hoare triple {43#false} assume !false; {43#false} is VALID [2022-04-07 13:01:47,078 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-07 13:01:47,079 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 13:01:47,079 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [872274557] [2022-04-07 13:01:47,080 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [872274557] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 13:01:47,080 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 13:01:47,080 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-07 13:01:47,082 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1796323669] [2022-04-07 13:01:47,084 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 13:01:47,089 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, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-07 13:01:47,091 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 13:01:47,093 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, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 13:01:47,128 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 13:01:47,128 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-07 13:01:47,128 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 13:01:47,148 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-07 13:01:47,149 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-07 13:01:47,151 INFO L87 Difference]: Start difference. First operand has 39 states, 21 states have (on average 1.4285714285714286) internal successors, (30), 22 states have internal predecessors, (30), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) 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, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 13:01:47,328 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:47,328 INFO L93 Difference]: Finished difference Result 71 states and 110 transitions. [2022-04-07 13:01:47,329 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-07 13:01:47,329 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, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-07 13:01:47,329 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 13:01:47,330 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, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 13:01:47,345 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 110 transitions. [2022-04-07 13:01:47,345 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, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 13:01:47,356 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 110 transitions. [2022-04-07 13:01:47,358 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 110 transitions. [2022-04-07 13:01:47,480 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 110 edges. 110 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 13:01:47,494 INFO L225 Difference]: With dead ends: 71 [2022-04-07 13:01:47,494 INFO L226 Difference]: Without dead ends: 34 [2022-04-07 13:01:47,496 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 12 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-07 13:01:47,499 INFO L913 BasicCegarLoop]: 38 mSDtfsCounter, 21 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 12 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 41 SdHoareTripleChecker+Invalid, 23 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 12 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 13:01:47,500 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [31 Valid, 41 Invalid, 23 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 12 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 13:01:47,511 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-07 13:01:47,522 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 34. [2022-04-07 13:01:47,522 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 13:01:47,523 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 13:01:47,523 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 13:01:47,523 INFO L87 Difference]: Start difference. First operand 34 states. Second operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 13:01:47,526 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:47,527 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-07 13:01:47,527 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-07 13:01:47,527 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:47,527 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:47,528 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 34 states. [2022-04-07 13:01:47,528 INFO L87 Difference]: Start difference. First operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 34 states. [2022-04-07 13:01:47,530 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:47,530 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-07 13:01:47,531 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-07 13:01:47,531 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:47,531 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:47,531 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 13:01:47,531 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 13:01:47,532 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 13:01:47,533 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 43 transitions. [2022-04-07 13:01:47,534 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 43 transitions. Word has length 28 [2022-04-07 13:01:47,535 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 13:01:47,535 INFO L478 AbstractCegarLoop]: Abstraction has 34 states and 43 transitions. [2022-04-07 13:01:47,535 INFO L479 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, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 13:01:47,535 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-07 13:01:47,536 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-07 13:01:47,536 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 13:01:47,536 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 13:01:47,536 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-07 13:01:47,536 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 13:01:47,537 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 13:01:47,537 INFO L85 PathProgramCache]: Analyzing trace with hash 1378913883, now seen corresponding path program 1 times [2022-04-07 13:01:47,537 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 13:01:47,537 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1772859169] [2022-04-07 13:01:47,537 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:47,537 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 13:01:47,555 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 13:01:47,555 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [557553660] [2022-04-07 13:01:47,556 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:47,556 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:01:47,556 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 13:01:47,562 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-07 13:01:47,565 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-07 13:01:47,617 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:47,628 INFO L263 TraceCheckSpWp]: Trace formula consists of 92 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-07 13:01:47,641 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:47,645 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 13:01:47,914 INFO L272 TraceCheckUtils]: 0: Hoare triple {284#true} call ULTIMATE.init(); {284#true} is VALID [2022-04-07 13:01:47,915 INFO L290 TraceCheckUtils]: 1: Hoare triple {284#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(14, 2);call #Ultimate.allocInit(12, 3); {284#true} is VALID [2022-04-07 13:01:47,915 INFO L290 TraceCheckUtils]: 2: Hoare triple {284#true} assume true; {284#true} is VALID [2022-04-07 13:01:47,915 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {284#true} {284#true} #98#return; {284#true} is VALID [2022-04-07 13:01:47,915 INFO L272 TraceCheckUtils]: 4: Hoare triple {284#true} call #t~ret6 := main(); {284#true} is VALID [2022-04-07 13:01:47,918 INFO L290 TraceCheckUtils]: 5: Hoare triple {284#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {284#true} is VALID [2022-04-07 13:01:47,918 INFO L272 TraceCheckUtils]: 6: Hoare triple {284#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {284#true} is VALID [2022-04-07 13:01:47,919 INFO L290 TraceCheckUtils]: 7: Hoare triple {284#true} ~cond := #in~cond; {284#true} is VALID [2022-04-07 13:01:47,919 INFO L290 TraceCheckUtils]: 8: Hoare triple {284#true} assume !(0 == ~cond); {284#true} is VALID [2022-04-07 13:01:47,919 INFO L290 TraceCheckUtils]: 9: Hoare triple {284#true} assume true; {284#true} is VALID [2022-04-07 13:01:47,919 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {284#true} {284#true} #78#return; {284#true} is VALID [2022-04-07 13:01:47,920 INFO L290 TraceCheckUtils]: 11: Hoare triple {284#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {284#true} is VALID [2022-04-07 13:01:47,921 INFO L272 TraceCheckUtils]: 12: Hoare triple {284#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {284#true} is VALID [2022-04-07 13:01:47,922 INFO L290 TraceCheckUtils]: 13: Hoare triple {284#true} ~cond := #in~cond; {328#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 13:01:47,922 INFO L290 TraceCheckUtils]: 14: Hoare triple {328#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {332#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 13:01:47,923 INFO L290 TraceCheckUtils]: 15: Hoare triple {332#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {332#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 13:01:47,923 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {332#(not (= |assume_abort_if_not_#in~cond| 0))} {284#true} #80#return; {339#(and (<= 0 main_~y~0) (<= main_~y~0 2))} is VALID [2022-04-07 13:01:47,923 INFO L272 TraceCheckUtils]: 17: Hoare triple {339#(and (<= 0 main_~y~0) (<= main_~y~0 2))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {284#true} is VALID [2022-04-07 13:01:47,924 INFO L290 TraceCheckUtils]: 18: Hoare triple {284#true} ~cond := #in~cond; {328#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 13:01:47,925 INFO L290 TraceCheckUtils]: 19: Hoare triple {328#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {332#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 13:01:47,925 INFO L290 TraceCheckUtils]: 20: Hoare triple {332#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {332#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 13:01:47,926 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {332#(not (= |assume_abort_if_not_#in~cond| 0))} {339#(and (<= 0 main_~y~0) (<= main_~y~0 2))} #82#return; {355#(and (<= main_~y~0 2) (<= 1 main_~y~0))} is VALID [2022-04-07 13:01:47,926 INFO L290 TraceCheckUtils]: 22: Hoare triple {355#(and (<= main_~y~0 2) (<= 1 main_~y~0))} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {359#(and (= main_~a~0 0) (<= main_~y~0 2) (= main_~b~0 0) (<= 1 main_~y~0))} is VALID [2022-04-07 13:01:47,927 INFO L290 TraceCheckUtils]: 23: Hoare triple {359#(and (= main_~a~0 0) (<= main_~y~0 2) (= main_~b~0 0) (<= 1 main_~y~0))} assume !false; {359#(and (= main_~a~0 0) (<= main_~y~0 2) (= main_~b~0 0) (<= 1 main_~y~0))} is VALID [2022-04-07 13:01:47,927 INFO L272 TraceCheckUtils]: 24: Hoare triple {359#(and (= main_~a~0 0) (<= main_~y~0 2) (= main_~b~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {366#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 13:01:47,928 INFO L290 TraceCheckUtils]: 25: Hoare triple {366#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {370#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 13:01:47,929 INFO L290 TraceCheckUtils]: 26: Hoare triple {370#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {285#false} is VALID [2022-04-07 13:01:47,929 INFO L290 TraceCheckUtils]: 27: Hoare triple {285#false} assume !false; {285#false} is VALID [2022-04-07 13:01:47,930 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-07 13:01:47,930 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 13:01:47,930 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 13:01:47,930 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1772859169] [2022-04-07 13:01:47,930 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 13:01:47,930 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [557553660] [2022-04-07 13:01:47,933 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [557553660] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 13:01:47,933 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 13:01:47,934 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-07 13:01:47,934 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1635093788] [2022-04-07 13:01:47,934 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 13:01:47,935 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-07 13:01:47,935 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 13:01:47,936 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 13:01:47,953 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 13:01:47,954 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-07 13:01:47,955 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 13:01:47,955 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-07 13:01:47,955 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=54, Unknown=0, NotChecked=0, Total=72 [2022-04-07 13:01:47,956 INFO L87 Difference]: Start difference. First operand 34 states and 43 transitions. Second operand has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 13:01:48,289 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:48,289 INFO L93 Difference]: Finished difference Result 45 states and 56 transitions. [2022-04-07 13:01:48,289 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-07 13:01:48,290 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-07 13:01:48,290 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 13:01:48,290 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 13:01:48,295 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 56 transitions. [2022-04-07 13:01:48,295 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 13:01:48,297 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 56 transitions. [2022-04-07 13:01:48,297 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 56 transitions. [2022-04-07 13:01:48,332 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 13:01:48,335 INFO L225 Difference]: With dead ends: 45 [2022-04-07 13:01:48,335 INFO L226 Difference]: Without dead ends: 43 [2022-04-07 13:01:48,335 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 29 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=26, Invalid=84, Unknown=0, NotChecked=0, Total=110 [2022-04-07 13:01:48,336 INFO L913 BasicCegarLoop]: 36 mSDtfsCounter, 28 mSDsluCounter, 133 mSDsCounter, 0 mSdLazyCounter, 120 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 37 SdHoareTripleChecker+Valid, 169 SdHoareTripleChecker+Invalid, 128 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 120 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-07 13:01:48,336 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [37 Valid, 169 Invalid, 128 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 120 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-07 13:01:48,337 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states. [2022-04-07 13:01:48,354 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 40. [2022-04-07 13:01:48,354 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 13:01:48,355 INFO L82 GeneralOperation]: Start isEquivalent. First operand 43 states. Second operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-07 13:01:48,357 INFO L74 IsIncluded]: Start isIncluded. First operand 43 states. Second operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-07 13:01:48,357 INFO L87 Difference]: Start difference. First operand 43 states. Second operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-07 13:01:48,359 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:48,359 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-07 13:01:48,359 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-07 13:01:48,359 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:48,360 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:48,360 INFO L74 IsIncluded]: Start isIncluded. First operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) Second operand 43 states. [2022-04-07 13:01:48,360 INFO L87 Difference]: Start difference. First operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) Second operand 43 states. [2022-04-07 13:01:48,365 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:48,366 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-07 13:01:48,366 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-07 13:01:48,366 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:48,366 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:48,366 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 13:01:48,366 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 13:01:48,367 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-07 13:01:48,368 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 49 transitions. [2022-04-07 13:01:48,368 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 49 transitions. Word has length 28 [2022-04-07 13:01:48,368 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 13:01:48,368 INFO L478 AbstractCegarLoop]: Abstraction has 40 states and 49 transitions. [2022-04-07 13:01:48,369 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 13:01:48,369 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 49 transitions. [2022-04-07 13:01:48,369 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-07 13:01:48,369 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 13:01:48,369 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 13:01:48,390 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-07 13:01:48,577 WARN L460 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-07 13:01:48,578 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 13:01:48,578 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 13:01:48,578 INFO L85 PathProgramCache]: Analyzing trace with hash -1928335320, now seen corresponding path program 1 times [2022-04-07 13:01:48,578 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 13:01:48,578 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [978486762] [2022-04-07 13:01:48,578 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:48,579 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 13:01:48,592 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 13:01:48,592 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1131389544] [2022-04-07 13:01:48,593 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:48,593 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:01:48,593 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 13:01:48,594 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-07 13:01:48,595 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-07 13:01:48,625 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:48,626 INFO L263 TraceCheckSpWp]: Trace formula consists of 101 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-07 13:01:48,634 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:48,635 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 13:01:48,820 INFO L272 TraceCheckUtils]: 0: Hoare triple {595#true} call ULTIMATE.init(); {595#true} is VALID [2022-04-07 13:01:48,820 INFO L290 TraceCheckUtils]: 1: Hoare triple {595#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(14, 2);call #Ultimate.allocInit(12, 3); {595#true} is VALID [2022-04-07 13:01:48,820 INFO L290 TraceCheckUtils]: 2: Hoare triple {595#true} assume true; {595#true} is VALID [2022-04-07 13:01:48,820 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {595#true} {595#true} #98#return; {595#true} is VALID [2022-04-07 13:01:48,821 INFO L272 TraceCheckUtils]: 4: Hoare triple {595#true} call #t~ret6 := main(); {595#true} is VALID [2022-04-07 13:01:48,821 INFO L290 TraceCheckUtils]: 5: Hoare triple {595#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {595#true} is VALID [2022-04-07 13:01:48,821 INFO L272 TraceCheckUtils]: 6: Hoare triple {595#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {595#true} is VALID [2022-04-07 13:01:48,821 INFO L290 TraceCheckUtils]: 7: Hoare triple {595#true} ~cond := #in~cond; {595#true} is VALID [2022-04-07 13:01:48,821 INFO L290 TraceCheckUtils]: 8: Hoare triple {595#true} assume !(0 == ~cond); {595#true} is VALID [2022-04-07 13:01:48,821 INFO L290 TraceCheckUtils]: 9: Hoare triple {595#true} assume true; {595#true} is VALID [2022-04-07 13:01:48,821 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {595#true} {595#true} #78#return; {595#true} is VALID [2022-04-07 13:01:48,821 INFO L290 TraceCheckUtils]: 11: Hoare triple {595#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {595#true} is VALID [2022-04-07 13:01:48,821 INFO L272 TraceCheckUtils]: 12: Hoare triple {595#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {595#true} is VALID [2022-04-07 13:01:48,822 INFO L290 TraceCheckUtils]: 13: Hoare triple {595#true} ~cond := #in~cond; {639#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 13:01:48,822 INFO L290 TraceCheckUtils]: 14: Hoare triple {639#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {643#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 13:01:48,822 INFO L290 TraceCheckUtils]: 15: Hoare triple {643#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {643#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 13:01:48,824 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {643#(not (= |assume_abort_if_not_#in~cond| 0))} {595#true} #80#return; {650#(and (<= 0 main_~y~0) (<= main_~y~0 2))} is VALID [2022-04-07 13:01:48,824 INFO L272 TraceCheckUtils]: 17: Hoare triple {650#(and (<= 0 main_~y~0) (<= main_~y~0 2))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {595#true} is VALID [2022-04-07 13:01:48,824 INFO L290 TraceCheckUtils]: 18: Hoare triple {595#true} ~cond := #in~cond; {639#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 13:01:48,824 INFO L290 TraceCheckUtils]: 19: Hoare triple {639#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {643#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 13:01:48,825 INFO L290 TraceCheckUtils]: 20: Hoare triple {643#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {643#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 13:01:48,825 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {643#(not (= |assume_abort_if_not_#in~cond| 0))} {650#(and (<= 0 main_~y~0) (<= main_~y~0 2))} #82#return; {666#(and (<= main_~y~0 2) (<= 1 main_~y~0))} is VALID [2022-04-07 13:01:48,826 INFO L290 TraceCheckUtils]: 22: Hoare triple {666#(and (<= main_~y~0 2) (<= 1 main_~y~0))} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {670#(and (= main_~x~0 main_~r~0) (<= main_~y~0 2) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-07 13:01:48,826 INFO L290 TraceCheckUtils]: 23: Hoare triple {670#(and (= main_~x~0 main_~r~0) (<= main_~y~0 2) (= main_~q~0 0) (<= 1 main_~y~0))} assume !false; {670#(and (= main_~x~0 main_~r~0) (<= main_~y~0 2) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-07 13:01:48,826 INFO L272 TraceCheckUtils]: 24: Hoare triple {670#(and (= main_~x~0 main_~r~0) (<= main_~y~0 2) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {595#true} is VALID [2022-04-07 13:01:48,826 INFO L290 TraceCheckUtils]: 25: Hoare triple {595#true} ~cond := #in~cond; {595#true} is VALID [2022-04-07 13:01:48,826 INFO L290 TraceCheckUtils]: 26: Hoare triple {595#true} assume !(0 == ~cond); {595#true} is VALID [2022-04-07 13:01:48,827 INFO L290 TraceCheckUtils]: 27: Hoare triple {595#true} assume true; {595#true} is VALID [2022-04-07 13:01:48,827 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {595#true} {670#(and (= main_~x~0 main_~r~0) (<= main_~y~0 2) (= main_~q~0 0) (<= 1 main_~y~0))} #84#return; {670#(and (= main_~x~0 main_~r~0) (<= main_~y~0 2) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-07 13:01:48,828 INFO L272 TraceCheckUtils]: 29: Hoare triple {670#(and (= main_~x~0 main_~r~0) (<= main_~y~0 2) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {692#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 13:01:48,828 INFO L290 TraceCheckUtils]: 30: Hoare triple {692#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {696#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 13:01:48,830 INFO L290 TraceCheckUtils]: 31: Hoare triple {696#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {596#false} is VALID [2022-04-07 13:01:48,830 INFO L290 TraceCheckUtils]: 32: Hoare triple {596#false} assume !false; {596#false} is VALID [2022-04-07 13:01:48,831 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 8 proven. 0 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-07 13:01:48,831 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 13:01:48,831 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 13:01:48,831 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [978486762] [2022-04-07 13:01:48,831 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 13:01:48,831 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1131389544] [2022-04-07 13:01:48,832 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1131389544] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 13:01:48,832 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 13:01:48,832 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-07 13:01:48,832 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1069144147] [2022-04-07 13:01:48,832 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 13:01:48,833 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, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) Word has length 33 [2022-04-07 13:01:48,833 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 13:01:48,833 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, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-07 13:01:48,856 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 13:01:48,856 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-07 13:01:48,857 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 13:01:48,857 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-07 13:01:48,857 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=54, Unknown=0, NotChecked=0, Total=72 [2022-04-07 13:01:48,857 INFO L87 Difference]: Start difference. First operand 40 states and 49 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, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-07 13:01:49,245 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:49,245 INFO L93 Difference]: Finished difference Result 57 states and 72 transitions. [2022-04-07 13:01:49,245 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-07 13:01:49,246 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, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) Word has length 33 [2022-04-07 13:01:49,246 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 13:01:49,246 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, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-07 13:01:49,248 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 69 transitions. [2022-04-07 13:01:49,248 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, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-07 13:01:49,249 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 69 transitions. [2022-04-07 13:01:49,249 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 69 transitions. [2022-04-07 13:01:49,310 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 13:01:49,312 INFO L225 Difference]: With dead ends: 57 [2022-04-07 13:01:49,312 INFO L226 Difference]: Without dead ends: 54 [2022-04-07 13:01:49,312 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 34 GetRequests, 25 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=26, Invalid=84, Unknown=0, NotChecked=0, Total=110 [2022-04-07 13:01:49,313 INFO L913 BasicCegarLoop]: 39 mSDtfsCounter, 29 mSDsluCounter, 141 mSDsCounter, 0 mSdLazyCounter, 143 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 41 SdHoareTripleChecker+Valid, 180 SdHoareTripleChecker+Invalid, 152 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 143 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-07 13:01:49,313 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [41 Valid, 180 Invalid, 152 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 143 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-07 13:01:49,313 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 54 states. [2022-04-07 13:01:49,331 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 54 to 53. [2022-04-07 13:01:49,332 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 13:01:49,332 INFO L82 GeneralOperation]: Start isEquivalent. First operand 54 states. Second operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-07 13:01:49,332 INFO L74 IsIncluded]: Start isIncluded. First operand 54 states. Second operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-07 13:01:49,332 INFO L87 Difference]: Start difference. First operand 54 states. Second operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-07 13:01:49,335 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:49,335 INFO L93 Difference]: Finished difference Result 54 states and 68 transitions. [2022-04-07 13:01:49,335 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 68 transitions. [2022-04-07 13:01:49,335 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:49,336 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:49,336 INFO L74 IsIncluded]: Start isIncluded. First operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 54 states. [2022-04-07 13:01:49,336 INFO L87 Difference]: Start difference. First operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 54 states. [2022-04-07 13:01:49,338 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:49,338 INFO L93 Difference]: Finished difference Result 54 states and 68 transitions. [2022-04-07 13:01:49,338 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 68 transitions. [2022-04-07 13:01:49,339 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:49,339 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:49,339 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 13:01:49,339 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 13:01:49,339 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-07 13:01:49,341 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 67 transitions. [2022-04-07 13:01:49,341 INFO L78 Accepts]: Start accepts. Automaton has 53 states and 67 transitions. Word has length 33 [2022-04-07 13:01:49,341 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 13:01:49,341 INFO L478 AbstractCegarLoop]: Abstraction has 53 states and 67 transitions. [2022-04-07 13:01:49,341 INFO L479 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, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-07 13:01:49,341 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 67 transitions. [2022-04-07 13:01:49,342 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-07 13:01:49,342 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 13:01:49,342 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 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] [2022-04-07 13:01:49,359 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-07 13:01:49,546 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-07 13:01:49,547 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 13:01:49,547 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 13:01:49,547 INFO L85 PathProgramCache]: Analyzing trace with hash -1297647068, now seen corresponding path program 1 times [2022-04-07 13:01:49,547 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 13:01:49,547 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1411788074] [2022-04-07 13:01:49,547 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:49,548 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 13:01:49,561 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 13:01:49,562 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1793744514] [2022-04-07 13:01:49,562 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:49,562 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:01:49,562 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 13:01:49,563 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-07 13:01:49,563 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-07 13:01:49,601 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:49,602 INFO L263 TraceCheckSpWp]: Trace formula consists of 116 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-07 13:01:49,613 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:49,614 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 13:01:49,869 INFO L272 TraceCheckUtils]: 0: Hoare triple {981#true} call ULTIMATE.init(); {981#true} is VALID [2022-04-07 13:01:49,869 INFO L290 TraceCheckUtils]: 1: Hoare triple {981#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(14, 2);call #Ultimate.allocInit(12, 3); {981#true} is VALID [2022-04-07 13:01:49,869 INFO L290 TraceCheckUtils]: 2: Hoare triple {981#true} assume true; {981#true} is VALID [2022-04-07 13:01:49,869 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {981#true} {981#true} #98#return; {981#true} is VALID [2022-04-07 13:01:49,870 INFO L272 TraceCheckUtils]: 4: Hoare triple {981#true} call #t~ret6 := main(); {981#true} is VALID [2022-04-07 13:01:49,870 INFO L290 TraceCheckUtils]: 5: Hoare triple {981#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {981#true} is VALID [2022-04-07 13:01:49,870 INFO L272 TraceCheckUtils]: 6: Hoare triple {981#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {981#true} is VALID [2022-04-07 13:01:49,870 INFO L290 TraceCheckUtils]: 7: Hoare triple {981#true} ~cond := #in~cond; {1007#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 13:01:49,870 INFO L290 TraceCheckUtils]: 8: Hoare triple {1007#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1011#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 13:01:49,871 INFO L290 TraceCheckUtils]: 9: Hoare triple {1011#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1011#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 13:01:49,871 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1011#(not (= |assume_abort_if_not_#in~cond| 0))} {981#true} #78#return; {1018#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-07 13:01:49,872 INFO L290 TraceCheckUtils]: 11: Hoare triple {1018#(and (<= 0 main_~x~0) (<= main_~x~0 2))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1018#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-07 13:01:49,873 INFO L272 TraceCheckUtils]: 12: Hoare triple {1018#(and (<= 0 main_~x~0) (<= main_~x~0 2))} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {981#true} is VALID [2022-04-07 13:01:49,873 INFO L290 TraceCheckUtils]: 13: Hoare triple {981#true} ~cond := #in~cond; {981#true} is VALID [2022-04-07 13:01:49,873 INFO L290 TraceCheckUtils]: 14: Hoare triple {981#true} assume !(0 == ~cond); {981#true} is VALID [2022-04-07 13:01:49,873 INFO L290 TraceCheckUtils]: 15: Hoare triple {981#true} assume true; {981#true} is VALID [2022-04-07 13:01:49,884 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {981#true} {1018#(and (<= 0 main_~x~0) (<= main_~x~0 2))} #80#return; {1018#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-07 13:01:49,884 INFO L272 TraceCheckUtils]: 17: Hoare triple {1018#(and (<= 0 main_~x~0) (<= main_~x~0 2))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {981#true} is VALID [2022-04-07 13:01:49,885 INFO L290 TraceCheckUtils]: 18: Hoare triple {981#true} ~cond := #in~cond; {1007#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 13:01:49,885 INFO L290 TraceCheckUtils]: 19: Hoare triple {1007#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1011#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 13:01:49,886 INFO L290 TraceCheckUtils]: 20: Hoare triple {1011#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1011#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 13:01:49,886 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1011#(not (= |assume_abort_if_not_#in~cond| 0))} {1018#(and (<= 0 main_~x~0) (<= main_~x~0 2))} #82#return; {1052#(and (<= 0 main_~x~0) (<= 1 main_~y~0) (<= main_~x~0 2))} is VALID [2022-04-07 13:01:49,887 INFO L290 TraceCheckUtils]: 22: Hoare triple {1052#(and (<= 0 main_~x~0) (<= 1 main_~y~0) (<= main_~x~0 2))} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {1056#(and (<= main_~r~0 2) (<= 1 main_~y~0))} is VALID [2022-04-07 13:01:49,887 INFO L290 TraceCheckUtils]: 23: Hoare triple {1056#(and (<= main_~r~0 2) (<= 1 main_~y~0))} assume !false; {1056#(and (<= main_~r~0 2) (<= 1 main_~y~0))} is VALID [2022-04-07 13:01:49,887 INFO L272 TraceCheckUtils]: 24: Hoare triple {1056#(and (<= main_~r~0 2) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {981#true} is VALID [2022-04-07 13:01:49,887 INFO L290 TraceCheckUtils]: 25: Hoare triple {981#true} ~cond := #in~cond; {981#true} is VALID [2022-04-07 13:01:49,887 INFO L290 TraceCheckUtils]: 26: Hoare triple {981#true} assume !(0 == ~cond); {981#true} is VALID [2022-04-07 13:01:49,887 INFO L290 TraceCheckUtils]: 27: Hoare triple {981#true} assume true; {981#true} is VALID [2022-04-07 13:01:49,888 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {981#true} {1056#(and (<= main_~r~0 2) (<= 1 main_~y~0))} #84#return; {1056#(and (<= main_~r~0 2) (<= 1 main_~y~0))} is VALID [2022-04-07 13:01:49,888 INFO L272 TraceCheckUtils]: 29: Hoare triple {1056#(and (<= main_~r~0 2) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {981#true} is VALID [2022-04-07 13:01:49,888 INFO L290 TraceCheckUtils]: 30: Hoare triple {981#true} ~cond := #in~cond; {981#true} is VALID [2022-04-07 13:01:49,888 INFO L290 TraceCheckUtils]: 31: Hoare triple {981#true} assume !(0 == ~cond); {981#true} is VALID [2022-04-07 13:01:49,888 INFO L290 TraceCheckUtils]: 32: Hoare triple {981#true} assume true; {981#true} is VALID [2022-04-07 13:01:49,889 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {981#true} {1056#(and (<= main_~r~0 2) (<= 1 main_~y~0))} #86#return; {1056#(and (<= main_~r~0 2) (<= 1 main_~y~0))} is VALID [2022-04-07 13:01:49,889 INFO L290 TraceCheckUtils]: 34: Hoare triple {1056#(and (<= main_~r~0 2) (<= 1 main_~y~0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {1093#(and (= main_~a~0 1) (<= main_~y~0 2) (= main_~b~0 main_~y~0) (<= 1 main_~y~0))} is VALID [2022-04-07 13:01:49,890 INFO L290 TraceCheckUtils]: 35: Hoare triple {1093#(and (= main_~a~0 1) (<= main_~y~0 2) (= main_~b~0 main_~y~0) (<= 1 main_~y~0))} assume !false; {1093#(and (= main_~a~0 1) (<= main_~y~0 2) (= main_~b~0 main_~y~0) (<= 1 main_~y~0))} is VALID [2022-04-07 13:01:49,890 INFO L272 TraceCheckUtils]: 36: Hoare triple {1093#(and (= main_~a~0 1) (<= main_~y~0 2) (= main_~b~0 main_~y~0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1100#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 13:01:49,890 INFO L290 TraceCheckUtils]: 37: Hoare triple {1100#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1104#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 13:01:49,891 INFO L290 TraceCheckUtils]: 38: Hoare triple {1104#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {982#false} is VALID [2022-04-07 13:01:49,891 INFO L290 TraceCheckUtils]: 39: Hoare triple {982#false} assume !false; {982#false} is VALID [2022-04-07 13:01:49,891 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 7 proven. 3 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2022-04-07 13:01:49,891 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 13:01:50,157 INFO L290 TraceCheckUtils]: 39: Hoare triple {982#false} assume !false; {982#false} is VALID [2022-04-07 13:01:50,158 INFO L290 TraceCheckUtils]: 38: Hoare triple {1104#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {982#false} is VALID [2022-04-07 13:01:50,158 INFO L290 TraceCheckUtils]: 37: Hoare triple {1100#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1104#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 13:01:50,159 INFO L272 TraceCheckUtils]: 36: Hoare triple {1120#(= main_~b~0 (* main_~a~0 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1100#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 13:01:50,159 INFO L290 TraceCheckUtils]: 35: Hoare triple {1120#(= main_~b~0 (* main_~a~0 main_~y~0))} assume !false; {1120#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-07 13:01:50,160 INFO L290 TraceCheckUtils]: 34: Hoare triple {981#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {1120#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-07 13:01:50,160 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {981#true} {981#true} #86#return; {981#true} is VALID [2022-04-07 13:01:50,160 INFO L290 TraceCheckUtils]: 32: Hoare triple {981#true} assume true; {981#true} is VALID [2022-04-07 13:01:50,160 INFO L290 TraceCheckUtils]: 31: Hoare triple {981#true} assume !(0 == ~cond); {981#true} is VALID [2022-04-07 13:01:50,160 INFO L290 TraceCheckUtils]: 30: Hoare triple {981#true} ~cond := #in~cond; {981#true} is VALID [2022-04-07 13:01:50,160 INFO L272 TraceCheckUtils]: 29: Hoare triple {981#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {981#true} is VALID [2022-04-07 13:01:50,160 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {981#true} {981#true} #84#return; {981#true} is VALID [2022-04-07 13:01:50,160 INFO L290 TraceCheckUtils]: 27: Hoare triple {981#true} assume true; {981#true} is VALID [2022-04-07 13:01:50,160 INFO L290 TraceCheckUtils]: 26: Hoare triple {981#true} assume !(0 == ~cond); {981#true} is VALID [2022-04-07 13:01:50,160 INFO L290 TraceCheckUtils]: 25: Hoare triple {981#true} ~cond := #in~cond; {981#true} is VALID [2022-04-07 13:01:50,160 INFO L272 TraceCheckUtils]: 24: Hoare triple {981#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {981#true} is VALID [2022-04-07 13:01:50,161 INFO L290 TraceCheckUtils]: 23: Hoare triple {981#true} assume !false; {981#true} is VALID [2022-04-07 13:01:50,161 INFO L290 TraceCheckUtils]: 22: Hoare triple {981#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {981#true} is VALID [2022-04-07 13:01:50,161 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {981#true} {981#true} #82#return; {981#true} is VALID [2022-04-07 13:01:50,161 INFO L290 TraceCheckUtils]: 20: Hoare triple {981#true} assume true; {981#true} is VALID [2022-04-07 13:01:50,161 INFO L290 TraceCheckUtils]: 19: Hoare triple {981#true} assume !(0 == ~cond); {981#true} is VALID [2022-04-07 13:01:50,161 INFO L290 TraceCheckUtils]: 18: Hoare triple {981#true} ~cond := #in~cond; {981#true} is VALID [2022-04-07 13:01:50,161 INFO L272 TraceCheckUtils]: 17: Hoare triple {981#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {981#true} is VALID [2022-04-07 13:01:50,161 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {981#true} {981#true} #80#return; {981#true} is VALID [2022-04-07 13:01:50,161 INFO L290 TraceCheckUtils]: 15: Hoare triple {981#true} assume true; {981#true} is VALID [2022-04-07 13:01:50,161 INFO L290 TraceCheckUtils]: 14: Hoare triple {981#true} assume !(0 == ~cond); {981#true} is VALID [2022-04-07 13:01:50,161 INFO L290 TraceCheckUtils]: 13: Hoare triple {981#true} ~cond := #in~cond; {981#true} is VALID [2022-04-07 13:01:50,161 INFO L272 TraceCheckUtils]: 12: Hoare triple {981#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {981#true} is VALID [2022-04-07 13:01:50,161 INFO L290 TraceCheckUtils]: 11: Hoare triple {981#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {981#true} is VALID [2022-04-07 13:01:50,162 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {981#true} {981#true} #78#return; {981#true} is VALID [2022-04-07 13:01:50,162 INFO L290 TraceCheckUtils]: 9: Hoare triple {981#true} assume true; {981#true} is VALID [2022-04-07 13:01:50,162 INFO L290 TraceCheckUtils]: 8: Hoare triple {981#true} assume !(0 == ~cond); {981#true} is VALID [2022-04-07 13:01:50,162 INFO L290 TraceCheckUtils]: 7: Hoare triple {981#true} ~cond := #in~cond; {981#true} is VALID [2022-04-07 13:01:50,162 INFO L272 TraceCheckUtils]: 6: Hoare triple {981#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {981#true} is VALID [2022-04-07 13:01:50,162 INFO L290 TraceCheckUtils]: 5: Hoare triple {981#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {981#true} is VALID [2022-04-07 13:01:50,162 INFO L272 TraceCheckUtils]: 4: Hoare triple {981#true} call #t~ret6 := main(); {981#true} is VALID [2022-04-07 13:01:50,162 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {981#true} {981#true} #98#return; {981#true} is VALID [2022-04-07 13:01:50,162 INFO L290 TraceCheckUtils]: 2: Hoare triple {981#true} assume true; {981#true} is VALID [2022-04-07 13:01:50,162 INFO L290 TraceCheckUtils]: 1: Hoare triple {981#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(14, 2);call #Ultimate.allocInit(12, 3); {981#true} is VALID [2022-04-07 13:01:50,162 INFO L272 TraceCheckUtils]: 0: Hoare triple {981#true} call ULTIMATE.init(); {981#true} is VALID [2022-04-07 13:01:50,163 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-07 13:01:50,163 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 13:01:50,163 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1411788074] [2022-04-07 13:01:50,163 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 13:01:50,163 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1793744514] [2022-04-07 13:01:50,163 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1793744514] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-07 13:01:50,163 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-07 13:01:50,163 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [10] total 11 [2022-04-07 13:01:50,163 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1327436083] [2022-04-07 13:01:50,163 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 13:01:50,164 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) Word has length 40 [2022-04-07 13:01:50,164 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 13:01:50,164 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-07 13:01:50,183 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 13:01:50,184 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-07 13:01:50,184 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 13:01:50,184 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-07 13:01:50,184 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=89, Unknown=0, NotChecked=0, Total=110 [2022-04-07 13:01:50,184 INFO L87 Difference]: Start difference. First operand 53 states and 67 transitions. Second operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-07 13:01:50,335 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:50,335 INFO L93 Difference]: Finished difference Result 59 states and 72 transitions. [2022-04-07 13:01:50,336 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-07 13:01:50,336 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) Word has length 40 [2022-04-07 13:01:50,336 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 13:01:50,336 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-07 13:01:50,337 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 48 transitions. [2022-04-07 13:01:50,337 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-07 13:01:50,338 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 48 transitions. [2022-04-07 13:01:50,338 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 48 transitions. [2022-04-07 13:01:50,371 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 13:01:50,372 INFO L225 Difference]: With dead ends: 59 [2022-04-07 13:01:50,372 INFO L226 Difference]: Without dead ends: 57 [2022-04-07 13:01:50,372 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 80 GetRequests, 69 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=25, Invalid=107, Unknown=0, NotChecked=0, Total=132 [2022-04-07 13:01:50,373 INFO L913 BasicCegarLoop]: 33 mSDtfsCounter, 10 mSDsluCounter, 69 mSDsCounter, 0 mSdLazyCounter, 53 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 16 SdHoareTripleChecker+Valid, 102 SdHoareTripleChecker+Invalid, 56 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 53 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 13:01:50,373 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [16 Valid, 102 Invalid, 56 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 53 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 13:01:50,373 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 57 states. [2022-04-07 13:01:50,398 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 57 to 57. [2022-04-07 13:01:50,398 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 13:01:50,399 INFO L82 GeneralOperation]: Start isEquivalent. First operand 57 states. Second operand has 57 states, 32 states have (on average 1.125) internal successors, (36), 33 states have internal predecessors, (36), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-07 13:01:50,400 INFO L74 IsIncluded]: Start isIncluded. First operand 57 states. Second operand has 57 states, 32 states have (on average 1.125) internal successors, (36), 33 states have internal predecessors, (36), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-07 13:01:50,401 INFO L87 Difference]: Start difference. First operand 57 states. Second operand has 57 states, 32 states have (on average 1.125) internal successors, (36), 33 states have internal predecessors, (36), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-07 13:01:50,404 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:50,404 INFO L93 Difference]: Finished difference Result 57 states and 70 transitions. [2022-04-07 13:01:50,404 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 70 transitions. [2022-04-07 13:01:50,404 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:50,404 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:50,404 INFO L74 IsIncluded]: Start isIncluded. First operand has 57 states, 32 states have (on average 1.125) internal successors, (36), 33 states have internal predecessors, (36), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 57 states. [2022-04-07 13:01:50,406 INFO L87 Difference]: Start difference. First operand has 57 states, 32 states have (on average 1.125) internal successors, (36), 33 states have internal predecessors, (36), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 57 states. [2022-04-07 13:01:50,410 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:50,410 INFO L93 Difference]: Finished difference Result 57 states and 70 transitions. [2022-04-07 13:01:50,410 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 70 transitions. [2022-04-07 13:01:50,410 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:50,410 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:50,410 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 13:01:50,411 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 13:01:50,411 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 57 states, 32 states have (on average 1.125) internal successors, (36), 33 states have internal predecessors, (36), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-07 13:01:50,415 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 57 states to 57 states and 70 transitions. [2022-04-07 13:01:50,415 INFO L78 Accepts]: Start accepts. Automaton has 57 states and 70 transitions. Word has length 40 [2022-04-07 13:01:50,415 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 13:01:50,415 INFO L478 AbstractCegarLoop]: Abstraction has 57 states and 70 transitions. [2022-04-07 13:01:50,415 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-07 13:01:50,415 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 70 transitions. [2022-04-07 13:01:50,417 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-04-07 13:01:50,417 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 13:01:50,418 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 3, 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, 1] [2022-04-07 13:01:50,433 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-07 13:01:50,623 WARN L460 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-07 13:01:50,623 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 13:01:50,624 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 13:01:50,624 INFO L85 PathProgramCache]: Analyzing trace with hash -391974204, now seen corresponding path program 1 times [2022-04-07 13:01:50,624 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 13:01:50,624 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1416077365] [2022-04-07 13:01:50,624 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:50,624 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 13:01:50,640 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 13:01:50,640 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1363106111] [2022-04-07 13:01:50,640 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:50,640 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:01:50,640 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 13:01:50,641 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-07 13:01:50,642 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-07 13:01:50,673 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:50,674 INFO L263 TraceCheckSpWp]: Trace formula consists of 134 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-07 13:01:50,686 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:50,687 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 13:01:50,854 INFO L272 TraceCheckUtils]: 0: Hoare triple {1521#true} call ULTIMATE.init(); {1521#true} is VALID [2022-04-07 13:01:50,854 INFO L290 TraceCheckUtils]: 1: Hoare triple {1521#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(14, 2);call #Ultimate.allocInit(12, 3); {1521#true} is VALID [2022-04-07 13:01:50,854 INFO L290 TraceCheckUtils]: 2: Hoare triple {1521#true} assume true; {1521#true} is VALID [2022-04-07 13:01:50,854 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1521#true} {1521#true} #98#return; {1521#true} is VALID [2022-04-07 13:01:50,854 INFO L272 TraceCheckUtils]: 4: Hoare triple {1521#true} call #t~ret6 := main(); {1521#true} is VALID [2022-04-07 13:01:50,854 INFO L290 TraceCheckUtils]: 5: Hoare triple {1521#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {1521#true} is VALID [2022-04-07 13:01:50,855 INFO L272 TraceCheckUtils]: 6: Hoare triple {1521#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {1521#true} is VALID [2022-04-07 13:01:50,855 INFO L290 TraceCheckUtils]: 7: Hoare triple {1521#true} ~cond := #in~cond; {1521#true} is VALID [2022-04-07 13:01:50,855 INFO L290 TraceCheckUtils]: 8: Hoare triple {1521#true} assume !(0 == ~cond); {1521#true} is VALID [2022-04-07 13:01:50,855 INFO L290 TraceCheckUtils]: 9: Hoare triple {1521#true} assume true; {1521#true} is VALID [2022-04-07 13:01:50,855 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1521#true} {1521#true} #78#return; {1521#true} is VALID [2022-04-07 13:01:50,855 INFO L290 TraceCheckUtils]: 11: Hoare triple {1521#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1521#true} is VALID [2022-04-07 13:01:50,855 INFO L272 TraceCheckUtils]: 12: Hoare triple {1521#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {1521#true} is VALID [2022-04-07 13:01:50,855 INFO L290 TraceCheckUtils]: 13: Hoare triple {1521#true} ~cond := #in~cond; {1521#true} is VALID [2022-04-07 13:01:50,855 INFO L290 TraceCheckUtils]: 14: Hoare triple {1521#true} assume !(0 == ~cond); {1521#true} is VALID [2022-04-07 13:01:50,855 INFO L290 TraceCheckUtils]: 15: Hoare triple {1521#true} assume true; {1521#true} is VALID [2022-04-07 13:01:50,855 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1521#true} {1521#true} #80#return; {1521#true} is VALID [2022-04-07 13:01:50,855 INFO L272 TraceCheckUtils]: 17: Hoare triple {1521#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1521#true} is VALID [2022-04-07 13:01:50,856 INFO L290 TraceCheckUtils]: 18: Hoare triple {1521#true} ~cond := #in~cond; {1580#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 13:01:50,856 INFO L290 TraceCheckUtils]: 19: Hoare triple {1580#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1584#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 13:01:50,856 INFO L290 TraceCheckUtils]: 20: Hoare triple {1584#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1584#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 13:01:50,857 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1584#(not (= |assume_abort_if_not_#in~cond| 0))} {1521#true} #82#return; {1591#(<= 1 main_~y~0)} is VALID [2022-04-07 13:01:50,857 INFO L290 TraceCheckUtils]: 22: Hoare triple {1591#(<= 1 main_~y~0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {1591#(<= 1 main_~y~0)} is VALID [2022-04-07 13:01:50,858 INFO L290 TraceCheckUtils]: 23: Hoare triple {1591#(<= 1 main_~y~0)} assume !false; {1591#(<= 1 main_~y~0)} is VALID [2022-04-07 13:01:50,858 INFO L272 TraceCheckUtils]: 24: Hoare triple {1591#(<= 1 main_~y~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1521#true} is VALID [2022-04-07 13:01:50,858 INFO L290 TraceCheckUtils]: 25: Hoare triple {1521#true} ~cond := #in~cond; {1521#true} is VALID [2022-04-07 13:01:50,858 INFO L290 TraceCheckUtils]: 26: Hoare triple {1521#true} assume !(0 == ~cond); {1521#true} is VALID [2022-04-07 13:01:50,858 INFO L290 TraceCheckUtils]: 27: Hoare triple {1521#true} assume true; {1521#true} is VALID [2022-04-07 13:01:50,858 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1521#true} {1591#(<= 1 main_~y~0)} #84#return; {1591#(<= 1 main_~y~0)} is VALID [2022-04-07 13:01:50,859 INFO L272 TraceCheckUtils]: 29: Hoare triple {1591#(<= 1 main_~y~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1521#true} is VALID [2022-04-07 13:01:50,859 INFO L290 TraceCheckUtils]: 30: Hoare triple {1521#true} ~cond := #in~cond; {1521#true} is VALID [2022-04-07 13:01:50,859 INFO L290 TraceCheckUtils]: 31: Hoare triple {1521#true} assume !(0 == ~cond); {1521#true} is VALID [2022-04-07 13:01:50,859 INFO L290 TraceCheckUtils]: 32: Hoare triple {1521#true} assume true; {1521#true} is VALID [2022-04-07 13:01:50,859 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1521#true} {1591#(<= 1 main_~y~0)} #86#return; {1591#(<= 1 main_~y~0)} is VALID [2022-04-07 13:01:50,860 INFO L290 TraceCheckUtils]: 34: Hoare triple {1591#(<= 1 main_~y~0)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {1631#(<= 1 main_~r~0)} is VALID [2022-04-07 13:01:50,861 INFO L290 TraceCheckUtils]: 35: Hoare triple {1631#(<= 1 main_~r~0)} assume !false; {1631#(<= 1 main_~r~0)} is VALID [2022-04-07 13:01:50,861 INFO L272 TraceCheckUtils]: 36: Hoare triple {1631#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1521#true} is VALID [2022-04-07 13:01:50,861 INFO L290 TraceCheckUtils]: 37: Hoare triple {1521#true} ~cond := #in~cond; {1521#true} is VALID [2022-04-07 13:01:50,861 INFO L290 TraceCheckUtils]: 38: Hoare triple {1521#true} assume !(0 == ~cond); {1521#true} is VALID [2022-04-07 13:01:50,861 INFO L290 TraceCheckUtils]: 39: Hoare triple {1521#true} assume true; {1521#true} is VALID [2022-04-07 13:01:50,861 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {1521#true} {1631#(<= 1 main_~r~0)} #88#return; {1631#(<= 1 main_~r~0)} is VALID [2022-04-07 13:01:50,861 INFO L272 TraceCheckUtils]: 41: Hoare triple {1631#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1521#true} is VALID [2022-04-07 13:01:50,862 INFO L290 TraceCheckUtils]: 42: Hoare triple {1521#true} ~cond := #in~cond; {1521#true} is VALID [2022-04-07 13:01:50,862 INFO L290 TraceCheckUtils]: 43: Hoare triple {1521#true} assume !(0 == ~cond); {1521#true} is VALID [2022-04-07 13:01:50,862 INFO L290 TraceCheckUtils]: 44: Hoare triple {1521#true} assume true; {1521#true} is VALID [2022-04-07 13:01:50,862 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1521#true} {1631#(<= 1 main_~r~0)} #90#return; {1631#(<= 1 main_~r~0)} is VALID [2022-04-07 13:01:50,863 INFO L272 TraceCheckUtils]: 46: Hoare triple {1631#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {1668#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 13:01:50,863 INFO L290 TraceCheckUtils]: 47: Hoare triple {1668#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1672#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 13:01:50,863 INFO L290 TraceCheckUtils]: 48: Hoare triple {1672#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1522#false} is VALID [2022-04-07 13:01:50,863 INFO L290 TraceCheckUtils]: 49: Hoare triple {1522#false} assume !false; {1522#false} is VALID [2022-04-07 13:01:50,864 INFO L134 CoverageAnalysis]: Checked inductivity of 44 backedges. 14 proven. 0 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-04-07 13:01:50,864 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 13:01:50,864 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 13:01:50,864 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1416077365] [2022-04-07 13:01:50,864 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 13:01:50,864 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1363106111] [2022-04-07 13:01:50,864 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1363106111] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 13:01:50,864 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 13:01:50,864 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-07 13:01:50,864 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [905690617] [2022-04-07 13:01:50,864 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 13:01:50,865 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) Word has length 50 [2022-04-07 13:01:50,865 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 13:01:50,865 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-07 13:01:50,887 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 13:01:50,887 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-07 13:01:50,888 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 13:01:50,888 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-07 13:01:50,888 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-07 13:01:50,888 INFO L87 Difference]: Start difference. First operand 57 states and 70 transitions. Second operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-07 13:01:51,182 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:51,182 INFO L93 Difference]: Finished difference Result 63 states and 75 transitions. [2022-04-07 13:01:51,182 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-07 13:01:51,182 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) Word has length 50 [2022-04-07 13:01:51,182 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 13:01:51,182 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-07 13:01:51,183 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 48 transitions. [2022-04-07 13:01:51,183 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-07 13:01:51,184 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 48 transitions. [2022-04-07 13:01:51,184 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 48 transitions. [2022-04-07 13:01:51,222 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 13:01:51,223 INFO L225 Difference]: With dead ends: 63 [2022-04-07 13:01:51,223 INFO L226 Difference]: Without dead ends: 61 [2022-04-07 13:01:51,224 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 52 GetRequests, 43 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=25, Invalid=85, Unknown=0, NotChecked=0, Total=110 [2022-04-07 13:01:51,224 INFO L913 BasicCegarLoop]: 34 mSDtfsCounter, 16 mSDsluCounter, 126 mSDsCounter, 0 mSdLazyCounter, 125 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 16 SdHoareTripleChecker+Valid, 160 SdHoareTripleChecker+Invalid, 132 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 125 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-07 13:01:51,224 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [16 Valid, 160 Invalid, 132 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 125 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-07 13:01:51,225 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 61 states. [2022-04-07 13:01:51,280 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 61 to 61. [2022-04-07 13:01:51,280 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 13:01:51,281 INFO L82 GeneralOperation]: Start isEquivalent. First operand 61 states. Second operand has 61 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 36 states have internal predecessors, (39), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-07 13:01:51,281 INFO L74 IsIncluded]: Start isIncluded. First operand 61 states. Second operand has 61 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 36 states have internal predecessors, (39), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-07 13:01:51,281 INFO L87 Difference]: Start difference. First operand 61 states. Second operand has 61 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 36 states have internal predecessors, (39), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-07 13:01:51,283 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:51,283 INFO L93 Difference]: Finished difference Result 61 states and 73 transitions. [2022-04-07 13:01:51,283 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 73 transitions. [2022-04-07 13:01:51,283 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:51,283 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:51,283 INFO L74 IsIncluded]: Start isIncluded. First operand has 61 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 36 states have internal predecessors, (39), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 61 states. [2022-04-07 13:01:51,284 INFO L87 Difference]: Start difference. First operand has 61 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 36 states have internal predecessors, (39), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 61 states. [2022-04-07 13:01:51,285 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:51,285 INFO L93 Difference]: Finished difference Result 61 states and 73 transitions. [2022-04-07 13:01:51,285 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 73 transitions. [2022-04-07 13:01:51,285 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:51,285 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:51,286 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 13:01:51,286 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 13:01:51,286 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 61 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 36 states have internal predecessors, (39), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-07 13:01:51,287 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 61 states to 61 states and 73 transitions. [2022-04-07 13:01:51,287 INFO L78 Accepts]: Start accepts. Automaton has 61 states and 73 transitions. Word has length 50 [2022-04-07 13:01:51,287 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 13:01:51,287 INFO L478 AbstractCegarLoop]: Abstraction has 61 states and 73 transitions. [2022-04-07 13:01:51,288 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-07 13:01:51,288 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 73 transitions. [2022-04-07 13:01:51,288 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 57 [2022-04-07 13:01:51,288 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 13:01:51,288 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 3, 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, 1, 1, 1, 1] [2022-04-07 13:01:51,306 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-07 13:01:51,504 WARN L460 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-07 13:01:51,504 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 13:01:51,505 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 13:01:51,505 INFO L85 PathProgramCache]: Analyzing trace with hash 991781023, now seen corresponding path program 1 times [2022-04-07 13:01:51,505 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 13:01:51,505 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [371436464] [2022-04-07 13:01:51,505 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:51,505 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 13:01:51,518 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 13:01:51,518 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [227880945] [2022-04-07 13:01:51,518 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:51,518 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:01:51,518 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 13:01:51,519 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-07 13:01:51,520 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-07 13:01:51,563 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:51,563 INFO L263 TraceCheckSpWp]: Trace formula consists of 144 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-07 13:01:51,572 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:51,573 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 13:01:51,781 INFO L272 TraceCheckUtils]: 0: Hoare triple {1990#true} call ULTIMATE.init(); {1990#true} is VALID [2022-04-07 13:01:51,781 INFO L290 TraceCheckUtils]: 1: Hoare triple {1990#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(14, 2);call #Ultimate.allocInit(12, 3); {1990#true} is VALID [2022-04-07 13:01:51,781 INFO L290 TraceCheckUtils]: 2: Hoare triple {1990#true} assume true; {1990#true} is VALID [2022-04-07 13:01:51,781 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1990#true} {1990#true} #98#return; {1990#true} is VALID [2022-04-07 13:01:51,781 INFO L272 TraceCheckUtils]: 4: Hoare triple {1990#true} call #t~ret6 := main(); {1990#true} is VALID [2022-04-07 13:01:51,782 INFO L290 TraceCheckUtils]: 5: Hoare triple {1990#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {1990#true} is VALID [2022-04-07 13:01:51,782 INFO L272 TraceCheckUtils]: 6: Hoare triple {1990#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {1990#true} is VALID [2022-04-07 13:01:51,782 INFO L290 TraceCheckUtils]: 7: Hoare triple {1990#true} ~cond := #in~cond; {1990#true} is VALID [2022-04-07 13:01:51,782 INFO L290 TraceCheckUtils]: 8: Hoare triple {1990#true} assume !(0 == ~cond); {1990#true} is VALID [2022-04-07 13:01:51,782 INFO L290 TraceCheckUtils]: 9: Hoare triple {1990#true} assume true; {1990#true} is VALID [2022-04-07 13:01:51,782 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1990#true} {1990#true} #78#return; {1990#true} is VALID [2022-04-07 13:01:51,782 INFO L290 TraceCheckUtils]: 11: Hoare triple {1990#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1990#true} is VALID [2022-04-07 13:01:51,782 INFO L272 TraceCheckUtils]: 12: Hoare triple {1990#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {1990#true} is VALID [2022-04-07 13:01:51,782 INFO L290 TraceCheckUtils]: 13: Hoare triple {1990#true} ~cond := #in~cond; {1990#true} is VALID [2022-04-07 13:01:51,782 INFO L290 TraceCheckUtils]: 14: Hoare triple {1990#true} assume !(0 == ~cond); {1990#true} is VALID [2022-04-07 13:01:51,782 INFO L290 TraceCheckUtils]: 15: Hoare triple {1990#true} assume true; {1990#true} is VALID [2022-04-07 13:01:51,782 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1990#true} {1990#true} #80#return; {1990#true} is VALID [2022-04-07 13:01:51,782 INFO L272 TraceCheckUtils]: 17: Hoare triple {1990#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1990#true} is VALID [2022-04-07 13:01:51,782 INFO L290 TraceCheckUtils]: 18: Hoare triple {1990#true} ~cond := #in~cond; {1990#true} is VALID [2022-04-07 13:01:51,783 INFO L290 TraceCheckUtils]: 19: Hoare triple {1990#true} assume !(0 == ~cond); {1990#true} is VALID [2022-04-07 13:01:51,783 INFO L290 TraceCheckUtils]: 20: Hoare triple {1990#true} assume true; {1990#true} is VALID [2022-04-07 13:01:51,783 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1990#true} {1990#true} #82#return; {1990#true} is VALID [2022-04-07 13:01:51,783 INFO L290 TraceCheckUtils]: 22: Hoare triple {1990#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {1990#true} is VALID [2022-04-07 13:01:51,783 INFO L290 TraceCheckUtils]: 23: Hoare triple {1990#true} assume !false; {1990#true} is VALID [2022-04-07 13:01:51,783 INFO L272 TraceCheckUtils]: 24: Hoare triple {1990#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1990#true} is VALID [2022-04-07 13:01:51,783 INFO L290 TraceCheckUtils]: 25: Hoare triple {1990#true} ~cond := #in~cond; {1990#true} is VALID [2022-04-07 13:01:51,783 INFO L290 TraceCheckUtils]: 26: Hoare triple {1990#true} assume !(0 == ~cond); {1990#true} is VALID [2022-04-07 13:01:51,783 INFO L290 TraceCheckUtils]: 27: Hoare triple {1990#true} assume true; {1990#true} is VALID [2022-04-07 13:01:51,783 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1990#true} {1990#true} #84#return; {1990#true} is VALID [2022-04-07 13:01:51,783 INFO L272 TraceCheckUtils]: 29: Hoare triple {1990#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1990#true} is VALID [2022-04-07 13:01:51,783 INFO L290 TraceCheckUtils]: 30: Hoare triple {1990#true} ~cond := #in~cond; {1990#true} is VALID [2022-04-07 13:01:51,783 INFO L290 TraceCheckUtils]: 31: Hoare triple {1990#true} assume !(0 == ~cond); {1990#true} is VALID [2022-04-07 13:01:51,783 INFO L290 TraceCheckUtils]: 32: Hoare triple {1990#true} assume true; {1990#true} is VALID [2022-04-07 13:01:51,784 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1990#true} {1990#true} #86#return; {1990#true} is VALID [2022-04-07 13:01:51,784 INFO L290 TraceCheckUtils]: 34: Hoare triple {1990#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {1990#true} is VALID [2022-04-07 13:01:51,784 INFO L290 TraceCheckUtils]: 35: Hoare triple {1990#true} assume !false; {1990#true} is VALID [2022-04-07 13:01:51,784 INFO L272 TraceCheckUtils]: 36: Hoare triple {1990#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1990#true} is VALID [2022-04-07 13:01:51,786 INFO L290 TraceCheckUtils]: 37: Hoare triple {1990#true} ~cond := #in~cond; {2106#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-07 13:01:51,787 INFO L290 TraceCheckUtils]: 38: Hoare triple {2106#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {2110#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 13:01:51,787 INFO L290 TraceCheckUtils]: 39: Hoare triple {2110#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2110#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 13:01:51,788 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {2110#(not (= |__VERIFIER_assert_#in~cond| 0))} {1990#true} #88#return; {2117#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-07 13:01:51,788 INFO L272 TraceCheckUtils]: 41: Hoare triple {2117#(= main_~b~0 (* main_~a~0 main_~y~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1990#true} is VALID [2022-04-07 13:01:51,788 INFO L290 TraceCheckUtils]: 42: Hoare triple {1990#true} ~cond := #in~cond; {1990#true} is VALID [2022-04-07 13:01:51,788 INFO L290 TraceCheckUtils]: 43: Hoare triple {1990#true} assume !(0 == ~cond); {1990#true} is VALID [2022-04-07 13:01:51,788 INFO L290 TraceCheckUtils]: 44: Hoare triple {1990#true} assume true; {1990#true} is VALID [2022-04-07 13:01:51,788 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1990#true} {2117#(= main_~b~0 (* main_~a~0 main_~y~0))} #90#return; {2117#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-07 13:01:51,788 INFO L272 TraceCheckUtils]: 46: Hoare triple {2117#(= main_~b~0 (* main_~a~0 main_~y~0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {1990#true} is VALID [2022-04-07 13:01:51,789 INFO L290 TraceCheckUtils]: 47: Hoare triple {1990#true} ~cond := #in~cond; {1990#true} is VALID [2022-04-07 13:01:51,789 INFO L290 TraceCheckUtils]: 48: Hoare triple {1990#true} assume !(0 == ~cond); {1990#true} is VALID [2022-04-07 13:01:51,789 INFO L290 TraceCheckUtils]: 49: Hoare triple {1990#true} assume true; {1990#true} is VALID [2022-04-07 13:01:51,790 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {1990#true} {2117#(= main_~b~0 (* main_~a~0 main_~y~0))} #92#return; {2117#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-07 13:01:51,790 INFO L290 TraceCheckUtils]: 51: Hoare triple {2117#(= main_~b~0 (* main_~a~0 main_~y~0))} assume !!(~r~0 >= 2 * ~b~0); {2151#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} is VALID [2022-04-07 13:01:51,791 INFO L272 TraceCheckUtils]: 52: Hoare triple {2151#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {2155#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 13:01:51,791 INFO L290 TraceCheckUtils]: 53: Hoare triple {2155#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2159#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 13:01:51,792 INFO L290 TraceCheckUtils]: 54: Hoare triple {2159#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1991#false} is VALID [2022-04-07 13:01:51,792 INFO L290 TraceCheckUtils]: 55: Hoare triple {1991#false} assume !false; {1991#false} is VALID [2022-04-07 13:01:51,792 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 15 proven. 7 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-07 13:01:51,792 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 13:02:00,013 INFO L290 TraceCheckUtils]: 55: Hoare triple {1991#false} assume !false; {1991#false} is VALID [2022-04-07 13:02:00,014 INFO L290 TraceCheckUtils]: 54: Hoare triple {2159#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1991#false} is VALID [2022-04-07 13:02:00,014 INFO L290 TraceCheckUtils]: 53: Hoare triple {2155#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2159#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 13:02:00,015 INFO L272 TraceCheckUtils]: 52: Hoare triple {2151#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {2155#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 13:02:00,016 INFO L290 TraceCheckUtils]: 51: Hoare triple {2178#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} assume !!(~r~0 >= 2 * ~b~0); {2151#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} is VALID [2022-04-07 13:02:00,016 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {1990#true} {2178#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} #92#return; {2178#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-07 13:02:00,016 INFO L290 TraceCheckUtils]: 49: Hoare triple {1990#true} assume true; {1990#true} is VALID [2022-04-07 13:02:00,017 INFO L290 TraceCheckUtils]: 48: Hoare triple {1990#true} assume !(0 == ~cond); {1990#true} is VALID [2022-04-07 13:02:00,017 INFO L290 TraceCheckUtils]: 47: Hoare triple {1990#true} ~cond := #in~cond; {1990#true} is VALID [2022-04-07 13:02:00,017 INFO L272 TraceCheckUtils]: 46: Hoare triple {2178#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {1990#true} is VALID [2022-04-07 13:02:00,018 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1990#true} {2178#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} #90#return; {2178#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-07 13:02:00,018 INFO L290 TraceCheckUtils]: 44: Hoare triple {1990#true} assume true; {1990#true} is VALID [2022-04-07 13:02:00,018 INFO L290 TraceCheckUtils]: 43: Hoare triple {1990#true} assume !(0 == ~cond); {1990#true} is VALID [2022-04-07 13:02:00,018 INFO L290 TraceCheckUtils]: 42: Hoare triple {1990#true} ~cond := #in~cond; {1990#true} is VALID [2022-04-07 13:02:00,018 INFO L272 TraceCheckUtils]: 41: Hoare triple {2178#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1990#true} is VALID [2022-04-07 13:02:00,019 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {2110#(not (= |__VERIFIER_assert_#in~cond| 0))} {1990#true} #88#return; {2178#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-07 13:02:00,020 INFO L290 TraceCheckUtils]: 39: Hoare triple {2110#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2110#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 13:02:00,020 INFO L290 TraceCheckUtils]: 38: Hoare triple {2221#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {2110#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 13:02:00,021 INFO L290 TraceCheckUtils]: 37: Hoare triple {1990#true} ~cond := #in~cond; {2221#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-07 13:02:00,021 INFO L272 TraceCheckUtils]: 36: Hoare triple {1990#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1990#true} is VALID [2022-04-07 13:02:00,021 INFO L290 TraceCheckUtils]: 35: Hoare triple {1990#true} assume !false; {1990#true} is VALID [2022-04-07 13:02:00,021 INFO L290 TraceCheckUtils]: 34: Hoare triple {1990#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {1990#true} is VALID [2022-04-07 13:02:00,021 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1990#true} {1990#true} #86#return; {1990#true} is VALID [2022-04-07 13:02:00,021 INFO L290 TraceCheckUtils]: 32: Hoare triple {1990#true} assume true; {1990#true} is VALID [2022-04-07 13:02:00,021 INFO L290 TraceCheckUtils]: 31: Hoare triple {1990#true} assume !(0 == ~cond); {1990#true} is VALID [2022-04-07 13:02:00,021 INFO L290 TraceCheckUtils]: 30: Hoare triple {1990#true} ~cond := #in~cond; {1990#true} is VALID [2022-04-07 13:02:00,021 INFO L272 TraceCheckUtils]: 29: Hoare triple {1990#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1990#true} is VALID [2022-04-07 13:02:00,021 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1990#true} {1990#true} #84#return; {1990#true} is VALID [2022-04-07 13:02:00,021 INFO L290 TraceCheckUtils]: 27: Hoare triple {1990#true} assume true; {1990#true} is VALID [2022-04-07 13:02:00,021 INFO L290 TraceCheckUtils]: 26: Hoare triple {1990#true} assume !(0 == ~cond); {1990#true} is VALID [2022-04-07 13:02:00,021 INFO L290 TraceCheckUtils]: 25: Hoare triple {1990#true} ~cond := #in~cond; {1990#true} is VALID [2022-04-07 13:02:00,022 INFO L272 TraceCheckUtils]: 24: Hoare triple {1990#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1990#true} is VALID [2022-04-07 13:02:00,022 INFO L290 TraceCheckUtils]: 23: Hoare triple {1990#true} assume !false; {1990#true} is VALID [2022-04-07 13:02:00,022 INFO L290 TraceCheckUtils]: 22: Hoare triple {1990#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {1990#true} is VALID [2022-04-07 13:02:00,022 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1990#true} {1990#true} #82#return; {1990#true} is VALID [2022-04-07 13:02:00,022 INFO L290 TraceCheckUtils]: 20: Hoare triple {1990#true} assume true; {1990#true} is VALID [2022-04-07 13:02:00,022 INFO L290 TraceCheckUtils]: 19: Hoare triple {1990#true} assume !(0 == ~cond); {1990#true} is VALID [2022-04-07 13:02:00,022 INFO L290 TraceCheckUtils]: 18: Hoare triple {1990#true} ~cond := #in~cond; {1990#true} is VALID [2022-04-07 13:02:00,022 INFO L272 TraceCheckUtils]: 17: Hoare triple {1990#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1990#true} is VALID [2022-04-07 13:02:00,022 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1990#true} {1990#true} #80#return; {1990#true} is VALID [2022-04-07 13:02:00,022 INFO L290 TraceCheckUtils]: 15: Hoare triple {1990#true} assume true; {1990#true} is VALID [2022-04-07 13:02:00,022 INFO L290 TraceCheckUtils]: 14: Hoare triple {1990#true} assume !(0 == ~cond); {1990#true} is VALID [2022-04-07 13:02:00,022 INFO L290 TraceCheckUtils]: 13: Hoare triple {1990#true} ~cond := #in~cond; {1990#true} is VALID [2022-04-07 13:02:00,022 INFO L272 TraceCheckUtils]: 12: Hoare triple {1990#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {1990#true} is VALID [2022-04-07 13:02:00,022 INFO L290 TraceCheckUtils]: 11: Hoare triple {1990#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1990#true} is VALID [2022-04-07 13:02:00,023 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1990#true} {1990#true} #78#return; {1990#true} is VALID [2022-04-07 13:02:00,023 INFO L290 TraceCheckUtils]: 9: Hoare triple {1990#true} assume true; {1990#true} is VALID [2022-04-07 13:02:00,023 INFO L290 TraceCheckUtils]: 8: Hoare triple {1990#true} assume !(0 == ~cond); {1990#true} is VALID [2022-04-07 13:02:00,023 INFO L290 TraceCheckUtils]: 7: Hoare triple {1990#true} ~cond := #in~cond; {1990#true} is VALID [2022-04-07 13:02:00,023 INFO L272 TraceCheckUtils]: 6: Hoare triple {1990#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {1990#true} is VALID [2022-04-07 13:02:00,023 INFO L290 TraceCheckUtils]: 5: Hoare triple {1990#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {1990#true} is VALID [2022-04-07 13:02:00,023 INFO L272 TraceCheckUtils]: 4: Hoare triple {1990#true} call #t~ret6 := main(); {1990#true} is VALID [2022-04-07 13:02:00,023 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1990#true} {1990#true} #98#return; {1990#true} is VALID [2022-04-07 13:02:00,023 INFO L290 TraceCheckUtils]: 2: Hoare triple {1990#true} assume true; {1990#true} is VALID [2022-04-07 13:02:00,023 INFO L290 TraceCheckUtils]: 1: Hoare triple {1990#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(14, 2);call #Ultimate.allocInit(12, 3); {1990#true} is VALID [2022-04-07 13:02:00,023 INFO L272 TraceCheckUtils]: 0: Hoare triple {1990#true} call ULTIMATE.init(); {1990#true} is VALID [2022-04-07 13:02:00,023 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 15 proven. 7 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-07 13:02:00,024 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 13:02:00,024 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [371436464] [2022-04-07 13:02:00,024 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 13:02:00,024 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [227880945] [2022-04-07 13:02:00,024 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [227880945] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 13:02:00,024 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 13:02:00,024 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-07 13:02:00,024 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [547341976] [2022-04-07 13:02:00,024 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 13:02:00,025 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) Word has length 56 [2022-04-07 13:02:00,027 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 13:02:00,027 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-07 13:02:00,053 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 13:02:00,053 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-07 13:02:00,053 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 13:02:00,055 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-07 13:02:00,055 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=68, Unknown=0, NotChecked=0, Total=90 [2022-04-07 13:02:00,055 INFO L87 Difference]: Start difference. First operand 61 states and 73 transitions. Second operand has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-07 13:02:00,371 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:02:00,371 INFO L93 Difference]: Finished difference Result 67 states and 78 transitions. [2022-04-07 13:02:00,371 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-07 13:02:00,371 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) Word has length 56 [2022-04-07 13:02:00,371 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 13:02:00,372 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-07 13:02:00,377 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 48 transitions. [2022-04-07 13:02:00,377 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-07 13:02:00,378 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 48 transitions. [2022-04-07 13:02:00,378 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 48 transitions. [2022-04-07 13:02:00,411 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 13:02:00,412 INFO L225 Difference]: With dead ends: 67 [2022-04-07 13:02:00,412 INFO L226 Difference]: Without dead ends: 65 [2022-04-07 13:02:00,413 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 114 GetRequests, 102 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=40, Invalid=116, Unknown=0, NotChecked=0, Total=156 [2022-04-07 13:02:00,413 INFO L913 BasicCegarLoop]: 28 mSDtfsCounter, 22 mSDsluCounter, 108 mSDsCounter, 0 mSdLazyCounter, 125 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 24 SdHoareTripleChecker+Valid, 136 SdHoareTripleChecker+Invalid, 135 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 125 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-07 13:02:00,413 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [24 Valid, 136 Invalid, 135 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 125 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-07 13:02:00,414 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 65 states. [2022-04-07 13:02:00,440 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 65 to 65. [2022-04-07 13:02:00,440 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 13:02:00,440 INFO L82 GeneralOperation]: Start isEquivalent. First operand 65 states. Second operand has 65 states, 38 states have (on average 1.105263157894737) internal successors, (42), 39 states have internal predecessors, (42), 18 states have call successors, (18), 9 states have call predecessors, (18), 8 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-07 13:02:00,441 INFO L74 IsIncluded]: Start isIncluded. First operand 65 states. Second operand has 65 states, 38 states have (on average 1.105263157894737) internal successors, (42), 39 states have internal predecessors, (42), 18 states have call successors, (18), 9 states have call predecessors, (18), 8 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-07 13:02:00,441 INFO L87 Difference]: Start difference. First operand 65 states. Second operand has 65 states, 38 states have (on average 1.105263157894737) internal successors, (42), 39 states have internal predecessors, (42), 18 states have call successors, (18), 9 states have call predecessors, (18), 8 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-07 13:02:00,443 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:02:00,443 INFO L93 Difference]: Finished difference Result 65 states and 76 transitions. [2022-04-07 13:02:00,443 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 76 transitions. [2022-04-07 13:02:00,443 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:02:00,443 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:02:00,443 INFO L74 IsIncluded]: Start isIncluded. First operand has 65 states, 38 states have (on average 1.105263157894737) internal successors, (42), 39 states have internal predecessors, (42), 18 states have call successors, (18), 9 states have call predecessors, (18), 8 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 65 states. [2022-04-07 13:02:00,443 INFO L87 Difference]: Start difference. First operand has 65 states, 38 states have (on average 1.105263157894737) internal successors, (42), 39 states have internal predecessors, (42), 18 states have call successors, (18), 9 states have call predecessors, (18), 8 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 65 states. [2022-04-07 13:02:00,445 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:02:00,445 INFO L93 Difference]: Finished difference Result 65 states and 76 transitions. [2022-04-07 13:02:00,445 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 76 transitions. [2022-04-07 13:02:00,445 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:02:00,446 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:02:00,446 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 13:02:00,446 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 13:02:00,446 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 65 states, 38 states have (on average 1.105263157894737) internal successors, (42), 39 states have internal predecessors, (42), 18 states have call successors, (18), 9 states have call predecessors, (18), 8 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-07 13:02:00,447 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 65 states to 65 states and 76 transitions. [2022-04-07 13:02:00,447 INFO L78 Accepts]: Start accepts. Automaton has 65 states and 76 transitions. Word has length 56 [2022-04-07 13:02:00,448 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 13:02:00,448 INFO L478 AbstractCegarLoop]: Abstraction has 65 states and 76 transitions. [2022-04-07 13:02:00,448 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-07 13:02:00,448 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 76 transitions. [2022-04-07 13:02:00,448 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-07 13:02:00,448 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 13:02:00,448 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 6, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 13:02:00,465 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-07 13:02:00,663 WARN L460 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-07 13:02:00,663 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 13:02:00,664 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 13:02:00,664 INFO L85 PathProgramCache]: Analyzing trace with hash -2096667334, now seen corresponding path program 1 times [2022-04-07 13:02:00,664 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 13:02:00,664 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [308556109] [2022-04-07 13:02:00,664 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:02:00,664 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 13:02:00,676 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 13:02:00,676 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1154232150] [2022-04-07 13:02:00,676 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:02:00,676 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:02:00,676 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 13:02:00,677 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-07 13:02:00,688 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-07 13:02:00,715 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:02:00,716 INFO L263 TraceCheckSpWp]: Trace formula consists of 158 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-07 13:02:00,725 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:02:00,726 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 13:02:01,083 INFO L272 TraceCheckUtils]: 0: Hoare triple {2665#true} call ULTIMATE.init(); {2665#true} is VALID [2022-04-07 13:02:01,083 INFO L290 TraceCheckUtils]: 1: Hoare triple {2665#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(14, 2);call #Ultimate.allocInit(12, 3); {2665#true} is VALID [2022-04-07 13:02:01,083 INFO L290 TraceCheckUtils]: 2: Hoare triple {2665#true} assume true; {2665#true} is VALID [2022-04-07 13:02:01,083 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2665#true} {2665#true} #98#return; {2665#true} is VALID [2022-04-07 13:02:01,083 INFO L272 TraceCheckUtils]: 4: Hoare triple {2665#true} call #t~ret6 := main(); {2665#true} is VALID [2022-04-07 13:02:01,083 INFO L290 TraceCheckUtils]: 5: Hoare triple {2665#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2665#true} is VALID [2022-04-07 13:02:01,083 INFO L272 TraceCheckUtils]: 6: Hoare triple {2665#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {2665#true} is VALID [2022-04-07 13:02:01,083 INFO L290 TraceCheckUtils]: 7: Hoare triple {2665#true} ~cond := #in~cond; {2665#true} is VALID [2022-04-07 13:02:01,084 INFO L290 TraceCheckUtils]: 8: Hoare triple {2665#true} assume !(0 == ~cond); {2665#true} is VALID [2022-04-07 13:02:01,084 INFO L290 TraceCheckUtils]: 9: Hoare triple {2665#true} assume true; {2665#true} is VALID [2022-04-07 13:02:01,084 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2665#true} {2665#true} #78#return; {2665#true} is VALID [2022-04-07 13:02:01,084 INFO L290 TraceCheckUtils]: 11: Hoare triple {2665#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2665#true} is VALID [2022-04-07 13:02:01,084 INFO L272 TraceCheckUtils]: 12: Hoare triple {2665#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {2665#true} is VALID [2022-04-07 13:02:01,084 INFO L290 TraceCheckUtils]: 13: Hoare triple {2665#true} ~cond := #in~cond; {2665#true} is VALID [2022-04-07 13:02:01,084 INFO L290 TraceCheckUtils]: 14: Hoare triple {2665#true} assume !(0 == ~cond); {2665#true} is VALID [2022-04-07 13:02:01,084 INFO L290 TraceCheckUtils]: 15: Hoare triple {2665#true} assume true; {2665#true} is VALID [2022-04-07 13:02:01,084 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2665#true} {2665#true} #80#return; {2665#true} is VALID [2022-04-07 13:02:01,084 INFO L272 TraceCheckUtils]: 17: Hoare triple {2665#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2665#true} is VALID [2022-04-07 13:02:01,084 INFO L290 TraceCheckUtils]: 18: Hoare triple {2665#true} ~cond := #in~cond; {2665#true} is VALID [2022-04-07 13:02:01,084 INFO L290 TraceCheckUtils]: 19: Hoare triple {2665#true} assume !(0 == ~cond); {2665#true} is VALID [2022-04-07 13:02:01,084 INFO L290 TraceCheckUtils]: 20: Hoare triple {2665#true} assume true; {2665#true} is VALID [2022-04-07 13:02:01,084 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2665#true} {2665#true} #82#return; {2665#true} is VALID [2022-04-07 13:02:01,085 INFO L290 TraceCheckUtils]: 22: Hoare triple {2665#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {2736#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-07 13:02:01,085 INFO L290 TraceCheckUtils]: 23: Hoare triple {2736#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !false; {2736#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-07 13:02:01,085 INFO L272 TraceCheckUtils]: 24: Hoare triple {2736#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2665#true} is VALID [2022-04-07 13:02:01,085 INFO L290 TraceCheckUtils]: 25: Hoare triple {2665#true} ~cond := #in~cond; {2665#true} is VALID [2022-04-07 13:02:01,086 INFO L290 TraceCheckUtils]: 26: Hoare triple {2665#true} assume !(0 == ~cond); {2665#true} is VALID [2022-04-07 13:02:01,086 INFO L290 TraceCheckUtils]: 27: Hoare triple {2665#true} assume true; {2665#true} is VALID [2022-04-07 13:02:01,088 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2665#true} {2736#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #84#return; {2736#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-07 13:02:01,088 INFO L272 TraceCheckUtils]: 29: Hoare triple {2736#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2665#true} is VALID [2022-04-07 13:02:01,088 INFO L290 TraceCheckUtils]: 30: Hoare triple {2665#true} ~cond := #in~cond; {2665#true} is VALID [2022-04-07 13:02:01,088 INFO L290 TraceCheckUtils]: 31: Hoare triple {2665#true} assume !(0 == ~cond); {2665#true} is VALID [2022-04-07 13:02:01,088 INFO L290 TraceCheckUtils]: 32: Hoare triple {2665#true} assume true; {2665#true} is VALID [2022-04-07 13:02:01,092 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2665#true} {2736#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #86#return; {2736#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-07 13:02:01,093 INFO L290 TraceCheckUtils]: 34: Hoare triple {2736#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {2773#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-07 13:02:01,093 INFO L290 TraceCheckUtils]: 35: Hoare triple {2773#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !false; {2773#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-07 13:02:01,093 INFO L272 TraceCheckUtils]: 36: Hoare triple {2773#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2665#true} is VALID [2022-04-07 13:02:01,093 INFO L290 TraceCheckUtils]: 37: Hoare triple {2665#true} ~cond := #in~cond; {2665#true} is VALID [2022-04-07 13:02:01,093 INFO L290 TraceCheckUtils]: 38: Hoare triple {2665#true} assume !(0 == ~cond); {2665#true} is VALID [2022-04-07 13:02:01,093 INFO L290 TraceCheckUtils]: 39: Hoare triple {2665#true} assume true; {2665#true} is VALID [2022-04-07 13:02:01,094 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {2665#true} {2773#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #88#return; {2773#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-07 13:02:01,094 INFO L272 TraceCheckUtils]: 41: Hoare triple {2773#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2665#true} is VALID [2022-04-07 13:02:01,094 INFO L290 TraceCheckUtils]: 42: Hoare triple {2665#true} ~cond := #in~cond; {2665#true} is VALID [2022-04-07 13:02:01,094 INFO L290 TraceCheckUtils]: 43: Hoare triple {2665#true} assume !(0 == ~cond); {2665#true} is VALID [2022-04-07 13:02:01,094 INFO L290 TraceCheckUtils]: 44: Hoare triple {2665#true} assume true; {2665#true} is VALID [2022-04-07 13:02:01,095 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2665#true} {2773#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #90#return; {2773#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-07 13:02:01,095 INFO L272 TraceCheckUtils]: 46: Hoare triple {2773#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {2665#true} is VALID [2022-04-07 13:02:01,095 INFO L290 TraceCheckUtils]: 47: Hoare triple {2665#true} ~cond := #in~cond; {2665#true} is VALID [2022-04-07 13:02:01,095 INFO L290 TraceCheckUtils]: 48: Hoare triple {2665#true} assume !(0 == ~cond); {2665#true} is VALID [2022-04-07 13:02:01,095 INFO L290 TraceCheckUtils]: 49: Hoare triple {2665#true} assume true; {2665#true} is VALID [2022-04-07 13:02:01,096 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2665#true} {2773#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #92#return; {2773#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-07 13:02:01,096 INFO L290 TraceCheckUtils]: 51: Hoare triple {2773#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !(~r~0 >= 2 * ~b~0); {2825#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (not (<= (* main_~b~0 2) main_~r~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-07 13:02:01,097 INFO L290 TraceCheckUtils]: 52: Hoare triple {2825#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (not (<= (* main_~b~0 2) main_~r~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {2829#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} is VALID [2022-04-07 13:02:01,097 INFO L290 TraceCheckUtils]: 53: Hoare triple {2829#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} assume !false; {2829#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} is VALID [2022-04-07 13:02:01,097 INFO L272 TraceCheckUtils]: 54: Hoare triple {2829#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2665#true} is VALID [2022-04-07 13:02:01,097 INFO L290 TraceCheckUtils]: 55: Hoare triple {2665#true} ~cond := #in~cond; {2665#true} is VALID [2022-04-07 13:02:01,097 INFO L290 TraceCheckUtils]: 56: Hoare triple {2665#true} assume !(0 == ~cond); {2665#true} is VALID [2022-04-07 13:02:01,097 INFO L290 TraceCheckUtils]: 57: Hoare triple {2665#true} assume true; {2665#true} is VALID [2022-04-07 13:02:01,098 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {2665#true} {2829#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} #84#return; {2829#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} is VALID [2022-04-07 13:02:01,099 INFO L272 TraceCheckUtils]: 59: Hoare triple {2829#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2851#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 13:02:01,099 INFO L290 TraceCheckUtils]: 60: Hoare triple {2851#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2855#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 13:02:01,099 INFO L290 TraceCheckUtils]: 61: Hoare triple {2855#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2666#false} is VALID [2022-04-07 13:02:01,099 INFO L290 TraceCheckUtils]: 62: Hoare triple {2666#false} assume !false; {2666#false} is VALID [2022-04-07 13:02:01,100 INFO L134 CoverageAnalysis]: Checked inductivity of 87 backedges. 12 proven. 3 refuted. 0 times theorem prover too weak. 72 trivial. 0 not checked. [2022-04-07 13:02:01,100 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 13:02:01,431 INFO L290 TraceCheckUtils]: 62: Hoare triple {2666#false} assume !false; {2666#false} is VALID [2022-04-07 13:02:01,432 INFO L290 TraceCheckUtils]: 61: Hoare triple {2855#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2666#false} is VALID [2022-04-07 13:02:01,432 INFO L290 TraceCheckUtils]: 60: Hoare triple {2851#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2855#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 13:02:01,433 INFO L272 TraceCheckUtils]: 59: Hoare triple {2871#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2851#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 13:02:01,433 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {2665#true} {2871#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #84#return; {2871#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-07 13:02:01,433 INFO L290 TraceCheckUtils]: 57: Hoare triple {2665#true} assume true; {2665#true} is VALID [2022-04-07 13:02:01,433 INFO L290 TraceCheckUtils]: 56: Hoare triple {2665#true} assume !(0 == ~cond); {2665#true} is VALID [2022-04-07 13:02:01,433 INFO L290 TraceCheckUtils]: 55: Hoare triple {2665#true} ~cond := #in~cond; {2665#true} is VALID [2022-04-07 13:02:01,433 INFO L272 TraceCheckUtils]: 54: Hoare triple {2871#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2665#true} is VALID [2022-04-07 13:02:01,434 INFO L290 TraceCheckUtils]: 53: Hoare triple {2871#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !false; {2871#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-07 13:02:01,442 INFO L290 TraceCheckUtils]: 52: Hoare triple {2893#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {2871#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-07 13:02:01,442 INFO L290 TraceCheckUtils]: 51: Hoare triple {2897#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} assume !(~r~0 >= 2 * ~b~0); {2893#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-07 13:02:01,443 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2665#true} {2897#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} #92#return; {2897#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-07 13:02:01,443 INFO L290 TraceCheckUtils]: 49: Hoare triple {2665#true} assume true; {2665#true} is VALID [2022-04-07 13:02:01,443 INFO L290 TraceCheckUtils]: 48: Hoare triple {2665#true} assume !(0 == ~cond); {2665#true} is VALID [2022-04-07 13:02:01,443 INFO L290 TraceCheckUtils]: 47: Hoare triple {2665#true} ~cond := #in~cond; {2665#true} is VALID [2022-04-07 13:02:01,443 INFO L272 TraceCheckUtils]: 46: Hoare triple {2897#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {2665#true} is VALID [2022-04-07 13:02:01,444 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2665#true} {2897#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} #90#return; {2897#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-07 13:02:01,444 INFO L290 TraceCheckUtils]: 44: Hoare triple {2665#true} assume true; {2665#true} is VALID [2022-04-07 13:02:01,444 INFO L290 TraceCheckUtils]: 43: Hoare triple {2665#true} assume !(0 == ~cond); {2665#true} is VALID [2022-04-07 13:02:01,444 INFO L290 TraceCheckUtils]: 42: Hoare triple {2665#true} ~cond := #in~cond; {2665#true} is VALID [2022-04-07 13:02:01,444 INFO L272 TraceCheckUtils]: 41: Hoare triple {2897#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2665#true} is VALID [2022-04-07 13:02:01,448 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {2665#true} {2897#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} #88#return; {2897#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-07 13:02:01,448 INFO L290 TraceCheckUtils]: 39: Hoare triple {2665#true} assume true; {2665#true} is VALID [2022-04-07 13:02:01,448 INFO L290 TraceCheckUtils]: 38: Hoare triple {2665#true} assume !(0 == ~cond); {2665#true} is VALID [2022-04-07 13:02:01,448 INFO L290 TraceCheckUtils]: 37: Hoare triple {2665#true} ~cond := #in~cond; {2665#true} is VALID [2022-04-07 13:02:01,448 INFO L272 TraceCheckUtils]: 36: Hoare triple {2897#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2665#true} is VALID [2022-04-07 13:02:01,448 INFO L290 TraceCheckUtils]: 35: Hoare triple {2897#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} assume !false; {2897#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-07 13:02:01,449 INFO L290 TraceCheckUtils]: 34: Hoare triple {2949#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {2897#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-07 13:02:01,449 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2665#true} {2949#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} #86#return; {2949#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} is VALID [2022-04-07 13:02:01,449 INFO L290 TraceCheckUtils]: 32: Hoare triple {2665#true} assume true; {2665#true} is VALID [2022-04-07 13:02:01,449 INFO L290 TraceCheckUtils]: 31: Hoare triple {2665#true} assume !(0 == ~cond); {2665#true} is VALID [2022-04-07 13:02:01,450 INFO L290 TraceCheckUtils]: 30: Hoare triple {2665#true} ~cond := #in~cond; {2665#true} is VALID [2022-04-07 13:02:01,450 INFO L272 TraceCheckUtils]: 29: Hoare triple {2949#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2665#true} is VALID [2022-04-07 13:02:01,450 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2665#true} {2949#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} #84#return; {2949#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} is VALID [2022-04-07 13:02:01,450 INFO L290 TraceCheckUtils]: 27: Hoare triple {2665#true} assume true; {2665#true} is VALID [2022-04-07 13:02:01,450 INFO L290 TraceCheckUtils]: 26: Hoare triple {2665#true} assume !(0 == ~cond); {2665#true} is VALID [2022-04-07 13:02:01,450 INFO L290 TraceCheckUtils]: 25: Hoare triple {2665#true} ~cond := #in~cond; {2665#true} is VALID [2022-04-07 13:02:01,450 INFO L272 TraceCheckUtils]: 24: Hoare triple {2949#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2665#true} is VALID [2022-04-07 13:02:01,451 INFO L290 TraceCheckUtils]: 23: Hoare triple {2949#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} assume !false; {2949#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} is VALID [2022-04-07 13:02:01,451 INFO L290 TraceCheckUtils]: 22: Hoare triple {2665#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {2949#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} is VALID [2022-04-07 13:02:01,451 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2665#true} {2665#true} #82#return; {2665#true} is VALID [2022-04-07 13:02:01,451 INFO L290 TraceCheckUtils]: 20: Hoare triple {2665#true} assume true; {2665#true} is VALID [2022-04-07 13:02:01,451 INFO L290 TraceCheckUtils]: 19: Hoare triple {2665#true} assume !(0 == ~cond); {2665#true} is VALID [2022-04-07 13:02:01,451 INFO L290 TraceCheckUtils]: 18: Hoare triple {2665#true} ~cond := #in~cond; {2665#true} is VALID [2022-04-07 13:02:01,451 INFO L272 TraceCheckUtils]: 17: Hoare triple {2665#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2665#true} is VALID [2022-04-07 13:02:01,452 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2665#true} {2665#true} #80#return; {2665#true} is VALID [2022-04-07 13:02:01,452 INFO L290 TraceCheckUtils]: 15: Hoare triple {2665#true} assume true; {2665#true} is VALID [2022-04-07 13:02:01,452 INFO L290 TraceCheckUtils]: 14: Hoare triple {2665#true} assume !(0 == ~cond); {2665#true} is VALID [2022-04-07 13:02:01,452 INFO L290 TraceCheckUtils]: 13: Hoare triple {2665#true} ~cond := #in~cond; {2665#true} is VALID [2022-04-07 13:02:01,452 INFO L272 TraceCheckUtils]: 12: Hoare triple {2665#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 2 then 1 else 0)); {2665#true} is VALID [2022-04-07 13:02:01,452 INFO L290 TraceCheckUtils]: 11: Hoare triple {2665#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2665#true} is VALID [2022-04-07 13:02:01,452 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2665#true} {2665#true} #78#return; {2665#true} is VALID [2022-04-07 13:02:01,452 INFO L290 TraceCheckUtils]: 9: Hoare triple {2665#true} assume true; {2665#true} is VALID [2022-04-07 13:02:01,452 INFO L290 TraceCheckUtils]: 8: Hoare triple {2665#true} assume !(0 == ~cond); {2665#true} is VALID [2022-04-07 13:02:01,452 INFO L290 TraceCheckUtils]: 7: Hoare triple {2665#true} ~cond := #in~cond; {2665#true} is VALID [2022-04-07 13:02:01,452 INFO L272 TraceCheckUtils]: 6: Hoare triple {2665#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 2 then 1 else 0)); {2665#true} is VALID [2022-04-07 13:02:01,452 INFO L290 TraceCheckUtils]: 5: Hoare triple {2665#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2665#true} is VALID [2022-04-07 13:02:01,452 INFO L272 TraceCheckUtils]: 4: Hoare triple {2665#true} call #t~ret6 := main(); {2665#true} is VALID [2022-04-07 13:02:01,452 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2665#true} {2665#true} #98#return; {2665#true} is VALID [2022-04-07 13:02:01,452 INFO L290 TraceCheckUtils]: 2: Hoare triple {2665#true} assume true; {2665#true} is VALID [2022-04-07 13:02:01,452 INFO L290 TraceCheckUtils]: 1: Hoare triple {2665#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(14, 2);call #Ultimate.allocInit(12, 3); {2665#true} is VALID [2022-04-07 13:02:01,452 INFO L272 TraceCheckUtils]: 0: Hoare triple {2665#true} call ULTIMATE.init(); {2665#true} is VALID [2022-04-07 13:02:01,453 INFO L134 CoverageAnalysis]: Checked inductivity of 87 backedges. 15 proven. 0 refuted. 0 times theorem prover too weak. 72 trivial. 0 not checked. [2022-04-07 13:02:01,453 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 13:02:01,453 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [308556109] [2022-04-07 13:02:01,453 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 13:02:01,453 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1154232150] [2022-04-07 13:02:01,453 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1154232150] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-07 13:02:01,453 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-07 13:02:01,453 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [8] total 12 [2022-04-07 13:02:01,453 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1544555619] [2022-04-07 13:02:01,453 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 13:02:01,454 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 63 [2022-04-07 13:02:01,454 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 13:02:01,454 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-07 13:02:01,491 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 13:02:01,492 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-07 13:02:01,492 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 13:02:01,492 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-07 13:02:01,492 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=38, Invalid=94, Unknown=0, NotChecked=0, Total=132 [2022-04-07 13:02:01,492 INFO L87 Difference]: Start difference. First operand 65 states and 76 transitions. Second operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-07 13:02:01,988 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:02:01,988 INFO L93 Difference]: Finished difference Result 65 states and 76 transitions. [2022-04-07 13:02:01,988 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-07 13:02:01,989 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 63 [2022-04-07 13:02:01,989 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 13:02:01,989 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-07 13:02:01,990 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 46 transitions. [2022-04-07 13:02:01,990 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-07 13:02:01,990 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 46 transitions. [2022-04-07 13:02:01,991 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 46 transitions. [2022-04-07 13:02:02,034 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 13:02:02,034 INFO L225 Difference]: With dead ends: 65 [2022-04-07 13:02:02,034 INFO L226 Difference]: Without dead ends: 0 [2022-04-07 13:02:02,035 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 127 GetRequests, 114 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 31 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=50, Invalid=132, Unknown=0, NotChecked=0, Total=182 [2022-04-07 13:02:02,035 INFO L913 BasicCegarLoop]: 29 mSDtfsCounter, 21 mSDsluCounter, 69 mSDsCounter, 0 mSdLazyCounter, 72 mSolverCounterSat, 35 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 21 SdHoareTripleChecker+Valid, 98 SdHoareTripleChecker+Invalid, 107 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 35 IncrementalHoareTripleChecker+Valid, 72 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-07 13:02:02,035 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [21 Valid, 98 Invalid, 107 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [35 Valid, 72 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-07 13:02:02,036 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-07 13:02:02,036 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-07 13:02:02,036 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 13:02:02,036 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-07 13:02:02,036 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-07 13:02:02,036 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-07 13:02:02,036 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:02:02,036 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-07 13:02:02,036 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 13:02:02,036 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:02:02,036 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:02:02,036 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-07 13:02:02,036 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-07 13:02:02,036 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:02:02,036 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-07 13:02:02,036 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 13:02:02,036 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:02:02,036 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:02:02,037 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 13:02:02,037 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 13:02:02,037 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-07 13:02:02,037 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-07 13:02:02,037 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 63 [2022-04-07 13:02:02,037 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 13:02:02,037 INFO L478 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-07 13:02:02,037 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-07 13:02:02,037 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 13:02:02,037 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:02:02,039 INFO L788 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-07 13:02:02,063 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Ended with exit code 0 [2022-04-07 13:02:02,255 WARN L460 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-07 13:02:02,256 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-04-07 13:02:02,690 INFO L882 garLoopResultBuilder]: For program point reach_errorEXIT(line 8) no Hoare annotation was computed. [2022-04-07 13:02:02,690 INFO L882 garLoopResultBuilder]: For program point reach_errorENTRY(line 8) no Hoare annotation was computed. [2022-04-07 13:02:02,690 INFO L882 garLoopResultBuilder]: For program point reach_errorFINAL(line 8) no Hoare annotation was computed. [2022-04-07 13:02:02,691 INFO L885 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 11 13) the Hoare annotation is: true [2022-04-07 13:02:02,691 INFO L882 garLoopResultBuilder]: For program point L12(line 12) no Hoare annotation was computed. [2022-04-07 13:02:02,691 INFO L882 garLoopResultBuilder]: For program point L12-2(lines 11 13) no Hoare annotation was computed. [2022-04-07 13:02:02,691 INFO L882 garLoopResultBuilder]: For program point assume_abort_if_notEXIT(lines 11 13) no Hoare annotation was computed. [2022-04-07 13:02:02,691 INFO L882 garLoopResultBuilder]: For program point L64(line 64) no Hoare annotation was computed. [2022-04-07 13:02:02,691 INFO L882 garLoopResultBuilder]: For program point L31(line 31) no Hoare annotation was computed. [2022-04-07 13:02:02,691 INFO L885 garLoopResultBuilder]: At program point L29(line 29) the Hoare annotation is: true [2022-04-07 13:02:02,691 INFO L878 garLoopResultBuilder]: At program point L29-1(line 29) the Hoare annotation is: (and (<= 0 main_~y~0) (<= main_~y~0 2)) [2022-04-07 13:02:02,691 INFO L885 garLoopResultBuilder]: At program point L27(line 27) the Hoare annotation is: true [2022-04-07 13:02:02,691 INFO L882 garLoopResultBuilder]: For program point L27-1(line 27) no Hoare annotation was computed. [2022-04-07 13:02:02,691 INFO L882 garLoopResultBuilder]: For program point mainEXIT(lines 22 66) no Hoare annotation was computed. [2022-04-07 13:02:02,691 INFO L882 garLoopResultBuilder]: For program point L50(lines 47 59) no Hoare annotation was computed. [2022-04-07 13:02:02,691 INFO L878 garLoopResultBuilder]: At program point L48(line 48) the Hoare annotation is: (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= main_~y~0 2) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0))) [2022-04-07 13:02:02,691 INFO L878 garLoopResultBuilder]: At program point L48-1(line 48) the Hoare annotation is: (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= main_~y~0 2) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0))) [2022-04-07 13:02:02,691 INFO L882 garLoopResultBuilder]: For program point mainFINAL(lines 22 66) no Hoare annotation was computed. [2022-04-07 13:02:02,691 INFO L882 garLoopResultBuilder]: For program point L40(lines 38 62) no Hoare annotation was computed. [2022-04-07 13:02:02,692 INFO L878 garLoopResultBuilder]: At program point L38-2(lines 38 62) the Hoare annotation is: (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= main_~y~0 2) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0))) [2022-04-07 13:02:02,692 INFO L878 garLoopResultBuilder]: At program point L38-3(lines 38 62) the Hoare annotation is: (let ((.cse0 (<= main_~y~0 2)) (.cse1 (<= 1 main_~y~0))) (or (and (= main_~x~0 main_~r~0) .cse0 (= main_~q~0 0) .cse1) (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) .cse0 .cse1 (= main_~b~0 (* main_~a~0 main_~y~0))))) [2022-04-07 13:02:02,692 INFO L885 garLoopResultBuilder]: At program point mainENTRY(lines 22 66) the Hoare annotation is: true [2022-04-07 13:02:02,692 INFO L878 garLoopResultBuilder]: At program point L55(line 55) the Hoare annotation is: (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= main_~y~0 2) (<= (* 2 .cse0) main_~r~0) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 .cse0))) [2022-04-07 13:02:02,692 INFO L882 garLoopResultBuilder]: For program point L55-1(line 55) no Hoare annotation was computed. [2022-04-07 13:02:02,692 INFO L878 garLoopResultBuilder]: At program point L49(line 49) the Hoare annotation is: (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= main_~y~0 2) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0))) [2022-04-07 13:02:02,692 INFO L878 garLoopResultBuilder]: At program point L47-2(lines 47 59) the Hoare annotation is: (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= main_~y~0 2) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0))) [2022-04-07 13:02:02,692 INFO L882 garLoopResultBuilder]: For program point L47-3(lines 47 59) no Hoare annotation was computed. [2022-04-07 13:02:02,692 INFO L878 garLoopResultBuilder]: At program point L39(line 39) the Hoare annotation is: (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= main_~y~0 2) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0))) [2022-04-07 13:02:02,692 INFO L878 garLoopResultBuilder]: At program point L39-1(line 39) the Hoare annotation is: (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= main_~y~0 2) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0))) [2022-04-07 13:02:02,692 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.initFINAL(line -1) no Hoare annotation was computed. [2022-04-07 13:02:02,692 INFO L878 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-07 13:02:02,692 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.initEXIT(line -1) no Hoare annotation was computed. [2022-04-07 13:02:02,692 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.startEXIT(line -1) no Hoare annotation was computed. [2022-04-07 13:02:02,692 INFO L885 garLoopResultBuilder]: At program point L-1(line -1) the Hoare annotation is: true [2022-04-07 13:02:02,693 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2022-04-07 13:02:02,693 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.startFINAL(line -1) no Hoare annotation was computed. [2022-04-07 13:02:02,693 INFO L882 garLoopResultBuilder]: For program point L16(lines 16 17) no Hoare annotation was computed. [2022-04-07 13:02:02,693 INFO L882 garLoopResultBuilder]: For program point L15(lines 15 18) no Hoare annotation was computed. [2022-04-07 13:02:02,693 INFO L885 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 14 20) the Hoare annotation is: true [2022-04-07 13:02:02,693 INFO L882 garLoopResultBuilder]: For program point L15-2(lines 14 20) no Hoare annotation was computed. [2022-04-07 13:02:02,693 INFO L882 garLoopResultBuilder]: For program point __VERIFIER_assertEXIT(lines 14 20) no Hoare annotation was computed. [2022-04-07 13:02:02,693 INFO L882 garLoopResultBuilder]: For program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 17) no Hoare annotation was computed. [2022-04-07 13:02:02,695 INFO L719 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1, 1, 1, 1] [2022-04-07 13:02:02,696 INFO L178 ceAbstractionStarter]: Computing trace abstraction results [2022-04-07 13:02:02,698 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-07 13:02:02,698 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-07 13:02:02,698 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-07 13:02:02,698 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-07 13:02:02,698 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-07 13:02:02,698 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-07 13:02:02,698 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-07 13:02:02,698 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-07 13:02:02,699 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-07 13:02:02,699 WARN L170 areAnnotationChecker]: L27-1 has no Hoare annotation [2022-04-07 13:02:02,699 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-07 13:02:02,699 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-07 13:02:02,699 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-07 13:02:02,699 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-07 13:02:02,699 WARN L170 areAnnotationChecker]: L12-2 has no Hoare annotation [2022-04-07 13:02:02,699 WARN L170 areAnnotationChecker]: L27-1 has no Hoare annotation [2022-04-07 13:02:02,699 WARN L170 areAnnotationChecker]: L16 has no Hoare annotation [2022-04-07 13:02:02,699 WARN L170 areAnnotationChecker]: L16 has no Hoare annotation [2022-04-07 13:02:02,699 WARN L170 areAnnotationChecker]: L15-2 has no Hoare annotation [2022-04-07 13:02:02,699 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-07 13:02:02,699 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-07 13:02:02,699 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-07 13:02:02,699 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-07 13:02:02,699 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-07 13:02:02,699 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-07 13:02:02,699 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-07 13:02:02,699 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-07 13:02:02,699 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-07 13:02:02,699 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-07 13:02:02,699 WARN L170 areAnnotationChecker]: L31 has no Hoare annotation [2022-04-07 13:02:02,699 WARN L170 areAnnotationChecker]: L31 has no Hoare annotation [2022-04-07 13:02:02,699 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2022-04-07 13:02:02,699 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2022-04-07 13:02:02,699 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2022-04-07 13:02:02,699 WARN L170 areAnnotationChecker]: L50 has no Hoare annotation [2022-04-07 13:02:02,699 WARN L170 areAnnotationChecker]: L50 has no Hoare annotation [2022-04-07 13:02:02,699 WARN L170 areAnnotationChecker]: L50 has no Hoare annotation [2022-04-07 13:02:02,699 WARN L170 areAnnotationChecker]: L55-1 has no Hoare annotation [2022-04-07 13:02:02,700 WARN L170 areAnnotationChecker]: L64 has no Hoare annotation [2022-04-07 13:02:02,702 WARN L170 areAnnotationChecker]: L64 has no Hoare annotation [2022-04-07 13:02:02,702 WARN L170 areAnnotationChecker]: L47-3 has no Hoare annotation [2022-04-07 13:02:02,702 WARN L170 areAnnotationChecker]: L47-3 has no Hoare annotation [2022-04-07 13:02:02,703 WARN L170 areAnnotationChecker]: L47-3 has no Hoare annotation [2022-04-07 13:02:02,703 WARN L170 areAnnotationChecker]: L55-1 has no Hoare annotation [2022-04-07 13:02:02,703 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-07 13:02:02,703 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-07 13:02:02,703 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-07 13:02:02,709 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 07.04 01:02:02 BoogieIcfgContainer [2022-04-07 13:02:02,709 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-07 13:02:02,710 INFO L158 Benchmark]: Toolchain (without parser) took 16377.21ms. Allocated memory was 207.6MB in the beginning and 249.6MB in the end (delta: 41.9MB). Free memory was 155.7MB in the beginning and 86.1MB in the end (delta: 69.6MB). Peak memory consumption was 112.4MB. Max. memory is 8.0GB. [2022-04-07 13:02:02,710 INFO L158 Benchmark]: CDTParser took 0.08ms. Allocated memory is still 207.6MB. Free memory is still 171.8MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-07 13:02:02,710 INFO L158 Benchmark]: CACSL2BoogieTranslator took 168.51ms. Allocated memory is still 207.6MB. Free memory was 155.4MB in the beginning and 182.4MB in the end (delta: -27.0MB). Peak memory consumption was 12.3MB. Max. memory is 8.0GB. [2022-04-07 13:02:02,710 INFO L158 Benchmark]: Boogie Preprocessor took 27.16ms. Allocated memory is still 207.6MB. Free memory was 182.4MB in the beginning and 181.0MB in the end (delta: 1.3MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-07 13:02:02,710 INFO L158 Benchmark]: RCFGBuilder took 257.98ms. Allocated memory is still 207.6MB. Free memory was 180.6MB in the beginning and 168.7MB in the end (delta: 11.9MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-07 13:02:02,711 INFO L158 Benchmark]: TraceAbstraction took 15918.99ms. Allocated memory was 207.6MB in the beginning and 249.6MB in the end (delta: 41.9MB). Free memory was 168.4MB in the beginning and 86.1MB in the end (delta: 82.3MB). Peak memory consumption was 125.3MB. Max. memory is 8.0GB. [2022-04-07 13:02:02,712 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.08ms. Allocated memory is still 207.6MB. Free memory is still 171.8MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 168.51ms. Allocated memory is still 207.6MB. Free memory was 155.4MB in the beginning and 182.4MB in the end (delta: -27.0MB). Peak memory consumption was 12.3MB. Max. memory is 8.0GB. * Boogie Preprocessor took 27.16ms. Allocated memory is still 207.6MB. Free memory was 182.4MB in the beginning and 181.0MB in the end (delta: 1.3MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 257.98ms. Allocated memory is still 207.6MB. Free memory was 180.6MB in the beginning and 168.7MB in the end (delta: 11.9MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * TraceAbstraction took 15918.99ms. Allocated memory was 207.6MB in the beginning and 249.6MB in the end (delta: 41.9MB). Free memory was 168.4MB in the beginning and 86.1MB in the end (delta: 82.3MB). Peak memory consumption was 125.3MB. 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: 17]: 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, 42 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 15.9s, OverallIterations: 7, TraceHistogramMax: 7, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 2.6s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.4s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 186 SdHoareTripleChecker+Valid, 0.7s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 147 mSDsluCounter, 886 SdHoareTripleChecker+Invalid, 0.6s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 649 mSDsCounter, 83 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 650 IncrementalHoareTripleChecker+Invalid, 733 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 83 mSolverCounterUnsat, 237 mSDtfsCounter, 650 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 449 GetRequests, 385 SyntacticMatches, 3 SemanticMatches, 61 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 69 ImplicationChecksByTransitivity, 0.3s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=65occurred in iteration=6, InterpolantAutomatonStates: 47, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.2s AutomataMinimizationTime, 7 MinimizatonAttempts, 4 StatesRemovedByMinimization, 2 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 18 LocationsWithAnnotation, 42 PreInvPairs, 62 NumberOfFragments, 228 HoareAnnotationTreeSize, 42 FomulaSimplifications, 0 FormulaSimplificationTreeSizeReduction, 0.0s HoareSimplificationTime, 18 FomulaSimplificationsInter, 530 FormulaSimplificationTreeSizeReductionInter, 0.4s HoareSimplificationTimeInter, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 10.6s InterpolantComputationTime, 298 NumberOfCodeBlocks, 298 NumberOfCodeBlocksAsserted, 7 NumberOfCheckSat, 447 ConstructedInterpolants, 0 QuantifiedInterpolants, 1174 SizeOfPredicates, 24 NumberOfNonLiveVariables, 745 ConjunctsInSsa, 90 ConjunctsInUnsatCore, 10 InterpolantComputations, 6 PerfectInterpolantSequences, 400/420 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: 47]: Loop Invariant Derived loop invariant: (((q * y + r == x && y <= 2) && 1 <= r) && 1 <= y) && b == a * y - InvariantResult [Line: 38]: Loop Invariant Derived loop invariant: ((q * y + r == x && y <= 2) && 1 <= y) && b == a * y RESULT: Ultimate proved your program to be correct! [2022-04-07 13:02:02,741 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...