/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_valuebound1.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-27 12:16:46,901 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-27 12:16:46,903 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-27 12:16:46,935 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-27 12:16:46,936 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-27 12:16:46,937 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-27 12:16:46,940 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-27 12:16:46,942 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-27 12:16:46,943 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-27 12:16:46,944 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-27 12:16:46,945 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-27 12:16:46,946 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-27 12:16:46,946 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-27 12:16:46,949 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-27 12:16:46,950 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-27 12:16:46,952 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-27 12:16:46,952 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-27 12:16:46,953 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-27 12:16:46,954 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-27 12:16:46,958 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-27 12:16:46,959 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-27 12:16:46,960 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-27 12:16:46,960 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-27 12:16:46,961 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-27 12:16:46,962 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-27 12:16:46,967 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-27 12:16:46,967 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-27 12:16:46,967 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-27 12:16:46,968 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-27 12:16:46,968 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-27 12:16:46,969 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-27 12:16:46,969 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-27 12:16:46,970 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-27 12:16:46,970 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-27 12:16:46,971 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-27 12:16:46,971 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-27 12:16:46,971 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-27 12:16:46,972 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-27 12:16:46,972 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-27 12:16:46,972 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-27 12:16:46,972 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-27 12:16:46,974 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-27 12:16:46,974 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf [2022-04-27 12:16:46,995 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-27 12:16:46,996 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-27 12:16:46,996 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-04-27 12:16:46,996 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-04-27 12:16:46,996 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-27 12:16:46,996 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-27 12:16:46,997 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-27 12:16:46,997 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-27 12:16:46,997 INFO L138 SettingsManager]: * Use SBE=true [2022-04-27 12:16:46,998 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-27 12:16:46,998 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-27 12:16:46,998 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-27 12:16:46,998 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-27 12:16:46,998 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-27 12:16:46,998 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-27 12:16:46,998 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-27 12:16:46,998 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-27 12:16:46,998 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-27 12:16:46,998 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-27 12:16:46,998 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-27 12:16:46,999 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-27 12:16:46,999 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-27 12:16:46,999 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-27 12:16:46,999 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-27 12:16:46,999 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 12:16:46,999 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-27 12:16:46,999 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-27 12:16:46,999 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-27 12:16:46,999 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-27 12:16:46,999 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-27 12:16:47,000 INFO L138 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2022-04-27 12:16:47,000 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-04-27 12:16:47,000 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-27 12:16:47,000 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-27 12:16:47,164 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-27 12:16:47,178 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-27 12:16:47,179 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-27 12:16:47,180 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-27 12:16:47,180 INFO L275 PluginConnector]: CDTParser initialized [2022-04-27 12:16:47,182 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_valuebound1.c [2022-04-27 12:16:47,235 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/166f66385/72324b686be047bd9eb1501bbae422a4/FLAGcd923e978 [2022-04-27 12:16:47,573 INFO L306 CDTParser]: Found 1 translation units. [2022-04-27 12:16:47,574 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_valuebound1.c [2022-04-27 12:16:47,578 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/166f66385/72324b686be047bd9eb1501bbae422a4/FLAGcd923e978 [2022-04-27 12:16:47,601 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/166f66385/72324b686be047bd9eb1501bbae422a4 [2022-04-27 12:16:47,603 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-27 12:16:47,604 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-27 12:16:47,606 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-27 12:16:47,606 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-27 12:16:47,609 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-27 12:16:47,610 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 12:16:47" (1/1) ... [2022-04-27 12:16:47,610 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@6f026e2b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:16:47, skipping insertion in model container [2022-04-27 12:16:47,611 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 12:16:47" (1/1) ... [2022-04-27 12:16:47,616 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-27 12:16:47,628 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-27 12:16:47,753 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_valuebound1.c[576,589] [2022-04-27 12:16:47,770 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 12:16:47,783 INFO L203 MainTranslator]: Completed pre-run [2022-04-27 12:16:47,791 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_valuebound1.c[576,589] [2022-04-27 12:16:47,797 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 12:16:47,807 INFO L208 MainTranslator]: Completed translation [2022-04-27 12:16:47,807 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:16:47 WrapperNode [2022-04-27 12:16:47,808 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-27 12:16:47,808 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-27 12:16:47,808 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-27 12:16:47,808 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-27 12:16:47,816 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:16:47" (1/1) ... [2022-04-27 12:16:47,817 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:16:47" (1/1) ... [2022-04-27 12:16:47,822 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:16:47" (1/1) ... [2022-04-27 12:16:47,823 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:16:47" (1/1) ... [2022-04-27 12:16:47,830 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:16:47" (1/1) ... [2022-04-27 12:16:47,833 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:16:47" (1/1) ... [2022-04-27 12:16:47,834 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:16:47" (1/1) ... [2022-04-27 12:16:47,835 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-27 12:16:47,836 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-27 12:16:47,836 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-27 12:16:47,836 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-27 12:16:47,837 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:16:47" (1/1) ... [2022-04-27 12:16:47,841 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 12:16:47,848 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:16:47,858 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-27 12:16:47,863 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-27 12:16:47,891 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-27 12:16:47,892 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-27 12:16:47,892 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-27 12:16:47,893 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-27 12:16:47,893 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-27 12:16:47,893 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-27 12:16:47,893 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-27 12:16:47,894 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-27 12:16:47,894 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-27 12:16:47,894 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-27 12:16:47,894 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-27 12:16:47,894 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-27 12:16:47,897 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-27 12:16:47,897 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-27 12:16:47,897 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-27 12:16:47,897 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-27 12:16:47,897 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-27 12:16:47,897 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-27 12:16:47,897 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-27 12:16:47,897 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-27 12:16:47,943 INFO L234 CfgBuilder]: Building ICFG [2022-04-27 12:16:47,944 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-27 12:16:48,091 INFO L275 CfgBuilder]: Performing block encoding [2022-04-27 12:16:48,096 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-27 12:16:48,096 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-27 12:16:48,097 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 12:16:48 BoogieIcfgContainer [2022-04-27 12:16:48,097 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-27 12:16:48,098 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-27 12:16:48,099 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-27 12:16:48,101 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-27 12:16:48,101 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.04 12:16:47" (1/3) ... [2022-04-27 12:16:48,101 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@23d7518e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 12:16:48, skipping insertion in model container [2022-04-27 12:16:48,102 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:16:47" (2/3) ... [2022-04-27 12:16:48,102 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@23d7518e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 12:16:48, skipping insertion in model container [2022-04-27 12:16:48,102 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 12:16:48" (3/3) ... [2022-04-27 12:16:48,103 INFO L111 eAbstractionObserver]: Analyzing ICFG cohendiv-ll_valuebound1.c [2022-04-27 12:16:48,113 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-27 12:16:48,113 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-27 12:16:48,146 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-27 12:16:48,151 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@48c443da, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@9d73e02 [2022-04-27 12:16:48,151 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-27 12:16:48,157 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-27 12:16:48,163 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-27 12:16:48,163 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:16:48,163 INFO L195 NwaCegarLoop]: 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-27 12:16:48,164 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:16:48,167 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:16:48,168 INFO L85 PathProgramCache]: Analyzing trace with hash -1768835633, now seen corresponding path program 1 times [2022-04-27 12:16:48,175 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:16:48,175 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [247553066] [2022-04-27 12:16:48,175 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:16:48,176 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:16:48,276 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:16:48,331 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 12:16:48,345 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:16:48,362 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-27 12:16:48,363 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume true; {42#true} is VALID [2022-04-27 12:16:48,363 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {42#true} {42#true} #98#return; {42#true} is VALID [2022-04-27 12:16:48,364 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-27 12:16:48,365 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:16:48,374 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-27 12:16:48,375 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-27 12:16:48,375 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-27 12:16:48,376 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {42#true} #78#return; {43#false} is VALID [2022-04-27 12:16:48,376 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-27 12:16:48,380 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:16:48,385 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-27 12:16:48,385 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-27 12:16:48,385 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-27 12:16:48,386 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {43#false} #80#return; {43#false} is VALID [2022-04-27 12:16:48,386 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-27 12:16:48,388 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:16:48,394 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-27 12:16:48,395 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-27 12:16:48,395 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-27 12:16:48,395 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {43#false} #82#return; {43#false} is VALID [2022-04-27 12:16:48,396 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-27 12:16:48,396 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-27 12:16:48,397 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#true} assume true; {42#true} is VALID [2022-04-27 12:16:48,397 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#true} {42#true} #98#return; {42#true} is VALID [2022-04-27 12:16:48,397 INFO L272 TraceCheckUtils]: 4: Hoare triple {42#true} call #t~ret6 := main(); {42#true} is VALID [2022-04-27 12:16:48,397 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-27 12:16:48,397 INFO L272 TraceCheckUtils]: 6: Hoare triple {42#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {42#true} is VALID [2022-04-27 12:16:48,398 INFO L290 TraceCheckUtils]: 7: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-27 12:16:48,398 INFO L290 TraceCheckUtils]: 8: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-27 12:16:48,398 INFO L290 TraceCheckUtils]: 9: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-27 12:16:48,399 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {43#false} {42#true} #78#return; {43#false} is VALID [2022-04-27 12:16:48,399 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-27 12:16:48,400 INFO L272 TraceCheckUtils]: 12: Hoare triple {43#false} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {42#true} is VALID [2022-04-27 12:16:48,400 INFO L290 TraceCheckUtils]: 13: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-27 12:16:48,400 INFO L290 TraceCheckUtils]: 14: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-27 12:16:48,400 INFO L290 TraceCheckUtils]: 15: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-27 12:16:48,401 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {43#false} {43#false} #80#return; {43#false} is VALID [2022-04-27 12:16:48,401 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-27 12:16:48,401 INFO L290 TraceCheckUtils]: 18: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-27 12:16:48,401 INFO L290 TraceCheckUtils]: 19: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-27 12:16:48,402 INFO L290 TraceCheckUtils]: 20: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-27 12:16:48,402 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {43#false} {43#false} #82#return; {43#false} is VALID [2022-04-27 12:16:48,402 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-27 12:16:48,402 INFO L290 TraceCheckUtils]: 23: Hoare triple {43#false} assume false; {43#false} is VALID [2022-04-27 12:16:48,402 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-27 12:16:48,402 INFO L290 TraceCheckUtils]: 25: Hoare triple {43#false} ~cond := #in~cond; {43#false} is VALID [2022-04-27 12:16:48,403 INFO L290 TraceCheckUtils]: 26: Hoare triple {43#false} assume 0 == ~cond; {43#false} is VALID [2022-04-27 12:16:48,403 INFO L290 TraceCheckUtils]: 27: Hoare triple {43#false} assume !false; {43#false} is VALID [2022-04-27 12:16:48,403 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-27 12:16:48,404 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:16:48,404 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [247553066] [2022-04-27 12:16:48,404 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [247553066] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:16:48,405 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:16:48,405 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-27 12:16:48,406 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1407605132] [2022-04-27 12:16:48,406 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:16:48,411 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-27 12:16:48,413 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:16:48,416 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-27 12:16:48,470 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-27 12:16:48,471 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-27 12:16:48,471 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:16:48,487 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-27 12:16:48,488 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-27 12:16:48,491 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-27 12:16:48,643 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:16:48,644 INFO L93 Difference]: Finished difference Result 71 states and 110 transitions. [2022-04-27 12:16:48,644 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-27 12:16:48,644 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-27 12:16:48,644 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:16:48,645 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-27 12:16:48,652 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 110 transitions. [2022-04-27 12:16:48,652 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-27 12:16:48,658 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 110 transitions. [2022-04-27 12:16:48,658 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 110 transitions. [2022-04-27 12:16:48,759 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-27 12:16:48,775 INFO L225 Difference]: With dead ends: 71 [2022-04-27 12:16:48,775 INFO L226 Difference]: Without dead ends: 34 [2022-04-27 12:16:48,778 INFO L412 NwaCegarLoop]: 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-27 12:16:48,782 INFO L413 NwaCegarLoop]: 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-27 12:16:48,783 INFO L414 NwaCegarLoop]: 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-27 12:16:48,795 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-27 12:16:48,818 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 34. [2022-04-27 12:16:48,818 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:16:48,819 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-27 12:16:48,820 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-27 12:16:48,821 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-27 12:16:48,825 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:16:48,825 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-27 12:16:48,825 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-27 12:16:48,826 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:16:48,826 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:16:48,826 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-27 12:16:48,827 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-27 12:16:48,830 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:16:48,831 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-27 12:16:48,831 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-27 12:16:48,831 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:16:48,831 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:16:48,832 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:16:48,832 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:16:48,832 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-27 12:16:48,834 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 43 transitions. [2022-04-27 12:16:48,835 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 43 transitions. Word has length 28 [2022-04-27 12:16:48,836 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:16:48,836 INFO L495 AbstractCegarLoop]: Abstraction has 34 states and 43 transitions. [2022-04-27 12:16:48,836 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (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-27 12:16:48,836 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-27 12:16:48,837 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-27 12:16:48,837 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:16:48,837 INFO L195 NwaCegarLoop]: 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-27 12:16:48,837 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-27 12:16:48,837 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:16:48,838 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:16:48,838 INFO L85 PathProgramCache]: Analyzing trace with hash 1378913883, now seen corresponding path program 1 times [2022-04-27 12:16:48,838 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:16:48,838 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [682354183] [2022-04-27 12:16:48,838 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:16:48,838 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:16:48,864 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:16:48,864 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1413185585] [2022-04-27 12:16:48,864 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:16:48,864 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:16:48,864 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:16:48,879 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:16:48,880 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-27 12:16:48,928 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:16:48,939 INFO L263 TraceCheckSpWp]: Trace formula consists of 92 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-27 12:16:48,949 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:16:48,953 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:16:49,197 INFO L272 TraceCheckUtils]: 0: Hoare triple {284#true} call ULTIMATE.init(); {284#true} is VALID [2022-04-27 12:16:49,198 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-27 12:16:49,198 INFO L290 TraceCheckUtils]: 2: Hoare triple {284#true} assume true; {284#true} is VALID [2022-04-27 12:16:49,198 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {284#true} {284#true} #98#return; {284#true} is VALID [2022-04-27 12:16:49,198 INFO L272 TraceCheckUtils]: 4: Hoare triple {284#true} call #t~ret6 := main(); {284#true} is VALID [2022-04-27 12:16:49,198 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-27 12:16:49,199 INFO L272 TraceCheckUtils]: 6: Hoare triple {284#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {284#true} is VALID [2022-04-27 12:16:49,199 INFO L290 TraceCheckUtils]: 7: Hoare triple {284#true} ~cond := #in~cond; {284#true} is VALID [2022-04-27 12:16:49,199 INFO L290 TraceCheckUtils]: 8: Hoare triple {284#true} assume !(0 == ~cond); {284#true} is VALID [2022-04-27 12:16:49,199 INFO L290 TraceCheckUtils]: 9: Hoare triple {284#true} assume true; {284#true} is VALID [2022-04-27 12:16:49,199 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {284#true} {284#true} #78#return; {284#true} is VALID [2022-04-27 12:16:49,199 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-27 12:16:49,199 INFO L272 TraceCheckUtils]: 12: Hoare triple {284#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {284#true} is VALID [2022-04-27 12:16:49,203 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-27 12:16:49,203 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-27 12:16:49,204 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-27 12:16:49,205 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 1))} is VALID [2022-04-27 12:16:49,205 INFO L272 TraceCheckUtils]: 17: Hoare triple {339#(and (<= 0 main_~y~0) (<= main_~y~0 1))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {284#true} is VALID [2022-04-27 12:16:49,206 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-27 12:16:49,206 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-27 12:16:49,206 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-27 12:16:49,207 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {332#(not (= |assume_abort_if_not_#in~cond| 0))} {339#(and (<= 0 main_~y~0) (<= main_~y~0 1))} #82#return; {355#(and (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-27 12:16:49,208 INFO L290 TraceCheckUtils]: 22: Hoare triple {355#(and (<= 1 main_~y~0) (<= main_~y~0 1))} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {359#(and (= main_~a~0 0) (= main_~b~0 0) (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-27 12:16:49,208 INFO L290 TraceCheckUtils]: 23: Hoare triple {359#(and (= main_~a~0 0) (= main_~b~0 0) (<= 1 main_~y~0) (<= main_~y~0 1))} assume !false; {359#(and (= main_~a~0 0) (= main_~b~0 0) (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-27 12:16:49,209 INFO L272 TraceCheckUtils]: 24: Hoare triple {359#(and (= main_~a~0 0) (= main_~b~0 0) (<= 1 main_~y~0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {366#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:16:49,210 INFO L290 TraceCheckUtils]: 25: Hoare triple {366#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {370#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:16:49,210 INFO L290 TraceCheckUtils]: 26: Hoare triple {370#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {285#false} is VALID [2022-04-27 12:16:49,211 INFO L290 TraceCheckUtils]: 27: Hoare triple {285#false} assume !false; {285#false} is VALID [2022-04-27 12:16:49,211 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-27 12:16:49,211 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 12:16:49,211 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:16:49,211 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [682354183] [2022-04-27 12:16:49,212 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:16:49,212 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1413185585] [2022-04-27 12:16:49,212 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1413185585] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:16:49,212 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:16:49,212 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-27 12:16:49,213 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1489329925] [2022-04-27 12:16:49,213 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:16:49,214 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-27 12:16:49,214 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:16:49,214 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-27 12:16:49,232 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-27 12:16:49,233 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-27 12:16:49,233 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:16:49,234 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-27 12:16:49,245 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=54, Unknown=0, NotChecked=0, Total=72 [2022-04-27 12:16:49,246 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-27 12:16:49,624 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:16:49,624 INFO L93 Difference]: Finished difference Result 45 states and 56 transitions. [2022-04-27 12:16:49,624 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-27 12:16:49,624 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-27 12:16:49,625 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:16:49,625 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-27 12:16:49,632 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 56 transitions. [2022-04-27 12:16:49,633 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-27 12:16:49,635 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 56 transitions. [2022-04-27 12:16:49,635 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 56 transitions. [2022-04-27 12:16:49,671 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-27 12:16:49,675 INFO L225 Difference]: With dead ends: 45 [2022-04-27 12:16:49,675 INFO L226 Difference]: Without dead ends: 43 [2022-04-27 12:16:49,676 INFO L412 NwaCegarLoop]: 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-27 12:16:49,677 INFO L413 NwaCegarLoop]: 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-27 12:16:49,677 INFO L414 NwaCegarLoop]: 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-27 12:16:49,678 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states. [2022-04-27 12:16:49,694 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 40. [2022-04-27 12:16:49,694 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:16:49,694 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-27 12:16:49,695 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-27 12:16:49,695 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-27 12:16:49,697 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:16:49,697 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-27 12:16:49,697 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-27 12:16:49,698 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:16:49,698 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:16:49,698 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-27 12:16:49,698 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-27 12:16:49,700 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:16:49,701 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-27 12:16:49,701 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-27 12:16:49,701 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:16:49,701 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:16:49,701 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:16:49,701 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:16:49,702 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-27 12:16:49,703 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 49 transitions. [2022-04-27 12:16:49,703 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 49 transitions. Word has length 28 [2022-04-27 12:16:49,703 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:16:49,704 INFO L495 AbstractCegarLoop]: Abstraction has 40 states and 49 transitions. [2022-04-27 12:16:49,704 INFO L496 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-27 12:16:49,704 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 49 transitions. [2022-04-27 12:16:49,704 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-27 12:16:49,704 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:16:49,704 INFO L195 NwaCegarLoop]: 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-27 12:16:49,724 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-27 12:16:49,919 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:16:49,920 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:16:49,920 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:16:49,920 INFO L85 PathProgramCache]: Analyzing trace with hash -1928335320, now seen corresponding path program 1 times [2022-04-27 12:16:49,920 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:16:49,920 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1589060726] [2022-04-27 12:16:49,920 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:16:49,920 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:16:49,936 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:16:49,936 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1012438934] [2022-04-27 12:16:49,936 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:16:49,936 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:16:49,936 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:16:49,937 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:16:49,938 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-27 12:16:49,971 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:16:49,972 INFO L263 TraceCheckSpWp]: Trace formula consists of 101 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-27 12:16:49,979 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:16:49,980 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:16:50,202 INFO L272 TraceCheckUtils]: 0: Hoare triple {595#true} call ULTIMATE.init(); {595#true} is VALID [2022-04-27 12:16:50,202 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-27 12:16:50,202 INFO L290 TraceCheckUtils]: 2: Hoare triple {595#true} assume true; {595#true} is VALID [2022-04-27 12:16:50,202 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {595#true} {595#true} #98#return; {595#true} is VALID [2022-04-27 12:16:50,203 INFO L272 TraceCheckUtils]: 4: Hoare triple {595#true} call #t~ret6 := main(); {595#true} is VALID [2022-04-27 12:16:50,203 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-27 12:16:50,203 INFO L272 TraceCheckUtils]: 6: Hoare triple {595#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {595#true} is VALID [2022-04-27 12:16:50,203 INFO L290 TraceCheckUtils]: 7: Hoare triple {595#true} ~cond := #in~cond; {595#true} is VALID [2022-04-27 12:16:50,203 INFO L290 TraceCheckUtils]: 8: Hoare triple {595#true} assume !(0 == ~cond); {595#true} is VALID [2022-04-27 12:16:50,203 INFO L290 TraceCheckUtils]: 9: Hoare triple {595#true} assume true; {595#true} is VALID [2022-04-27 12:16:50,203 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {595#true} {595#true} #78#return; {595#true} is VALID [2022-04-27 12:16:50,203 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-27 12:16:50,203 INFO L272 TraceCheckUtils]: 12: Hoare triple {595#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {595#true} is VALID [2022-04-27 12:16:50,204 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-27 12:16:50,204 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-27 12:16:50,204 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-27 12:16:50,207 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 1))} is VALID [2022-04-27 12:16:50,207 INFO L272 TraceCheckUtils]: 17: Hoare triple {650#(and (<= 0 main_~y~0) (<= main_~y~0 1))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {595#true} is VALID [2022-04-27 12:16:50,207 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-27 12:16:50,207 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-27 12:16:50,208 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-27 12:16:50,208 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {643#(not (= |assume_abort_if_not_#in~cond| 0))} {650#(and (<= 0 main_~y~0) (<= main_~y~0 1))} #82#return; {666#(and (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-27 12:16:50,209 INFO L290 TraceCheckUtils]: 22: Hoare triple {666#(and (<= 1 main_~y~0) (<= main_~y~0 1))} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {670#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-27 12:16:50,210 INFO L290 TraceCheckUtils]: 23: Hoare triple {670#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0) (<= main_~y~0 1))} assume !false; {670#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-27 12:16:50,210 INFO L272 TraceCheckUtils]: 24: Hoare triple {670#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {595#true} is VALID [2022-04-27 12:16:50,210 INFO L290 TraceCheckUtils]: 25: Hoare triple {595#true} ~cond := #in~cond; {595#true} is VALID [2022-04-27 12:16:50,210 INFO L290 TraceCheckUtils]: 26: Hoare triple {595#true} assume !(0 == ~cond); {595#true} is VALID [2022-04-27 12:16:50,210 INFO L290 TraceCheckUtils]: 27: Hoare triple {595#true} assume true; {595#true} is VALID [2022-04-27 12:16:50,211 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {595#true} {670#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0) (<= main_~y~0 1))} #84#return; {670#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-27 12:16:50,211 INFO L272 TraceCheckUtils]: 29: Hoare triple {670#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0) (<= main_~y~0 1))} 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-27 12:16:50,213 INFO L290 TraceCheckUtils]: 30: Hoare triple {692#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {696#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:16:50,214 INFO L290 TraceCheckUtils]: 31: Hoare triple {696#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {596#false} is VALID [2022-04-27 12:16:50,214 INFO L290 TraceCheckUtils]: 32: Hoare triple {596#false} assume !false; {596#false} is VALID [2022-04-27 12:16:50,214 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-27 12:16:50,214 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 12:16:50,215 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:16:50,215 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1589060726] [2022-04-27 12:16:50,215 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:16:50,216 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1012438934] [2022-04-27 12:16:50,216 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1012438934] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:16:50,216 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:16:50,216 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-27 12:16:50,217 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [620583948] [2022-04-27 12:16:50,217 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:16:50,217 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-27 12:16:50,218 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:16:50,218 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-27 12:16:50,239 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-27 12:16:50,239 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-27 12:16:50,239 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:16:50,240 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-27 12:16:50,241 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=54, Unknown=0, NotChecked=0, Total=72 [2022-04-27 12:16:50,241 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-27 12:16:50,594 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:16:50,595 INFO L93 Difference]: Finished difference Result 57 states and 72 transitions. [2022-04-27 12:16:50,595 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-27 12:16:50,596 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-27 12:16:50,596 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:16:50,597 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-27 12:16:50,600 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 69 transitions. [2022-04-27 12:16:50,600 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-27 12:16:50,603 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 69 transitions. [2022-04-27 12:16:50,603 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 69 transitions. [2022-04-27 12:16:50,665 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-27 12:16:50,668 INFO L225 Difference]: With dead ends: 57 [2022-04-27 12:16:50,668 INFO L226 Difference]: Without dead ends: 54 [2022-04-27 12:16:50,669 INFO L412 NwaCegarLoop]: 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-27 12:16:50,671 INFO L413 NwaCegarLoop]: 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-27 12:16:50,672 INFO L414 NwaCegarLoop]: 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-27 12:16:50,673 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 54 states. [2022-04-27 12:16:50,701 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 54 to 53. [2022-04-27 12:16:50,701 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:16:50,702 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-27 12:16:50,703 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-27 12:16:50,704 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-27 12:16:50,707 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:16:50,707 INFO L93 Difference]: Finished difference Result 54 states and 68 transitions. [2022-04-27 12:16:50,707 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 68 transitions. [2022-04-27 12:16:50,712 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:16:50,712 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:16:50,714 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-27 12:16:50,715 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-27 12:16:50,718 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:16:50,719 INFO L93 Difference]: Finished difference Result 54 states and 68 transitions. [2022-04-27 12:16:50,719 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 68 transitions. [2022-04-27 12:16:50,720 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:16:50,722 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:16:50,723 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:16:50,723 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:16:50,724 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-27 12:16:50,728 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 67 transitions. [2022-04-27 12:16:50,728 INFO L78 Accepts]: Start accepts. Automaton has 53 states and 67 transitions. Word has length 33 [2022-04-27 12:16:50,728 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:16:50,728 INFO L495 AbstractCegarLoop]: Abstraction has 53 states and 67 transitions. [2022-04-27 12:16:50,729 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (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-27 12:16:50,729 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 67 transitions. [2022-04-27 12:16:50,730 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-27 12:16:50,730 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:16:50,730 INFO L195 NwaCegarLoop]: 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-27 12:16:50,748 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2022-04-27 12:16:50,950 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-27 12:16:50,951 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:16:50,951 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:16:50,951 INFO L85 PathProgramCache]: Analyzing trace with hash -1297647068, now seen corresponding path program 1 times [2022-04-27 12:16:50,951 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:16:50,952 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [736419938] [2022-04-27 12:16:50,952 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:16:50,952 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:16:50,980 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:16:50,982 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1412753292] [2022-04-27 12:16:50,982 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:16:50,982 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:16:50,983 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:16:50,997 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:16:51,015 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-27 12:16:51,039 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:16:51,040 INFO L263 TraceCheckSpWp]: Trace formula consists of 116 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-27 12:16:51,049 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:16:51,050 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:16:51,278 INFO L272 TraceCheckUtils]: 0: Hoare triple {981#true} call ULTIMATE.init(); {981#true} is VALID [2022-04-27 12:16:51,278 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-27 12:16:51,278 INFO L290 TraceCheckUtils]: 2: Hoare triple {981#true} assume true; {981#true} is VALID [2022-04-27 12:16:51,278 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {981#true} {981#true} #98#return; {981#true} is VALID [2022-04-27 12:16:51,278 INFO L272 TraceCheckUtils]: 4: Hoare triple {981#true} call #t~ret6 := main(); {981#true} is VALID [2022-04-27 12:16:51,279 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-27 12:16:51,279 INFO L272 TraceCheckUtils]: 6: Hoare triple {981#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {981#true} is VALID [2022-04-27 12:16:51,279 INFO L290 TraceCheckUtils]: 7: Hoare triple {981#true} ~cond := #in~cond; {981#true} is VALID [2022-04-27 12:16:51,279 INFO L290 TraceCheckUtils]: 8: Hoare triple {981#true} assume !(0 == ~cond); {981#true} is VALID [2022-04-27 12:16:51,279 INFO L290 TraceCheckUtils]: 9: Hoare triple {981#true} assume true; {981#true} is VALID [2022-04-27 12:16:51,279 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {981#true} {981#true} #78#return; {981#true} is VALID [2022-04-27 12:16:51,279 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-27 12:16:51,279 INFO L272 TraceCheckUtils]: 12: Hoare triple {981#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {981#true} is VALID [2022-04-27 12:16:51,280 INFO L290 TraceCheckUtils]: 13: Hoare triple {981#true} ~cond := #in~cond; {1025#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 12:16:51,281 INFO L290 TraceCheckUtils]: 14: Hoare triple {1025#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1029#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:16:51,282 INFO L290 TraceCheckUtils]: 15: Hoare triple {1029#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1029#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:16:51,288 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1029#(not (= |assume_abort_if_not_#in~cond| 0))} {981#true} #80#return; {1036#(and (<= 0 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-27 12:16:51,288 INFO L272 TraceCheckUtils]: 17: Hoare triple {1036#(and (<= 0 main_~y~0) (<= main_~y~0 1))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {981#true} is VALID [2022-04-27 12:16:51,289 INFO L290 TraceCheckUtils]: 18: Hoare triple {981#true} ~cond := #in~cond; {1025#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 12:16:51,289 INFO L290 TraceCheckUtils]: 19: Hoare triple {1025#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1029#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:16:51,289 INFO L290 TraceCheckUtils]: 20: Hoare triple {1029#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1029#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:16:51,290 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1029#(not (= |assume_abort_if_not_#in~cond| 0))} {1036#(and (<= 0 main_~y~0) (<= main_~y~0 1))} #82#return; {1052#(and (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-27 12:16:51,290 INFO L290 TraceCheckUtils]: 22: Hoare triple {1052#(and (<= 1 main_~y~0) (<= main_~y~0 1))} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {1052#(and (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-27 12:16:51,290 INFO L290 TraceCheckUtils]: 23: Hoare triple {1052#(and (<= 1 main_~y~0) (<= main_~y~0 1))} assume !false; {1052#(and (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-27 12:16:51,290 INFO L272 TraceCheckUtils]: 24: Hoare triple {1052#(and (<= 1 main_~y~0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {981#true} is VALID [2022-04-27 12:16:51,291 INFO L290 TraceCheckUtils]: 25: Hoare triple {981#true} ~cond := #in~cond; {981#true} is VALID [2022-04-27 12:16:51,291 INFO L290 TraceCheckUtils]: 26: Hoare triple {981#true} assume !(0 == ~cond); {981#true} is VALID [2022-04-27 12:16:51,291 INFO L290 TraceCheckUtils]: 27: Hoare triple {981#true} assume true; {981#true} is VALID [2022-04-27 12:16:51,291 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {981#true} {1052#(and (<= 1 main_~y~0) (<= main_~y~0 1))} #84#return; {1052#(and (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-27 12:16:51,291 INFO L272 TraceCheckUtils]: 29: Hoare triple {1052#(and (<= 1 main_~y~0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {981#true} is VALID [2022-04-27 12:16:51,291 INFO L290 TraceCheckUtils]: 30: Hoare triple {981#true} ~cond := #in~cond; {981#true} is VALID [2022-04-27 12:16:51,291 INFO L290 TraceCheckUtils]: 31: Hoare triple {981#true} assume !(0 == ~cond); {981#true} is VALID [2022-04-27 12:16:51,291 INFO L290 TraceCheckUtils]: 32: Hoare triple {981#true} assume true; {981#true} is VALID [2022-04-27 12:16:51,292 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {981#true} {1052#(and (<= 1 main_~y~0) (<= main_~y~0 1))} #86#return; {1052#(and (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-27 12:16:51,292 INFO L290 TraceCheckUtils]: 34: Hoare triple {1052#(and (<= 1 main_~y~0) (<= main_~y~0 1))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {1092#(and (= main_~a~0 1) (= main_~b~0 main_~y~0) (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-27 12:16:51,293 INFO L290 TraceCheckUtils]: 35: Hoare triple {1092#(and (= main_~a~0 1) (= main_~b~0 main_~y~0) (<= 1 main_~y~0) (<= main_~y~0 1))} assume !false; {1092#(and (= main_~a~0 1) (= main_~b~0 main_~y~0) (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-27 12:16:51,293 INFO L272 TraceCheckUtils]: 36: Hoare triple {1092#(and (= main_~a~0 1) (= main_~b~0 main_~y~0) (<= 1 main_~y~0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1099#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:16:51,293 INFO L290 TraceCheckUtils]: 37: Hoare triple {1099#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1103#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:16:51,294 INFO L290 TraceCheckUtils]: 38: Hoare triple {1103#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {982#false} is VALID [2022-04-27 12:16:51,294 INFO L290 TraceCheckUtils]: 39: Hoare triple {982#false} assume !false; {982#false} is VALID [2022-04-27 12:16:51,294 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 10 proven. 0 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2022-04-27 12:16:51,294 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 12:16:51,294 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:16:51,294 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [736419938] [2022-04-27 12:16:51,294 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:16:51,294 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1412753292] [2022-04-27 12:16:51,294 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1412753292] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:16:51,294 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:16:51,294 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-27 12:16:51,295 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [267946747] [2022-04-27 12:16:51,295 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:16:51,295 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) Word has length 40 [2022-04-27 12:16:51,295 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:16:51,296 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 12:16:51,313 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:16:51,313 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-27 12:16:51,313 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:16:51,314 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-27 12:16:51,314 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=54, Unknown=0, NotChecked=0, Total=72 [2022-04-27 12:16:51,314 INFO L87 Difference]: Start difference. First operand 53 states and 67 transitions. Second operand has 9 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 12:16:51,735 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:16:51,735 INFO L93 Difference]: Finished difference Result 79 states and 105 transitions. [2022-04-27 12:16:51,735 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-27 12:16:51,735 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) Word has length 40 [2022-04-27 12:16:51,735 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:16:51,736 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 12:16:51,737 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 69 transitions. [2022-04-27 12:16:51,737 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 12:16:51,738 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 69 transitions. [2022-04-27 12:16:51,738 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 69 transitions. [2022-04-27 12:16:51,787 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-27 12:16:51,789 INFO L225 Difference]: With dead ends: 79 [2022-04-27 12:16:51,789 INFO L226 Difference]: Without dead ends: 77 [2022-04-27 12:16:51,789 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 41 GetRequests, 32 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-27 12:16:51,790 INFO L413 NwaCegarLoop]: 41 mSDtfsCounter, 22 mSDsluCounter, 160 mSDsCounter, 0 mSdLazyCounter, 177 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 201 SdHoareTripleChecker+Invalid, 181 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 177 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 12:16:51,790 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [33 Valid, 201 Invalid, 181 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 177 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 12:16:51,790 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 77 states. [2022-04-27 12:16:51,822 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 77 to 70. [2022-04-27 12:16:51,822 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:16:51,823 INFO L82 GeneralOperation]: Start isEquivalent. First operand 77 states. Second operand has 70 states, 38 states have (on average 1.1578947368421053) internal successors, (44), 40 states have internal predecessors, (44), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-27 12:16:51,823 INFO L74 IsIncluded]: Start isIncluded. First operand 77 states. Second operand has 70 states, 38 states have (on average 1.1578947368421053) internal successors, (44), 40 states have internal predecessors, (44), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-27 12:16:51,823 INFO L87 Difference]: Start difference. First operand 77 states. Second operand has 70 states, 38 states have (on average 1.1578947368421053) internal successors, (44), 40 states have internal predecessors, (44), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-27 12:16:51,826 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:16:51,826 INFO L93 Difference]: Finished difference Result 77 states and 103 transitions. [2022-04-27 12:16:51,826 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 103 transitions. [2022-04-27 12:16:51,826 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:16:51,827 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:16:51,827 INFO L74 IsIncluded]: Start isIncluded. First operand has 70 states, 38 states have (on average 1.1578947368421053) internal successors, (44), 40 states have internal predecessors, (44), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 77 states. [2022-04-27 12:16:51,827 INFO L87 Difference]: Start difference. First operand has 70 states, 38 states have (on average 1.1578947368421053) internal successors, (44), 40 states have internal predecessors, (44), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 77 states. [2022-04-27 12:16:51,830 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:16:51,830 INFO L93 Difference]: Finished difference Result 77 states and 103 transitions. [2022-04-27 12:16:51,830 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 103 transitions. [2022-04-27 12:16:51,830 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:16:51,830 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:16:51,830 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:16:51,830 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:16:51,831 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 70 states, 38 states have (on average 1.1578947368421053) internal successors, (44), 40 states have internal predecessors, (44), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-27 12:16:51,833 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 92 transitions. [2022-04-27 12:16:51,833 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 92 transitions. Word has length 40 [2022-04-27 12:16:51,833 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:16:51,833 INFO L495 AbstractCegarLoop]: Abstraction has 70 states and 92 transitions. [2022-04-27 12:16:51,833 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 12:16:51,833 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 92 transitions. [2022-04-27 12:16:51,834 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-04-27 12:16:51,834 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:16:51,834 INFO L195 NwaCegarLoop]: 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-27 12:16:51,853 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-27 12:16:52,047 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:16:52,047 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:16:52,047 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:16:52,047 INFO L85 PathProgramCache]: Analyzing trace with hash -391974204, now seen corresponding path program 1 times [2022-04-27 12:16:52,048 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:16:52,048 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1025474633] [2022-04-27 12:16:52,048 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:16:52,048 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:16:52,063 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:16:52,063 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [422845973] [2022-04-27 12:16:52,063 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:16:52,063 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:16:52,064 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:16:52,064 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:16:52,065 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-27 12:16:52,101 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:16:52,101 INFO L263 TraceCheckSpWp]: Trace formula consists of 134 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 12:16:52,113 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:16:52,114 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:16:52,257 INFO L272 TraceCheckUtils]: 0: Hoare triple {1498#true} call ULTIMATE.init(); {1498#true} is VALID [2022-04-27 12:16:52,257 INFO L290 TraceCheckUtils]: 1: Hoare triple {1498#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); {1498#true} is VALID [2022-04-27 12:16:52,257 INFO L290 TraceCheckUtils]: 2: Hoare triple {1498#true} assume true; {1498#true} is VALID [2022-04-27 12:16:52,257 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1498#true} {1498#true} #98#return; {1498#true} is VALID [2022-04-27 12:16:52,257 INFO L272 TraceCheckUtils]: 4: Hoare triple {1498#true} call #t~ret6 := main(); {1498#true} is VALID [2022-04-27 12:16:52,257 INFO L290 TraceCheckUtils]: 5: Hoare triple {1498#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; {1498#true} is VALID [2022-04-27 12:16:52,257 INFO L272 TraceCheckUtils]: 6: Hoare triple {1498#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {1498#true} is VALID [2022-04-27 12:16:52,257 INFO L290 TraceCheckUtils]: 7: Hoare triple {1498#true} ~cond := #in~cond; {1498#true} is VALID [2022-04-27 12:16:52,257 INFO L290 TraceCheckUtils]: 8: Hoare triple {1498#true} assume !(0 == ~cond); {1498#true} is VALID [2022-04-27 12:16:52,257 INFO L290 TraceCheckUtils]: 9: Hoare triple {1498#true} assume true; {1498#true} is VALID [2022-04-27 12:16:52,258 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1498#true} {1498#true} #78#return; {1498#true} is VALID [2022-04-27 12:16:52,258 INFO L290 TraceCheckUtils]: 11: Hoare triple {1498#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1498#true} is VALID [2022-04-27 12:16:52,258 INFO L272 TraceCheckUtils]: 12: Hoare triple {1498#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {1498#true} is VALID [2022-04-27 12:16:52,258 INFO L290 TraceCheckUtils]: 13: Hoare triple {1498#true} ~cond := #in~cond; {1498#true} is VALID [2022-04-27 12:16:52,258 INFO L290 TraceCheckUtils]: 14: Hoare triple {1498#true} assume !(0 == ~cond); {1498#true} is VALID [2022-04-27 12:16:52,258 INFO L290 TraceCheckUtils]: 15: Hoare triple {1498#true} assume true; {1498#true} is VALID [2022-04-27 12:16:52,258 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1498#true} {1498#true} #80#return; {1498#true} is VALID [2022-04-27 12:16:52,258 INFO L272 TraceCheckUtils]: 17: Hoare triple {1498#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1498#true} is VALID [2022-04-27 12:16:52,258 INFO L290 TraceCheckUtils]: 18: Hoare triple {1498#true} ~cond := #in~cond; {1557#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 12:16:52,259 INFO L290 TraceCheckUtils]: 19: Hoare triple {1557#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1561#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:16:52,259 INFO L290 TraceCheckUtils]: 20: Hoare triple {1561#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1561#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:16:52,259 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1561#(not (= |assume_abort_if_not_#in~cond| 0))} {1498#true} #82#return; {1568#(<= 1 main_~y~0)} is VALID [2022-04-27 12:16:52,260 INFO L290 TraceCheckUtils]: 22: Hoare triple {1568#(<= 1 main_~y~0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {1568#(<= 1 main_~y~0)} is VALID [2022-04-27 12:16:52,260 INFO L290 TraceCheckUtils]: 23: Hoare triple {1568#(<= 1 main_~y~0)} assume !false; {1568#(<= 1 main_~y~0)} is VALID [2022-04-27 12:16:52,260 INFO L272 TraceCheckUtils]: 24: Hoare triple {1568#(<= 1 main_~y~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1498#true} is VALID [2022-04-27 12:16:52,260 INFO L290 TraceCheckUtils]: 25: Hoare triple {1498#true} ~cond := #in~cond; {1498#true} is VALID [2022-04-27 12:16:52,260 INFO L290 TraceCheckUtils]: 26: Hoare triple {1498#true} assume !(0 == ~cond); {1498#true} is VALID [2022-04-27 12:16:52,260 INFO L290 TraceCheckUtils]: 27: Hoare triple {1498#true} assume true; {1498#true} is VALID [2022-04-27 12:16:52,261 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1498#true} {1568#(<= 1 main_~y~0)} #84#return; {1568#(<= 1 main_~y~0)} is VALID [2022-04-27 12:16:52,261 INFO L272 TraceCheckUtils]: 29: Hoare triple {1568#(<= 1 main_~y~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1498#true} is VALID [2022-04-27 12:16:52,261 INFO L290 TraceCheckUtils]: 30: Hoare triple {1498#true} ~cond := #in~cond; {1498#true} is VALID [2022-04-27 12:16:52,261 INFO L290 TraceCheckUtils]: 31: Hoare triple {1498#true} assume !(0 == ~cond); {1498#true} is VALID [2022-04-27 12:16:52,261 INFO L290 TraceCheckUtils]: 32: Hoare triple {1498#true} assume true; {1498#true} is VALID [2022-04-27 12:16:52,262 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1498#true} {1568#(<= 1 main_~y~0)} #86#return; {1568#(<= 1 main_~y~0)} is VALID [2022-04-27 12:16:52,262 INFO L290 TraceCheckUtils]: 34: Hoare triple {1568#(<= 1 main_~y~0)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {1608#(<= 1 main_~r~0)} is VALID [2022-04-27 12:16:52,263 INFO L290 TraceCheckUtils]: 35: Hoare triple {1608#(<= 1 main_~r~0)} assume !false; {1608#(<= 1 main_~r~0)} is VALID [2022-04-27 12:16:52,263 INFO L272 TraceCheckUtils]: 36: Hoare triple {1608#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1498#true} is VALID [2022-04-27 12:16:52,263 INFO L290 TraceCheckUtils]: 37: Hoare triple {1498#true} ~cond := #in~cond; {1498#true} is VALID [2022-04-27 12:16:52,263 INFO L290 TraceCheckUtils]: 38: Hoare triple {1498#true} assume !(0 == ~cond); {1498#true} is VALID [2022-04-27 12:16:52,263 INFO L290 TraceCheckUtils]: 39: Hoare triple {1498#true} assume true; {1498#true} is VALID [2022-04-27 12:16:52,263 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {1498#true} {1608#(<= 1 main_~r~0)} #88#return; {1608#(<= 1 main_~r~0)} is VALID [2022-04-27 12:16:52,263 INFO L272 TraceCheckUtils]: 41: Hoare triple {1608#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1498#true} is VALID [2022-04-27 12:16:52,263 INFO L290 TraceCheckUtils]: 42: Hoare triple {1498#true} ~cond := #in~cond; {1498#true} is VALID [2022-04-27 12:16:52,264 INFO L290 TraceCheckUtils]: 43: Hoare triple {1498#true} assume !(0 == ~cond); {1498#true} is VALID [2022-04-27 12:16:52,264 INFO L290 TraceCheckUtils]: 44: Hoare triple {1498#true} assume true; {1498#true} is VALID [2022-04-27 12:16:52,264 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1498#true} {1608#(<= 1 main_~r~0)} #90#return; {1608#(<= 1 main_~r~0)} is VALID [2022-04-27 12:16:52,265 INFO L272 TraceCheckUtils]: 46: Hoare triple {1608#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {1645#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:16:52,265 INFO L290 TraceCheckUtils]: 47: Hoare triple {1645#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1649#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:16:52,265 INFO L290 TraceCheckUtils]: 48: Hoare triple {1649#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1499#false} is VALID [2022-04-27 12:16:52,265 INFO L290 TraceCheckUtils]: 49: Hoare triple {1499#false} assume !false; {1499#false} is VALID [2022-04-27 12:16:52,265 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-27 12:16:52,266 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 12:16:52,266 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:16:52,266 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1025474633] [2022-04-27 12:16:52,266 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:16:52,266 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [422845973] [2022-04-27 12:16:52,266 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [422845973] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:16:52,266 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:16:52,266 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-27 12:16:52,266 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2119518514] [2022-04-27 12:16:52,266 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:16:52,267 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-27 12:16:52,267 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:16:52,267 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-27 12:16:52,288 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-27 12:16:52,288 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-27 12:16:52,288 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:16:52,289 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-27 12:16:52,289 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-27 12:16:52,289 INFO L87 Difference]: Start difference. First operand 70 states and 92 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-27 12:16:52,577 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:16:52,577 INFO L93 Difference]: Finished difference Result 76 states and 97 transitions. [2022-04-27 12:16:52,577 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-27 12:16:52,577 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-27 12:16:52,578 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:16:52,578 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-27 12:16:52,579 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 48 transitions. [2022-04-27 12:16:52,579 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-27 12:16:52,579 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 48 transitions. [2022-04-27 12:16:52,580 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 48 transitions. [2022-04-27 12:16:52,633 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-27 12:16:52,634 INFO L225 Difference]: With dead ends: 76 [2022-04-27 12:16:52,634 INFO L226 Difference]: Without dead ends: 74 [2022-04-27 12:16:52,634 INFO L412 NwaCegarLoop]: 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-27 12:16:52,635 INFO L413 NwaCegarLoop]: 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-27 12:16:52,635 INFO L414 NwaCegarLoop]: 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-27 12:16:52,636 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2022-04-27 12:16:52,668 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 74. [2022-04-27 12:16:52,668 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:16:52,669 INFO L82 GeneralOperation]: Start isEquivalent. First operand 74 states. Second operand has 74 states, 41 states have (on average 1.146341463414634) internal successors, (47), 43 states have internal predecessors, (47), 25 states have call successors, (25), 8 states have call predecessors, (25), 7 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-27 12:16:52,669 INFO L74 IsIncluded]: Start isIncluded. First operand 74 states. Second operand has 74 states, 41 states have (on average 1.146341463414634) internal successors, (47), 43 states have internal predecessors, (47), 25 states have call successors, (25), 8 states have call predecessors, (25), 7 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-27 12:16:52,669 INFO L87 Difference]: Start difference. First operand 74 states. Second operand has 74 states, 41 states have (on average 1.146341463414634) internal successors, (47), 43 states have internal predecessors, (47), 25 states have call successors, (25), 8 states have call predecessors, (25), 7 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-27 12:16:52,672 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:16:52,672 INFO L93 Difference]: Finished difference Result 74 states and 95 transitions. [2022-04-27 12:16:52,672 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 95 transitions. [2022-04-27 12:16:52,672 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:16:52,672 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:16:52,672 INFO L74 IsIncluded]: Start isIncluded. First operand has 74 states, 41 states have (on average 1.146341463414634) internal successors, (47), 43 states have internal predecessors, (47), 25 states have call successors, (25), 8 states have call predecessors, (25), 7 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 74 states. [2022-04-27 12:16:52,673 INFO L87 Difference]: Start difference. First operand has 74 states, 41 states have (on average 1.146341463414634) internal successors, (47), 43 states have internal predecessors, (47), 25 states have call successors, (25), 8 states have call predecessors, (25), 7 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 74 states. [2022-04-27 12:16:52,675 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:16:52,675 INFO L93 Difference]: Finished difference Result 74 states and 95 transitions. [2022-04-27 12:16:52,675 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 95 transitions. [2022-04-27 12:16:52,675 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:16:52,675 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:16:52,675 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:16:52,675 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:16:52,675 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 74 states, 41 states have (on average 1.146341463414634) internal successors, (47), 43 states have internal predecessors, (47), 25 states have call successors, (25), 8 states have call predecessors, (25), 7 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-27 12:16:52,677 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 95 transitions. [2022-04-27 12:16:52,677 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 95 transitions. Word has length 50 [2022-04-27 12:16:52,678 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:16:52,678 INFO L495 AbstractCegarLoop]: Abstraction has 74 states and 95 transitions. [2022-04-27 12:16:52,678 INFO L496 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-27 12:16:52,678 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 95 transitions. [2022-04-27 12:16:52,678 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 57 [2022-04-27 12:16:52,678 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:16:52,678 INFO L195 NwaCegarLoop]: 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-27 12:16:52,695 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-27 12:16:52,891 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:16:52,891 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:16:52,892 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:16:52,892 INFO L85 PathProgramCache]: Analyzing trace with hash 991781023, now seen corresponding path program 1 times [2022-04-27 12:16:52,892 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:16:52,892 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [484499169] [2022-04-27 12:16:52,892 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:16:52,892 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:16:52,908 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:16:52,908 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [995781676] [2022-04-27 12:16:52,908 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:16:52,908 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:16:52,909 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:16:52,910 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:16:52,911 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-27 12:16:52,953 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:16:52,954 INFO L263 TraceCheckSpWp]: Trace formula consists of 144 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-27 12:16:52,969 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:16:52,970 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:16:53,249 INFO L272 TraceCheckUtils]: 0: Hoare triple {2039#true} call ULTIMATE.init(); {2039#true} is VALID [2022-04-27 12:16:53,249 INFO L290 TraceCheckUtils]: 1: Hoare triple {2039#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); {2039#true} is VALID [2022-04-27 12:16:53,249 INFO L290 TraceCheckUtils]: 2: Hoare triple {2039#true} assume true; {2039#true} is VALID [2022-04-27 12:16:53,250 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2039#true} {2039#true} #98#return; {2039#true} is VALID [2022-04-27 12:16:53,250 INFO L272 TraceCheckUtils]: 4: Hoare triple {2039#true} call #t~ret6 := main(); {2039#true} is VALID [2022-04-27 12:16:53,250 INFO L290 TraceCheckUtils]: 5: Hoare triple {2039#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; {2039#true} is VALID [2022-04-27 12:16:53,250 INFO L272 TraceCheckUtils]: 6: Hoare triple {2039#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {2039#true} is VALID [2022-04-27 12:16:53,250 INFO L290 TraceCheckUtils]: 7: Hoare triple {2039#true} ~cond := #in~cond; {2065#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 12:16:53,250 INFO L290 TraceCheckUtils]: 8: Hoare triple {2065#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2069#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:16:53,251 INFO L290 TraceCheckUtils]: 9: Hoare triple {2069#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2069#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:16:53,251 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2069#(not (= |assume_abort_if_not_#in~cond| 0))} {2039#true} #78#return; {2076#(and (<= 0 main_~x~0) (<= main_~x~0 1))} is VALID [2022-04-27 12:16:53,252 INFO L290 TraceCheckUtils]: 11: Hoare triple {2076#(and (<= 0 main_~x~0) (<= main_~x~0 1))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2076#(and (<= 0 main_~x~0) (<= main_~x~0 1))} is VALID [2022-04-27 12:16:53,252 INFO L272 TraceCheckUtils]: 12: Hoare triple {2076#(and (<= 0 main_~x~0) (<= main_~x~0 1))} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {2039#true} is VALID [2022-04-27 12:16:53,252 INFO L290 TraceCheckUtils]: 13: Hoare triple {2039#true} ~cond := #in~cond; {2039#true} is VALID [2022-04-27 12:16:53,252 INFO L290 TraceCheckUtils]: 14: Hoare triple {2039#true} assume !(0 == ~cond); {2039#true} is VALID [2022-04-27 12:16:53,252 INFO L290 TraceCheckUtils]: 15: Hoare triple {2039#true} assume true; {2039#true} is VALID [2022-04-27 12:16:53,252 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2039#true} {2076#(and (<= 0 main_~x~0) (<= main_~x~0 1))} #80#return; {2076#(and (<= 0 main_~x~0) (<= main_~x~0 1))} is VALID [2022-04-27 12:16:53,252 INFO L272 TraceCheckUtils]: 17: Hoare triple {2076#(and (<= 0 main_~x~0) (<= main_~x~0 1))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2039#true} is VALID [2022-04-27 12:16:53,253 INFO L290 TraceCheckUtils]: 18: Hoare triple {2039#true} ~cond := #in~cond; {2065#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 12:16:53,253 INFO L290 TraceCheckUtils]: 19: Hoare triple {2065#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2069#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:16:53,253 INFO L290 TraceCheckUtils]: 20: Hoare triple {2069#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2069#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:16:53,253 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2069#(not (= |assume_abort_if_not_#in~cond| 0))} {2076#(and (<= 0 main_~x~0) (<= main_~x~0 1))} #82#return; {2110#(and (<= 0 main_~x~0) (<= main_~x~0 1) (<= 1 main_~y~0))} is VALID [2022-04-27 12:16:53,254 INFO L290 TraceCheckUtils]: 22: Hoare triple {2110#(and (<= 0 main_~x~0) (<= main_~x~0 1) (<= 1 main_~y~0))} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {2114#(and (<= main_~r~0 1) (<= 1 main_~y~0))} is VALID [2022-04-27 12:16:53,254 INFO L290 TraceCheckUtils]: 23: Hoare triple {2114#(and (<= main_~r~0 1) (<= 1 main_~y~0))} assume !false; {2114#(and (<= main_~r~0 1) (<= 1 main_~y~0))} is VALID [2022-04-27 12:16:53,254 INFO L272 TraceCheckUtils]: 24: Hoare triple {2114#(and (<= main_~r~0 1) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2039#true} is VALID [2022-04-27 12:16:53,254 INFO L290 TraceCheckUtils]: 25: Hoare triple {2039#true} ~cond := #in~cond; {2039#true} is VALID [2022-04-27 12:16:53,254 INFO L290 TraceCheckUtils]: 26: Hoare triple {2039#true} assume !(0 == ~cond); {2039#true} is VALID [2022-04-27 12:16:53,254 INFO L290 TraceCheckUtils]: 27: Hoare triple {2039#true} assume true; {2039#true} is VALID [2022-04-27 12:16:53,255 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2039#true} {2114#(and (<= main_~r~0 1) (<= 1 main_~y~0))} #84#return; {2114#(and (<= main_~r~0 1) (<= 1 main_~y~0))} is VALID [2022-04-27 12:16:53,255 INFO L272 TraceCheckUtils]: 29: Hoare triple {2114#(and (<= main_~r~0 1) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2039#true} is VALID [2022-04-27 12:16:53,255 INFO L290 TraceCheckUtils]: 30: Hoare triple {2039#true} ~cond := #in~cond; {2039#true} is VALID [2022-04-27 12:16:53,255 INFO L290 TraceCheckUtils]: 31: Hoare triple {2039#true} assume !(0 == ~cond); {2039#true} is VALID [2022-04-27 12:16:53,255 INFO L290 TraceCheckUtils]: 32: Hoare triple {2039#true} assume true; {2039#true} is VALID [2022-04-27 12:16:53,256 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2039#true} {2114#(and (<= main_~r~0 1) (<= 1 main_~y~0))} #86#return; {2114#(and (<= main_~r~0 1) (<= 1 main_~y~0))} is VALID [2022-04-27 12:16:53,256 INFO L290 TraceCheckUtils]: 34: Hoare triple {2114#(and (<= main_~r~0 1) (<= 1 main_~y~0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {2151#(and (<= main_~r~0 1) (<= 1 main_~b~0))} is VALID [2022-04-27 12:16:53,256 INFO L290 TraceCheckUtils]: 35: Hoare triple {2151#(and (<= main_~r~0 1) (<= 1 main_~b~0))} assume !false; {2151#(and (<= main_~r~0 1) (<= 1 main_~b~0))} is VALID [2022-04-27 12:16:53,256 INFO L272 TraceCheckUtils]: 36: Hoare triple {2151#(and (<= main_~r~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2039#true} is VALID [2022-04-27 12:16:53,256 INFO L290 TraceCheckUtils]: 37: Hoare triple {2039#true} ~cond := #in~cond; {2039#true} is VALID [2022-04-27 12:16:53,256 INFO L290 TraceCheckUtils]: 38: Hoare triple {2039#true} assume !(0 == ~cond); {2039#true} is VALID [2022-04-27 12:16:53,257 INFO L290 TraceCheckUtils]: 39: Hoare triple {2039#true} assume true; {2039#true} is VALID [2022-04-27 12:16:53,257 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {2039#true} {2151#(and (<= main_~r~0 1) (<= 1 main_~b~0))} #88#return; {2151#(and (<= main_~r~0 1) (<= 1 main_~b~0))} is VALID [2022-04-27 12:16:53,257 INFO L272 TraceCheckUtils]: 41: Hoare triple {2151#(and (<= main_~r~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2039#true} is VALID [2022-04-27 12:16:53,257 INFO L290 TraceCheckUtils]: 42: Hoare triple {2039#true} ~cond := #in~cond; {2039#true} is VALID [2022-04-27 12:16:53,257 INFO L290 TraceCheckUtils]: 43: Hoare triple {2039#true} assume !(0 == ~cond); {2039#true} is VALID [2022-04-27 12:16:53,257 INFO L290 TraceCheckUtils]: 44: Hoare triple {2039#true} assume true; {2039#true} is VALID [2022-04-27 12:16:53,258 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2039#true} {2151#(and (<= main_~r~0 1) (<= 1 main_~b~0))} #90#return; {2151#(and (<= main_~r~0 1) (<= 1 main_~b~0))} is VALID [2022-04-27 12:16:53,258 INFO L272 TraceCheckUtils]: 46: Hoare triple {2151#(and (<= main_~r~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {2039#true} is VALID [2022-04-27 12:16:53,258 INFO L290 TraceCheckUtils]: 47: Hoare triple {2039#true} ~cond := #in~cond; {2039#true} is VALID [2022-04-27 12:16:53,258 INFO L290 TraceCheckUtils]: 48: Hoare triple {2039#true} assume !(0 == ~cond); {2039#true} is VALID [2022-04-27 12:16:53,258 INFO L290 TraceCheckUtils]: 49: Hoare triple {2039#true} assume true; {2039#true} is VALID [2022-04-27 12:16:53,263 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2039#true} {2151#(and (<= main_~r~0 1) (<= 1 main_~b~0))} #92#return; {2151#(and (<= main_~r~0 1) (<= 1 main_~b~0))} is VALID [2022-04-27 12:16:53,264 INFO L290 TraceCheckUtils]: 51: Hoare triple {2151#(and (<= main_~r~0 1) (<= 1 main_~b~0))} assume !!(~r~0 >= 2 * ~b~0); {2040#false} is VALID [2022-04-27 12:16:53,264 INFO L272 TraceCheckUtils]: 52: Hoare triple {2040#false} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {2040#false} is VALID [2022-04-27 12:16:53,264 INFO L290 TraceCheckUtils]: 53: Hoare triple {2040#false} ~cond := #in~cond; {2040#false} is VALID [2022-04-27 12:16:53,264 INFO L290 TraceCheckUtils]: 54: Hoare triple {2040#false} assume 0 == ~cond; {2040#false} is VALID [2022-04-27 12:16:53,264 INFO L290 TraceCheckUtils]: 55: Hoare triple {2040#false} assume !false; {2040#false} is VALID [2022-04-27 12:16:53,264 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 13 proven. 3 refuted. 0 times theorem prover too weak. 46 trivial. 0 not checked. [2022-04-27 12:16:53,264 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:16:54,335 INFO L290 TraceCheckUtils]: 55: Hoare triple {2040#false} assume !false; {2040#false} is VALID [2022-04-27 12:16:54,335 INFO L290 TraceCheckUtils]: 54: Hoare triple {2040#false} assume 0 == ~cond; {2040#false} is VALID [2022-04-27 12:16:54,335 INFO L290 TraceCheckUtils]: 53: Hoare triple {2040#false} ~cond := #in~cond; {2040#false} is VALID [2022-04-27 12:16:54,336 INFO L272 TraceCheckUtils]: 52: Hoare triple {2040#false} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {2040#false} is VALID [2022-04-27 12:16:54,336 INFO L290 TraceCheckUtils]: 51: Hoare triple {2227#(not (<= (* main_~b~0 2) main_~r~0))} assume !!(~r~0 >= 2 * ~b~0); {2040#false} is VALID [2022-04-27 12:16:54,342 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2039#true} {2227#(not (<= (* main_~b~0 2) main_~r~0))} #92#return; {2227#(not (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-27 12:16:54,342 INFO L290 TraceCheckUtils]: 49: Hoare triple {2039#true} assume true; {2039#true} is VALID [2022-04-27 12:16:54,343 INFO L290 TraceCheckUtils]: 48: Hoare triple {2039#true} assume !(0 == ~cond); {2039#true} is VALID [2022-04-27 12:16:54,343 INFO L290 TraceCheckUtils]: 47: Hoare triple {2039#true} ~cond := #in~cond; {2039#true} is VALID [2022-04-27 12:16:54,343 INFO L272 TraceCheckUtils]: 46: Hoare triple {2227#(not (<= (* main_~b~0 2) main_~r~0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {2039#true} is VALID [2022-04-27 12:16:54,344 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2039#true} {2227#(not (<= (* main_~b~0 2) main_~r~0))} #90#return; {2227#(not (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-27 12:16:54,344 INFO L290 TraceCheckUtils]: 44: Hoare triple {2039#true} assume true; {2039#true} is VALID [2022-04-27 12:16:54,344 INFO L290 TraceCheckUtils]: 43: Hoare triple {2039#true} assume !(0 == ~cond); {2039#true} is VALID [2022-04-27 12:16:54,344 INFO L290 TraceCheckUtils]: 42: Hoare triple {2039#true} ~cond := #in~cond; {2039#true} is VALID [2022-04-27 12:16:54,344 INFO L272 TraceCheckUtils]: 41: Hoare triple {2227#(not (<= (* main_~b~0 2) main_~r~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2039#true} is VALID [2022-04-27 12:16:54,344 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {2039#true} {2227#(not (<= (* main_~b~0 2) main_~r~0))} #88#return; {2227#(not (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-27 12:16:54,345 INFO L290 TraceCheckUtils]: 39: Hoare triple {2039#true} assume true; {2039#true} is VALID [2022-04-27 12:16:54,345 INFO L290 TraceCheckUtils]: 38: Hoare triple {2039#true} assume !(0 == ~cond); {2039#true} is VALID [2022-04-27 12:16:54,345 INFO L290 TraceCheckUtils]: 37: Hoare triple {2039#true} ~cond := #in~cond; {2039#true} is VALID [2022-04-27 12:16:54,345 INFO L272 TraceCheckUtils]: 36: Hoare triple {2227#(not (<= (* main_~b~0 2) main_~r~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2039#true} is VALID [2022-04-27 12:16:54,346 INFO L290 TraceCheckUtils]: 35: Hoare triple {2227#(not (<= (* main_~b~0 2) main_~r~0))} assume !false; {2227#(not (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-27 12:16:54,346 INFO L290 TraceCheckUtils]: 34: Hoare triple {2279#(< (div main_~r~0 2) main_~y~0)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {2227#(not (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-27 12:16:54,347 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2039#true} {2279#(< (div main_~r~0 2) main_~y~0)} #86#return; {2279#(< (div main_~r~0 2) main_~y~0)} is VALID [2022-04-27 12:16:54,347 INFO L290 TraceCheckUtils]: 32: Hoare triple {2039#true} assume true; {2039#true} is VALID [2022-04-27 12:16:54,347 INFO L290 TraceCheckUtils]: 31: Hoare triple {2039#true} assume !(0 == ~cond); {2039#true} is VALID [2022-04-27 12:16:54,347 INFO L290 TraceCheckUtils]: 30: Hoare triple {2039#true} ~cond := #in~cond; {2039#true} is VALID [2022-04-27 12:16:54,347 INFO L272 TraceCheckUtils]: 29: Hoare triple {2279#(< (div main_~r~0 2) main_~y~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2039#true} is VALID [2022-04-27 12:16:54,348 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2039#true} {2279#(< (div main_~r~0 2) main_~y~0)} #84#return; {2279#(< (div main_~r~0 2) main_~y~0)} is VALID [2022-04-27 12:16:54,348 INFO L290 TraceCheckUtils]: 27: Hoare triple {2039#true} assume true; {2039#true} is VALID [2022-04-27 12:16:54,348 INFO L290 TraceCheckUtils]: 26: Hoare triple {2039#true} assume !(0 == ~cond); {2039#true} is VALID [2022-04-27 12:16:54,348 INFO L290 TraceCheckUtils]: 25: Hoare triple {2039#true} ~cond := #in~cond; {2039#true} is VALID [2022-04-27 12:16:54,348 INFO L272 TraceCheckUtils]: 24: Hoare triple {2279#(< (div main_~r~0 2) main_~y~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2039#true} is VALID [2022-04-27 12:16:54,360 INFO L290 TraceCheckUtils]: 23: Hoare triple {2279#(< (div main_~r~0 2) main_~y~0)} assume !false; {2279#(< (div main_~r~0 2) main_~y~0)} is VALID [2022-04-27 12:16:54,361 INFO L290 TraceCheckUtils]: 22: Hoare triple {2316#(< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) (+ main_~y~0 1))} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {2279#(< (div main_~r~0 2) main_~y~0)} is VALID [2022-04-27 12:16:54,362 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2069#(not (= |assume_abort_if_not_#in~cond| 0))} {2320#(< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) 2)} #82#return; {2316#(< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) (+ main_~y~0 1))} is VALID [2022-04-27 12:16:54,362 INFO L290 TraceCheckUtils]: 20: Hoare triple {2069#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2069#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:16:54,362 INFO L290 TraceCheckUtils]: 19: Hoare triple {2330#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {2069#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:16:54,363 INFO L290 TraceCheckUtils]: 18: Hoare triple {2039#true} ~cond := #in~cond; {2330#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-27 12:16:54,363 INFO L272 TraceCheckUtils]: 17: Hoare triple {2320#(< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) 2)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2039#true} is VALID [2022-04-27 12:16:54,363 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2039#true} {2320#(< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) 2)} #80#return; {2320#(< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) 2)} is VALID [2022-04-27 12:16:54,363 INFO L290 TraceCheckUtils]: 15: Hoare triple {2039#true} assume true; {2039#true} is VALID [2022-04-27 12:16:54,363 INFO L290 TraceCheckUtils]: 14: Hoare triple {2039#true} assume !(0 == ~cond); {2039#true} is VALID [2022-04-27 12:16:54,363 INFO L290 TraceCheckUtils]: 13: Hoare triple {2039#true} ~cond := #in~cond; {2039#true} is VALID [2022-04-27 12:16:54,364 INFO L272 TraceCheckUtils]: 12: Hoare triple {2320#(< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) 2)} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {2039#true} is VALID [2022-04-27 12:16:54,364 INFO L290 TraceCheckUtils]: 11: Hoare triple {2320#(< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) 2)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2320#(< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) 2)} is VALID [2022-04-27 12:16:54,365 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2069#(not (= |assume_abort_if_not_#in~cond| 0))} {2039#true} #78#return; {2320#(< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) 2)} is VALID [2022-04-27 12:16:54,365 INFO L290 TraceCheckUtils]: 9: Hoare triple {2069#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2069#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:16:54,365 INFO L290 TraceCheckUtils]: 8: Hoare triple {2330#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {2069#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:16:54,365 INFO L290 TraceCheckUtils]: 7: Hoare triple {2039#true} ~cond := #in~cond; {2330#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-27 12:16:54,366 INFO L272 TraceCheckUtils]: 6: Hoare triple {2039#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {2039#true} is VALID [2022-04-27 12:16:54,366 INFO L290 TraceCheckUtils]: 5: Hoare triple {2039#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; {2039#true} is VALID [2022-04-27 12:16:54,366 INFO L272 TraceCheckUtils]: 4: Hoare triple {2039#true} call #t~ret6 := main(); {2039#true} is VALID [2022-04-27 12:16:54,366 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2039#true} {2039#true} #98#return; {2039#true} is VALID [2022-04-27 12:16:54,366 INFO L290 TraceCheckUtils]: 2: Hoare triple {2039#true} assume true; {2039#true} is VALID [2022-04-27 12:16:54,366 INFO L290 TraceCheckUtils]: 1: Hoare triple {2039#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); {2039#true} is VALID [2022-04-27 12:16:54,366 INFO L272 TraceCheckUtils]: 0: Hoare triple {2039#true} call ULTIMATE.init(); {2039#true} is VALID [2022-04-27 12:16:54,366 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 13 proven. 3 refuted. 0 times theorem prover too weak. 46 trivial. 0 not checked. [2022-04-27 12:16:54,367 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:16:54,367 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [484499169] [2022-04-27 12:16:54,367 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:16:54,367 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [995781676] [2022-04-27 12:16:54,367 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [995781676] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 12:16:54,367 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 12:16:54,367 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 13 [2022-04-27 12:16:54,367 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [98244230] [2022-04-27 12:16:54,367 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 12:16:54,368 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 2.230769230769231) internal successors, (29), 11 states have internal predecessors, (29), 8 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (17), 9 states have call predecessors, (17), 7 states have call successors, (17) Word has length 56 [2022-04-27 12:16:54,369 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:16:54,369 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 2.230769230769231) internal successors, (29), 11 states have internal predecessors, (29), 8 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (17), 9 states have call predecessors, (17), 7 states have call successors, (17) [2022-04-27 12:16:54,420 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:16:54,420 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-27 12:16:54,420 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:16:54,421 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-27 12:16:54,421 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=31, Invalid=125, Unknown=0, NotChecked=0, Total=156 [2022-04-27 12:16:54,421 INFO L87 Difference]: Start difference. First operand 74 states and 95 transitions. Second operand has 13 states, 13 states have (on average 2.230769230769231) internal successors, (29), 11 states have internal predecessors, (29), 8 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (17), 9 states have call predecessors, (17), 7 states have call successors, (17) [2022-04-27 12:16:54,945 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:16:54,945 INFO L93 Difference]: Finished difference Result 103 states and 127 transitions. [2022-04-27 12:16:54,945 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-27 12:16:54,945 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 2.230769230769231) internal successors, (29), 11 states have internal predecessors, (29), 8 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (17), 9 states have call predecessors, (17), 7 states have call successors, (17) Word has length 56 [2022-04-27 12:16:54,946 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:16:54,946 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 2.230769230769231) internal successors, (29), 11 states have internal predecessors, (29), 8 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (17), 9 states have call predecessors, (17), 7 states have call successors, (17) [2022-04-27 12:16:54,947 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 72 transitions. [2022-04-27 12:16:54,948 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 2.230769230769231) internal successors, (29), 11 states have internal predecessors, (29), 8 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (17), 9 states have call predecessors, (17), 7 states have call successors, (17) [2022-04-27 12:16:54,949 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 72 transitions. [2022-04-27 12:16:54,949 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 72 transitions. [2022-04-27 12:16:54,999 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:16:55,000 INFO L225 Difference]: With dead ends: 103 [2022-04-27 12:16:55,001 INFO L226 Difference]: Without dead ends: 57 [2022-04-27 12:16:55,001 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 114 GetRequests, 100 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 20 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=55, Invalid=185, Unknown=0, NotChecked=0, Total=240 [2022-04-27 12:16:55,002 INFO L413 NwaCegarLoop]: 35 mSDtfsCounter, 25 mSDsluCounter, 153 mSDsCounter, 0 mSdLazyCounter, 160 mSolverCounterSat, 27 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 26 SdHoareTripleChecker+Valid, 188 SdHoareTripleChecker+Invalid, 187 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 27 IncrementalHoareTripleChecker+Valid, 160 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 12:16:55,002 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [26 Valid, 188 Invalid, 187 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [27 Valid, 160 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 12:16:55,002 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 57 states. [2022-04-27 12:16:55,043 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 57 to 55. [2022-04-27 12:16:55,043 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:16:55,043 INFO L82 GeneralOperation]: Start isEquivalent. First operand 57 states. Second operand has 55 states, 32 states have (on average 1.0625) internal successors, (34), 34 states have internal predecessors, (34), 15 states have call successors, (15), 8 states have call predecessors, (15), 7 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-27 12:16:55,043 INFO L74 IsIncluded]: Start isIncluded. First operand 57 states. Second operand has 55 states, 32 states have (on average 1.0625) internal successors, (34), 34 states have internal predecessors, (34), 15 states have call successors, (15), 8 states have call predecessors, (15), 7 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-27 12:16:55,044 INFO L87 Difference]: Start difference. First operand 57 states. Second operand has 55 states, 32 states have (on average 1.0625) internal successors, (34), 34 states have internal predecessors, (34), 15 states have call successors, (15), 8 states have call predecessors, (15), 7 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-27 12:16:55,047 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:16:55,048 INFO L93 Difference]: Finished difference Result 57 states and 65 transitions. [2022-04-27 12:16:55,048 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 65 transitions. [2022-04-27 12:16:55,048 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:16:55,048 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:16:55,048 INFO L74 IsIncluded]: Start isIncluded. First operand has 55 states, 32 states have (on average 1.0625) internal successors, (34), 34 states have internal predecessors, (34), 15 states have call successors, (15), 8 states have call predecessors, (15), 7 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) Second operand 57 states. [2022-04-27 12:16:55,048 INFO L87 Difference]: Start difference. First operand has 55 states, 32 states have (on average 1.0625) internal successors, (34), 34 states have internal predecessors, (34), 15 states have call successors, (15), 8 states have call predecessors, (15), 7 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) Second operand 57 states. [2022-04-27 12:16:55,050 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:16:55,050 INFO L93 Difference]: Finished difference Result 57 states and 65 transitions. [2022-04-27 12:16:55,050 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 65 transitions. [2022-04-27 12:16:55,050 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:16:55,050 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:16:55,050 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:16:55,050 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:16:55,050 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 55 states, 32 states have (on average 1.0625) internal successors, (34), 34 states have internal predecessors, (34), 15 states have call successors, (15), 8 states have call predecessors, (15), 7 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-27 12:16:55,051 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 55 states to 55 states and 62 transitions. [2022-04-27 12:16:55,052 INFO L78 Accepts]: Start accepts. Automaton has 55 states and 62 transitions. Word has length 56 [2022-04-27 12:16:55,052 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:16:55,052 INFO L495 AbstractCegarLoop]: Abstraction has 55 states and 62 transitions. [2022-04-27 12:16:55,052 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 2.230769230769231) internal successors, (29), 11 states have internal predecessors, (29), 8 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (17), 9 states have call predecessors, (17), 7 states have call successors, (17) [2022-04-27 12:16:55,052 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 62 transitions. [2022-04-27 12:16:55,052 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-27 12:16:55,052 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:16:55,053 INFO L195 NwaCegarLoop]: 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-27 12:16:55,076 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-27 12:16:55,269 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:16:55,270 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:16:55,271 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:16:55,271 INFO L85 PathProgramCache]: Analyzing trace with hash -2096667334, now seen corresponding path program 1 times [2022-04-27 12:16:55,271 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:16:55,271 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1300952928] [2022-04-27 12:16:55,271 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:16:55,271 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:16:55,292 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:16:55,292 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [946881730] [2022-04-27 12:16:55,292 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:16:55,293 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:16:55,293 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:16:55,294 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:16:55,295 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-27 12:16:55,334 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:16:55,335 INFO L263 TraceCheckSpWp]: Trace formula consists of 158 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-27 12:16:55,344 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:16:55,347 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:16:56,174 INFO L272 TraceCheckUtils]: 0: Hoare triple {2744#true} call ULTIMATE.init(); {2744#true} is VALID [2022-04-27 12:16:56,174 INFO L290 TraceCheckUtils]: 1: Hoare triple {2744#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); {2744#true} is VALID [2022-04-27 12:16:56,174 INFO L290 TraceCheckUtils]: 2: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-27 12:16:56,174 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2744#true} {2744#true} #98#return; {2744#true} is VALID [2022-04-27 12:16:56,174 INFO L272 TraceCheckUtils]: 4: Hoare triple {2744#true} call #t~ret6 := main(); {2744#true} is VALID [2022-04-27 12:16:56,174 INFO L290 TraceCheckUtils]: 5: Hoare triple {2744#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; {2744#true} is VALID [2022-04-27 12:16:56,175 INFO L272 TraceCheckUtils]: 6: Hoare triple {2744#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {2744#true} is VALID [2022-04-27 12:16:56,175 INFO L290 TraceCheckUtils]: 7: Hoare triple {2744#true} ~cond := #in~cond; {2744#true} is VALID [2022-04-27 12:16:56,175 INFO L290 TraceCheckUtils]: 8: Hoare triple {2744#true} assume !(0 == ~cond); {2744#true} is VALID [2022-04-27 12:16:56,175 INFO L290 TraceCheckUtils]: 9: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-27 12:16:56,175 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2744#true} {2744#true} #78#return; {2744#true} is VALID [2022-04-27 12:16:56,175 INFO L290 TraceCheckUtils]: 11: Hoare triple {2744#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2744#true} is VALID [2022-04-27 12:16:56,175 INFO L272 TraceCheckUtils]: 12: Hoare triple {2744#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {2744#true} is VALID [2022-04-27 12:16:56,183 INFO L290 TraceCheckUtils]: 13: Hoare triple {2744#true} ~cond := #in~cond; {2788#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 12:16:56,184 INFO L290 TraceCheckUtils]: 14: Hoare triple {2788#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2792#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:16:56,184 INFO L290 TraceCheckUtils]: 15: Hoare triple {2792#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2792#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:16:56,185 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2792#(not (= |assume_abort_if_not_#in~cond| 0))} {2744#true} #80#return; {2799#(and (<= 0 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-27 12:16:56,185 INFO L272 TraceCheckUtils]: 17: Hoare triple {2799#(and (<= 0 main_~y~0) (<= main_~y~0 1))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2744#true} is VALID [2022-04-27 12:16:56,185 INFO L290 TraceCheckUtils]: 18: Hoare triple {2744#true} ~cond := #in~cond; {2744#true} is VALID [2022-04-27 12:16:56,185 INFO L290 TraceCheckUtils]: 19: Hoare triple {2744#true} assume !(0 == ~cond); {2744#true} is VALID [2022-04-27 12:16:56,185 INFO L290 TraceCheckUtils]: 20: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-27 12:16:56,186 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2744#true} {2799#(and (<= 0 main_~y~0) (<= main_~y~0 1))} #82#return; {2799#(and (<= 0 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-27 12:16:56,188 INFO L290 TraceCheckUtils]: 22: Hoare triple {2799#(and (<= 0 main_~y~0) (<= main_~y~0 1))} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {2818#(and (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-27 12:16:56,189 INFO L290 TraceCheckUtils]: 23: Hoare triple {2818#(and (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 1))} assume !false; {2818#(and (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-27 12:16:56,189 INFO L272 TraceCheckUtils]: 24: Hoare triple {2818#(and (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2744#true} is VALID [2022-04-27 12:16:56,189 INFO L290 TraceCheckUtils]: 25: Hoare triple {2744#true} ~cond := #in~cond; {2744#true} is VALID [2022-04-27 12:16:56,189 INFO L290 TraceCheckUtils]: 26: Hoare triple {2744#true} assume !(0 == ~cond); {2744#true} is VALID [2022-04-27 12:16:56,189 INFO L290 TraceCheckUtils]: 27: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-27 12:16:56,189 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2744#true} {2818#(and (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 1))} #84#return; {2818#(and (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-27 12:16:56,190 INFO L272 TraceCheckUtils]: 29: Hoare triple {2818#(and (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2744#true} is VALID [2022-04-27 12:16:56,190 INFO L290 TraceCheckUtils]: 30: Hoare triple {2744#true} ~cond := #in~cond; {2744#true} is VALID [2022-04-27 12:16:56,190 INFO L290 TraceCheckUtils]: 31: Hoare triple {2744#true} assume !(0 == ~cond); {2744#true} is VALID [2022-04-27 12:16:56,190 INFO L290 TraceCheckUtils]: 32: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-27 12:16:56,190 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2744#true} {2818#(and (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 1))} #86#return; {2818#(and (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-27 12:16:56,191 INFO L290 TraceCheckUtils]: 34: Hoare triple {2818#(and (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 1))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {2855#(and (= main_~a~0 1) (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-27 12:16:56,191 INFO L290 TraceCheckUtils]: 35: Hoare triple {2855#(and (= main_~a~0 1) (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} assume !false; {2855#(and (= main_~a~0 1) (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-27 12:16:56,191 INFO L272 TraceCheckUtils]: 36: Hoare triple {2855#(and (= main_~a~0 1) (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2744#true} is VALID [2022-04-27 12:16:56,191 INFO L290 TraceCheckUtils]: 37: Hoare triple {2744#true} ~cond := #in~cond; {2744#true} is VALID [2022-04-27 12:16:56,191 INFO L290 TraceCheckUtils]: 38: Hoare triple {2744#true} assume !(0 == ~cond); {2744#true} is VALID [2022-04-27 12:16:56,191 INFO L290 TraceCheckUtils]: 39: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-27 12:16:56,192 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {2744#true} {2855#(and (= main_~a~0 1) (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} #88#return; {2855#(and (= main_~a~0 1) (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-27 12:16:56,192 INFO L272 TraceCheckUtils]: 41: Hoare triple {2855#(and (= main_~a~0 1) (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2744#true} is VALID [2022-04-27 12:16:56,192 INFO L290 TraceCheckUtils]: 42: Hoare triple {2744#true} ~cond := #in~cond; {2744#true} is VALID [2022-04-27 12:16:56,192 INFO L290 TraceCheckUtils]: 43: Hoare triple {2744#true} assume !(0 == ~cond); {2744#true} is VALID [2022-04-27 12:16:56,192 INFO L290 TraceCheckUtils]: 44: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-27 12:16:56,193 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2744#true} {2855#(and (= main_~a~0 1) (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} #90#return; {2855#(and (= main_~a~0 1) (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-27 12:16:56,193 INFO L272 TraceCheckUtils]: 46: Hoare triple {2855#(and (= main_~a~0 1) (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {2744#true} is VALID [2022-04-27 12:16:56,193 INFO L290 TraceCheckUtils]: 47: Hoare triple {2744#true} ~cond := #in~cond; {2744#true} is VALID [2022-04-27 12:16:56,193 INFO L290 TraceCheckUtils]: 48: Hoare triple {2744#true} assume !(0 == ~cond); {2744#true} is VALID [2022-04-27 12:16:56,193 INFO L290 TraceCheckUtils]: 49: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-27 12:16:56,194 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2744#true} {2855#(and (= main_~a~0 1) (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} #92#return; {2855#(and (= main_~a~0 1) (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-27 12:16:56,194 INFO L290 TraceCheckUtils]: 51: Hoare triple {2855#(and (= main_~a~0 1) (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} assume !(~r~0 >= 2 * ~b~0); {2907#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (< main_~r~0 (* main_~b~0 2)) (<= main_~y~0 main_~r~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-27 12:16:56,195 INFO L290 TraceCheckUtils]: 52: Hoare triple {2907#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (< main_~r~0 (* main_~b~0 2)) (<= main_~y~0 main_~r~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {2911#(and (= main_~q~0 1) (<= main_~x~0 (+ main_~y~0 main_~r~0)) (<= main_~y~0 1) (<= main_~y~0 main_~x~0) (< (* main_~r~0 2) main_~x~0))} is VALID [2022-04-27 12:16:56,196 INFO L290 TraceCheckUtils]: 53: Hoare triple {2911#(and (= main_~q~0 1) (<= main_~x~0 (+ main_~y~0 main_~r~0)) (<= main_~y~0 1) (<= main_~y~0 main_~x~0) (< (* main_~r~0 2) main_~x~0))} assume !false; {2911#(and (= main_~q~0 1) (<= main_~x~0 (+ main_~y~0 main_~r~0)) (<= main_~y~0 1) (<= main_~y~0 main_~x~0) (< (* main_~r~0 2) main_~x~0))} is VALID [2022-04-27 12:16:56,196 INFO L272 TraceCheckUtils]: 54: Hoare triple {2911#(and (= main_~q~0 1) (<= main_~x~0 (+ main_~y~0 main_~r~0)) (<= main_~y~0 1) (<= main_~y~0 main_~x~0) (< (* main_~r~0 2) main_~x~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2744#true} is VALID [2022-04-27 12:16:56,196 INFO L290 TraceCheckUtils]: 55: Hoare triple {2744#true} ~cond := #in~cond; {2744#true} is VALID [2022-04-27 12:16:56,196 INFO L290 TraceCheckUtils]: 56: Hoare triple {2744#true} assume !(0 == ~cond); {2744#true} is VALID [2022-04-27 12:16:56,196 INFO L290 TraceCheckUtils]: 57: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-27 12:16:56,197 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {2744#true} {2911#(and (= main_~q~0 1) (<= main_~x~0 (+ main_~y~0 main_~r~0)) (<= main_~y~0 1) (<= main_~y~0 main_~x~0) (< (* main_~r~0 2) main_~x~0))} #84#return; {2911#(and (= main_~q~0 1) (<= main_~x~0 (+ main_~y~0 main_~r~0)) (<= main_~y~0 1) (<= main_~y~0 main_~x~0) (< (* main_~r~0 2) main_~x~0))} is VALID [2022-04-27 12:16:56,198 INFO L272 TraceCheckUtils]: 59: Hoare triple {2911#(and (= main_~q~0 1) (<= main_~x~0 (+ main_~y~0 main_~r~0)) (<= main_~y~0 1) (<= main_~y~0 main_~x~0) (< (* main_~r~0 2) main_~x~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2933#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:16:56,198 INFO L290 TraceCheckUtils]: 60: Hoare triple {2933#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2937#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:16:56,198 INFO L290 TraceCheckUtils]: 61: Hoare triple {2937#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2745#false} is VALID [2022-04-27 12:16:56,199 INFO L290 TraceCheckUtils]: 62: Hoare triple {2745#false} assume !false; {2745#false} is VALID [2022-04-27 12:16:56,199 INFO L134 CoverageAnalysis]: Checked inductivity of 87 backedges. 15 proven. 6 refuted. 0 times theorem prover too weak. 66 trivial. 0 not checked. [2022-04-27 12:16:56,199 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:16:57,163 INFO L290 TraceCheckUtils]: 62: Hoare triple {2745#false} assume !false; {2745#false} is VALID [2022-04-27 12:16:57,164 INFO L290 TraceCheckUtils]: 61: Hoare triple {2937#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2745#false} is VALID [2022-04-27 12:16:57,164 INFO L290 TraceCheckUtils]: 60: Hoare triple {2933#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2937#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:16:57,165 INFO L272 TraceCheckUtils]: 59: Hoare triple {2953#(= (+ (* 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)); {2933#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:16:57,165 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {2744#true} {2953#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #84#return; {2953#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-27 12:16:57,166 INFO L290 TraceCheckUtils]: 57: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-27 12:16:57,166 INFO L290 TraceCheckUtils]: 56: Hoare triple {2744#true} assume !(0 == ~cond); {2744#true} is VALID [2022-04-27 12:16:57,166 INFO L290 TraceCheckUtils]: 55: Hoare triple {2744#true} ~cond := #in~cond; {2744#true} is VALID [2022-04-27 12:16:57,166 INFO L272 TraceCheckUtils]: 54: Hoare triple {2953#(= (+ (* 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)); {2744#true} is VALID [2022-04-27 12:16:57,171 INFO L290 TraceCheckUtils]: 53: Hoare triple {2953#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !false; {2953#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-27 12:16:57,216 INFO L290 TraceCheckUtils]: 52: Hoare triple {2975#(= 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; {2953#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-27 12:16:57,216 INFO L290 TraceCheckUtils]: 51: Hoare triple {2979#(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); {2975#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-27 12:16:57,217 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2744#true} {2979#(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; {2979#(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-27 12:16:57,217 INFO L290 TraceCheckUtils]: 49: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-27 12:16:57,217 INFO L290 TraceCheckUtils]: 48: Hoare triple {2744#true} assume !(0 == ~cond); {2744#true} is VALID [2022-04-27 12:16:57,218 INFO L290 TraceCheckUtils]: 47: Hoare triple {2744#true} ~cond := #in~cond; {2744#true} is VALID [2022-04-27 12:16:57,218 INFO L272 TraceCheckUtils]: 46: Hoare triple {2979#(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)); {2744#true} is VALID [2022-04-27 12:16:57,218 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2744#true} {2979#(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; {2979#(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-27 12:16:57,218 INFO L290 TraceCheckUtils]: 44: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-27 12:16:57,218 INFO L290 TraceCheckUtils]: 43: Hoare triple {2744#true} assume !(0 == ~cond); {2744#true} is VALID [2022-04-27 12:16:57,218 INFO L290 TraceCheckUtils]: 42: Hoare triple {2744#true} ~cond := #in~cond; {2744#true} is VALID [2022-04-27 12:16:57,218 INFO L272 TraceCheckUtils]: 41: Hoare triple {2979#(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)); {2744#true} is VALID [2022-04-27 12:16:57,219 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {2744#true} {2979#(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; {2979#(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-27 12:16:57,219 INFO L290 TraceCheckUtils]: 39: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-27 12:16:57,219 INFO L290 TraceCheckUtils]: 38: Hoare triple {2744#true} assume !(0 == ~cond); {2744#true} is VALID [2022-04-27 12:16:57,219 INFO L290 TraceCheckUtils]: 37: Hoare triple {2744#true} ~cond := #in~cond; {2744#true} is VALID [2022-04-27 12:16:57,219 INFO L272 TraceCheckUtils]: 36: Hoare triple {2979#(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)); {2744#true} is VALID [2022-04-27 12:16:57,220 INFO L290 TraceCheckUtils]: 35: Hoare triple {2979#(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; {2979#(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-27 12:16:57,225 INFO L290 TraceCheckUtils]: 34: Hoare triple {3031#(or (and (or (<= main_~x~0 (+ (* main_~q~0 main_~y~0) main_~r~0)) (<= main_~y~0 (div main_~r~0 2))) (or (<= (+ (* main_~q~0 main_~y~0) main_~y~0 main_~r~0) (+ (div main_~r~0 2) main_~x~0 1)) (<= main_~y~0 (div main_~r~0 2)))) (not (<= main_~y~0 main_~r~0)))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {2979#(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-27 12:16:57,225 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2744#true} {3031#(or (and (or (<= main_~x~0 (+ (* main_~q~0 main_~y~0) main_~r~0)) (<= main_~y~0 (div main_~r~0 2))) (or (<= (+ (* main_~q~0 main_~y~0) main_~y~0 main_~r~0) (+ (div main_~r~0 2) main_~x~0 1)) (<= main_~y~0 (div main_~r~0 2)))) (not (<= main_~y~0 main_~r~0)))} #86#return; {3031#(or (and (or (<= main_~x~0 (+ (* main_~q~0 main_~y~0) main_~r~0)) (<= main_~y~0 (div main_~r~0 2))) (or (<= (+ (* main_~q~0 main_~y~0) main_~y~0 main_~r~0) (+ (div main_~r~0 2) main_~x~0 1)) (<= main_~y~0 (div main_~r~0 2)))) (not (<= main_~y~0 main_~r~0)))} is VALID [2022-04-27 12:16:57,225 INFO L290 TraceCheckUtils]: 32: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-27 12:16:57,225 INFO L290 TraceCheckUtils]: 31: Hoare triple {2744#true} assume !(0 == ~cond); {2744#true} is VALID [2022-04-27 12:16:57,225 INFO L290 TraceCheckUtils]: 30: Hoare triple {2744#true} ~cond := #in~cond; {2744#true} is VALID [2022-04-27 12:16:57,225 INFO L272 TraceCheckUtils]: 29: Hoare triple {3031#(or (and (or (<= main_~x~0 (+ (* main_~q~0 main_~y~0) main_~r~0)) (<= main_~y~0 (div main_~r~0 2))) (or (<= (+ (* main_~q~0 main_~y~0) main_~y~0 main_~r~0) (+ (div main_~r~0 2) main_~x~0 1)) (<= main_~y~0 (div main_~r~0 2)))) (not (<= main_~y~0 main_~r~0)))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2744#true} is VALID [2022-04-27 12:16:57,226 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2744#true} {3031#(or (and (or (<= main_~x~0 (+ (* main_~q~0 main_~y~0) main_~r~0)) (<= main_~y~0 (div main_~r~0 2))) (or (<= (+ (* main_~q~0 main_~y~0) main_~y~0 main_~r~0) (+ (div main_~r~0 2) main_~x~0 1)) (<= main_~y~0 (div main_~r~0 2)))) (not (<= main_~y~0 main_~r~0)))} #84#return; {3031#(or (and (or (<= main_~x~0 (+ (* main_~q~0 main_~y~0) main_~r~0)) (<= main_~y~0 (div main_~r~0 2))) (or (<= (+ (* main_~q~0 main_~y~0) main_~y~0 main_~r~0) (+ (div main_~r~0 2) main_~x~0 1)) (<= main_~y~0 (div main_~r~0 2)))) (not (<= main_~y~0 main_~r~0)))} is VALID [2022-04-27 12:16:57,226 INFO L290 TraceCheckUtils]: 27: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-27 12:16:57,226 INFO L290 TraceCheckUtils]: 26: Hoare triple {2744#true} assume !(0 == ~cond); {2744#true} is VALID [2022-04-27 12:16:57,226 INFO L290 TraceCheckUtils]: 25: Hoare triple {2744#true} ~cond := #in~cond; {2744#true} is VALID [2022-04-27 12:16:57,226 INFO L272 TraceCheckUtils]: 24: Hoare triple {3031#(or (and (or (<= main_~x~0 (+ (* main_~q~0 main_~y~0) main_~r~0)) (<= main_~y~0 (div main_~r~0 2))) (or (<= (+ (* main_~q~0 main_~y~0) main_~y~0 main_~r~0) (+ (div main_~r~0 2) main_~x~0 1)) (<= main_~y~0 (div main_~r~0 2)))) (not (<= main_~y~0 main_~r~0)))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2744#true} is VALID [2022-04-27 12:16:57,227 INFO L290 TraceCheckUtils]: 23: Hoare triple {3031#(or (and (or (<= main_~x~0 (+ (* main_~q~0 main_~y~0) main_~r~0)) (<= main_~y~0 (div main_~r~0 2))) (or (<= (+ (* main_~q~0 main_~y~0) main_~y~0 main_~r~0) (+ (div main_~r~0 2) main_~x~0 1)) (<= main_~y~0 (div main_~r~0 2)))) (not (<= main_~y~0 main_~r~0)))} assume !false; {3031#(or (and (or (<= main_~x~0 (+ (* main_~q~0 main_~y~0) main_~r~0)) (<= main_~y~0 (div main_~r~0 2))) (or (<= (+ (* main_~q~0 main_~y~0) main_~y~0 main_~r~0) (+ (div main_~r~0 2) main_~x~0 1)) (<= main_~y~0 (div main_~r~0 2)))) (not (<= main_~y~0 main_~r~0)))} is VALID [2022-04-27 12:16:57,228 INFO L290 TraceCheckUtils]: 22: Hoare triple {3068#(<= main_~y~0 (+ 2 (div (+ (- 2) main_~y~0) 2)))} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {3031#(or (and (or (<= main_~x~0 (+ (* main_~q~0 main_~y~0) main_~r~0)) (<= main_~y~0 (div main_~r~0 2))) (or (<= (+ (* main_~q~0 main_~y~0) main_~y~0 main_~r~0) (+ (div main_~r~0 2) main_~x~0 1)) (<= main_~y~0 (div main_~r~0 2)))) (not (<= main_~y~0 main_~r~0)))} is VALID [2022-04-27 12:16:57,228 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2744#true} {3068#(<= main_~y~0 (+ 2 (div (+ (- 2) main_~y~0) 2)))} #82#return; {3068#(<= main_~y~0 (+ 2 (div (+ (- 2) main_~y~0) 2)))} is VALID [2022-04-27 12:16:57,228 INFO L290 TraceCheckUtils]: 20: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-27 12:16:57,228 INFO L290 TraceCheckUtils]: 19: Hoare triple {2744#true} assume !(0 == ~cond); {2744#true} is VALID [2022-04-27 12:16:57,228 INFO L290 TraceCheckUtils]: 18: Hoare triple {2744#true} ~cond := #in~cond; {2744#true} is VALID [2022-04-27 12:16:57,228 INFO L272 TraceCheckUtils]: 17: Hoare triple {3068#(<= main_~y~0 (+ 2 (div (+ (- 2) main_~y~0) 2)))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2744#true} is VALID [2022-04-27 12:16:57,229 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2792#(not (= |assume_abort_if_not_#in~cond| 0))} {2744#true} #80#return; {3068#(<= main_~y~0 (+ 2 (div (+ (- 2) main_~y~0) 2)))} is VALID [2022-04-27 12:16:57,229 INFO L290 TraceCheckUtils]: 15: Hoare triple {2792#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2792#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:16:57,229 INFO L290 TraceCheckUtils]: 14: Hoare triple {3096#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {2792#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:16:57,230 INFO L290 TraceCheckUtils]: 13: Hoare triple {2744#true} ~cond := #in~cond; {3096#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-27 12:16:57,230 INFO L272 TraceCheckUtils]: 12: Hoare triple {2744#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {2744#true} is VALID [2022-04-27 12:16:57,230 INFO L290 TraceCheckUtils]: 11: Hoare triple {2744#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2744#true} is VALID [2022-04-27 12:16:57,230 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2744#true} {2744#true} #78#return; {2744#true} is VALID [2022-04-27 12:16:57,230 INFO L290 TraceCheckUtils]: 9: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-27 12:16:57,230 INFO L290 TraceCheckUtils]: 8: Hoare triple {2744#true} assume !(0 == ~cond); {2744#true} is VALID [2022-04-27 12:16:57,230 INFO L290 TraceCheckUtils]: 7: Hoare triple {2744#true} ~cond := #in~cond; {2744#true} is VALID [2022-04-27 12:16:57,230 INFO L272 TraceCheckUtils]: 6: Hoare triple {2744#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {2744#true} is VALID [2022-04-27 12:16:57,230 INFO L290 TraceCheckUtils]: 5: Hoare triple {2744#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; {2744#true} is VALID [2022-04-27 12:16:57,230 INFO L272 TraceCheckUtils]: 4: Hoare triple {2744#true} call #t~ret6 := main(); {2744#true} is VALID [2022-04-27 12:16:57,230 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2744#true} {2744#true} #98#return; {2744#true} is VALID [2022-04-27 12:16:57,230 INFO L290 TraceCheckUtils]: 2: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-27 12:16:57,230 INFO L290 TraceCheckUtils]: 1: Hoare triple {2744#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); {2744#true} is VALID [2022-04-27 12:16:57,230 INFO L272 TraceCheckUtils]: 0: Hoare triple {2744#true} call ULTIMATE.init(); {2744#true} is VALID [2022-04-27 12:16:57,231 INFO L134 CoverageAnalysis]: Checked inductivity of 87 backedges. 15 proven. 6 refuted. 0 times theorem prover too weak. 66 trivial. 0 not checked. [2022-04-27 12:16:57,231 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:16:57,231 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1300952928] [2022-04-27 12:16:57,231 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:16:57,231 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [946881730] [2022-04-27 12:16:57,231 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [946881730] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 12:16:57,231 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 12:16:57,231 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 17 [2022-04-27 12:16:57,231 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1203460695] [2022-04-27 12:16:57,231 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 12:16:57,232 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 1.8823529411764706) internal successors, (32), 14 states have internal predecessors, (32), 9 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 9 states have call predecessors, (18), 9 states have call successors, (18) Word has length 63 [2022-04-27 12:16:57,232 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:16:57,233 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 17 states, 17 states have (on average 1.8823529411764706) internal successors, (32), 14 states have internal predecessors, (32), 9 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 9 states have call predecessors, (18), 9 states have call successors, (18) [2022-04-27 12:16:57,295 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:16:57,295 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-27 12:16:57,295 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:16:57,295 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-27 12:16:57,296 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=57, Invalid=215, Unknown=0, NotChecked=0, Total=272 [2022-04-27 12:16:57,296 INFO L87 Difference]: Start difference. First operand 55 states and 62 transitions. Second operand has 17 states, 17 states have (on average 1.8823529411764706) internal successors, (32), 14 states have internal predecessors, (32), 9 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 9 states have call predecessors, (18), 9 states have call successors, (18) [2022-04-27 12:16:58,118 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:16:58,118 INFO L93 Difference]: Finished difference Result 75 states and 84 transitions. [2022-04-27 12:16:58,118 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 12:16:58,118 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 1.8823529411764706) internal successors, (32), 14 states have internal predecessors, (32), 9 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 9 states have call predecessors, (18), 9 states have call successors, (18) Word has length 63 [2022-04-27 12:16:58,119 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:16:58,119 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 1.8823529411764706) internal successors, (32), 14 states have internal predecessors, (32), 9 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 9 states have call predecessors, (18), 9 states have call successors, (18) [2022-04-27 12:16:58,120 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 66 transitions. [2022-04-27 12:16:58,120 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 1.8823529411764706) internal successors, (32), 14 states have internal predecessors, (32), 9 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 9 states have call predecessors, (18), 9 states have call successors, (18) [2022-04-27 12:16:58,121 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 66 transitions. [2022-04-27 12:16:58,121 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 66 transitions. [2022-04-27 12:16:58,173 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:16:58,173 INFO L225 Difference]: With dead ends: 75 [2022-04-27 12:16:58,173 INFO L226 Difference]: Without dead ends: 0 [2022-04-27 12:16:58,174 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 130 GetRequests, 109 SyntacticMatches, 1 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 76 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=97, Invalid=365, Unknown=0, NotChecked=0, Total=462 [2022-04-27 12:16:58,174 INFO L413 NwaCegarLoop]: 25 mSDtfsCounter, 20 mSDsluCounter, 114 mSDsCounter, 0 mSdLazyCounter, 253 mSolverCounterSat, 29 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 20 SdHoareTripleChecker+Valid, 139 SdHoareTripleChecker+Invalid, 282 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 29 IncrementalHoareTripleChecker+Valid, 253 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-27 12:16:58,175 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [20 Valid, 139 Invalid, 282 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [29 Valid, 253 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-27 12:16:58,175 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-27 12:16:58,175 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-27 12:16:58,175 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:16:58,175 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-27 12:16:58,175 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-27 12:16:58,175 INFO L87 Difference]: Start difference. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-27 12:16:58,175 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:16:58,175 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-27 12:16:58,175 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-27 12:16:58,175 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:16:58,176 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:16:58,176 INFO L74 IsIncluded]: Start isIncluded. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-27 12:16:58,176 INFO L87 Difference]: Start difference. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-27 12:16:58,176 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:16:58,176 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-27 12:16:58,176 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-27 12:16:58,176 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:16:58,176 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:16:58,176 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:16:58,176 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:16:58,176 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-27 12:16:58,176 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-27 12:16:58,176 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 63 [2022-04-27 12:16:58,176 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:16:58,176 INFO L495 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-27 12:16:58,176 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 17 states have (on average 1.8823529411764706) internal successors, (32), 14 states have internal predecessors, (32), 9 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 9 states have call predecessors, (18), 9 states have call successors, (18) [2022-04-27 12:16:58,176 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-27 12:16:58,177 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:16:58,178 INFO L805 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-27 12:16:58,198 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-27 12:16:58,397 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:16:58,399 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-04-27 12:16:58,969 INFO L899 garLoopResultBuilder]: For program point reach_errorEXIT(line 8) no Hoare annotation was computed. [2022-04-27 12:16:58,970 INFO L899 garLoopResultBuilder]: For program point reach_errorENTRY(line 8) no Hoare annotation was computed. [2022-04-27 12:16:58,970 INFO L899 garLoopResultBuilder]: For program point reach_errorFINAL(line 8) no Hoare annotation was computed. [2022-04-27 12:16:58,970 INFO L902 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 11 13) the Hoare annotation is: true [2022-04-27 12:16:58,970 INFO L899 garLoopResultBuilder]: For program point L12(line 12) no Hoare annotation was computed. [2022-04-27 12:16:58,970 INFO L899 garLoopResultBuilder]: For program point L12-2(lines 11 13) no Hoare annotation was computed. [2022-04-27 12:16:58,970 INFO L899 garLoopResultBuilder]: For program point assume_abort_if_notEXIT(lines 11 13) no Hoare annotation was computed. [2022-04-27 12:16:58,970 INFO L899 garLoopResultBuilder]: For program point L64(line 64) no Hoare annotation was computed. [2022-04-27 12:16:58,970 INFO L899 garLoopResultBuilder]: For program point L31(line 31) no Hoare annotation was computed. [2022-04-27 12:16:58,970 INFO L895 garLoopResultBuilder]: At program point L29(line 29) the Hoare annotation is: (and (<= 0 main_~x~0) (<= main_~x~0 1)) [2022-04-27 12:16:58,970 INFO L895 garLoopResultBuilder]: At program point L29-1(line 29) the Hoare annotation is: (and (<= 0 main_~y~0) (<= 0 main_~x~0) (<= main_~x~0 1) (<= main_~y~0 1)) [2022-04-27 12:16:58,970 INFO L902 garLoopResultBuilder]: At program point L27(line 27) the Hoare annotation is: true [2022-04-27 12:16:58,970 INFO L899 garLoopResultBuilder]: For program point L27-1(line 27) no Hoare annotation was computed. [2022-04-27 12:16:58,970 INFO L899 garLoopResultBuilder]: For program point mainEXIT(lines 22 66) no Hoare annotation was computed. [2022-04-27 12:16:58,970 INFO L899 garLoopResultBuilder]: For program point L50(lines 47 59) no Hoare annotation was computed. [2022-04-27 12:16:58,971 INFO L895 garLoopResultBuilder]: At program point L48(line 48) the Hoare annotation is: (and (= main_~x~0 main_~r~0) (<= main_~x~0 1) (<= 1 main_~r~0) (= main_~b~0 main_~y~0) (= (+ (* main_~q~0 main_~y~0) main_~r~0 (* main_~a~0 main_~y~0)) (+ main_~b~0 main_~x~0)) (= main_~q~0 0) (<= 1 main_~y~0) (<= main_~y~0 1)) [2022-04-27 12:16:58,971 INFO L895 garLoopResultBuilder]: At program point L48-1(line 48) the Hoare annotation is: (and (= main_~x~0 main_~r~0) (<= main_~x~0 1) (<= 1 main_~r~0) (= main_~b~0 main_~y~0) (= (+ (* main_~q~0 main_~y~0) main_~r~0 (* main_~a~0 main_~y~0)) (+ main_~b~0 main_~x~0)) (= main_~q~0 0) (<= 1 main_~y~0) (<= main_~y~0 1)) [2022-04-27 12:16:58,971 INFO L899 garLoopResultBuilder]: For program point mainFINAL(lines 22 66) no Hoare annotation was computed. [2022-04-27 12:16:58,971 INFO L899 garLoopResultBuilder]: For program point L40(lines 38 62) no Hoare annotation was computed. [2022-04-27 12:16:58,971 INFO L895 garLoopResultBuilder]: At program point L38-2(lines 38 62) the Hoare annotation is: (let ((.cse0 (= (+ (* main_~q~0 main_~y~0) main_~r~0 (* main_~a~0 main_~y~0)) (+ main_~b~0 main_~x~0))) (.cse1 (<= main_~y~0 1))) (or (and (= main_~x~0 main_~r~0) (= main_~b~0 0) (<= 0 main_~x~0) (<= main_~x~0 1) .cse0 (= main_~q~0 0) (<= 1 main_~y~0) .cse1) (and (= main_~b~0 main_~y~0) .cse0 (= main_~q~0 1) (<= main_~x~0 (+ main_~y~0 main_~r~0)) .cse1 (<= main_~y~0 main_~x~0) (< (* main_~r~0 2) main_~x~0)))) [2022-04-27 12:16:58,971 INFO L895 garLoopResultBuilder]: At program point L38-3(lines 38 62) the Hoare annotation is: (let ((.cse0 (<= main_~y~0 1))) (or (and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0) .cse0) (and (= (+ (* main_~q~0 main_~y~0) main_~r~0 (* main_~a~0 main_~y~0)) (+ main_~b~0 main_~x~0)) (<= 1 main_~b~0) (= main_~q~0 1) (<= main_~x~0 (+ main_~y~0 main_~r~0)) .cse0 (<= main_~y~0 main_~x~0) (< (* main_~r~0 2) main_~x~0)))) [2022-04-27 12:16:58,971 INFO L902 garLoopResultBuilder]: At program point mainENTRY(lines 22 66) the Hoare annotation is: true [2022-04-27 12:16:58,971 INFO L895 garLoopResultBuilder]: At program point L55(line 55) the Hoare annotation is: false [2022-04-27 12:16:58,971 INFO L899 garLoopResultBuilder]: For program point L55-1(line 55) no Hoare annotation was computed. [2022-04-27 12:16:58,971 INFO L895 garLoopResultBuilder]: At program point L49(line 49) the Hoare annotation is: (and (= main_~a~0 1) (<= main_~x~0 1) (<= 1 main_~r~0) (= main_~b~0 main_~y~0) (= (+ (* main_~q~0 main_~y~0) main_~r~0 (* main_~a~0 main_~y~0)) (+ main_~b~0 main_~x~0)) (= main_~q~0 0) (<= 1 main_~y~0) (<= main_~y~0 1)) [2022-04-27 12:16:58,971 INFO L895 garLoopResultBuilder]: At program point L47-2(lines 47 59) the Hoare annotation is: (and (= main_~x~0 main_~r~0) (<= main_~x~0 1) (<= 1 main_~r~0) (= main_~b~0 main_~y~0) (= (+ (* main_~q~0 main_~y~0) main_~r~0 (* main_~a~0 main_~y~0)) (+ main_~b~0 main_~x~0)) (= main_~q~0 0) (<= 1 main_~y~0) (<= main_~y~0 1)) [2022-04-27 12:16:58,971 INFO L899 garLoopResultBuilder]: For program point L47-3(lines 47 59) no Hoare annotation was computed. [2022-04-27 12:16:58,971 INFO L895 garLoopResultBuilder]: At program point L39(line 39) the Hoare annotation is: (let ((.cse0 (= (+ (* main_~q~0 main_~y~0) main_~r~0 (* main_~a~0 main_~y~0)) (+ main_~b~0 main_~x~0))) (.cse1 (<= main_~y~0 1))) (or (and (= main_~x~0 main_~r~0) (= main_~b~0 0) (<= 0 main_~x~0) (<= main_~x~0 1) .cse0 (= main_~q~0 0) (<= 1 main_~y~0) .cse1) (and (= main_~b~0 main_~y~0) .cse0 (= main_~q~0 1) (<= main_~x~0 (+ main_~y~0 main_~r~0)) .cse1 (<= main_~y~0 main_~x~0) (< (* main_~r~0 2) main_~x~0)))) [2022-04-27 12:16:58,971 INFO L895 garLoopResultBuilder]: At program point L39-1(line 39) the Hoare annotation is: (let ((.cse0 (= (+ (* main_~q~0 main_~y~0) main_~r~0 (* main_~a~0 main_~y~0)) (+ main_~b~0 main_~x~0))) (.cse1 (<= main_~y~0 1))) (or (and (= main_~x~0 main_~r~0) (<= 0 main_~x~0) (<= main_~x~0 1) .cse0 (= main_~q~0 0) (<= 1 main_~y~0) .cse1) (and .cse0 (<= 1 main_~b~0) (= main_~q~0 1) (<= main_~x~0 (+ main_~y~0 main_~r~0)) .cse1 (<= main_~y~0 main_~x~0) (< (* main_~r~0 2) main_~x~0)))) [2022-04-27 12:16:58,971 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.initFINAL(line -1) no Hoare annotation was computed. [2022-04-27 12:16:58,971 INFO L895 garLoopResultBuilder]: At program point ULTIMATE.initENTRY(line -1) the Hoare annotation is: (and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|)) [2022-04-27 12:16:58,972 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.initEXIT(line -1) no Hoare annotation was computed. [2022-04-27 12:16:58,972 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.startEXIT(line -1) no Hoare annotation was computed. [2022-04-27 12:16:58,972 INFO L902 garLoopResultBuilder]: At program point L-1(line -1) the Hoare annotation is: true [2022-04-27 12:16:58,972 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2022-04-27 12:16:58,972 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.startFINAL(line -1) no Hoare annotation was computed. [2022-04-27 12:16:58,972 INFO L899 garLoopResultBuilder]: For program point L16(lines 16 17) no Hoare annotation was computed. [2022-04-27 12:16:58,972 INFO L899 garLoopResultBuilder]: For program point L15(lines 15 18) no Hoare annotation was computed. [2022-04-27 12:16:58,972 INFO L902 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 14 20) the Hoare annotation is: true [2022-04-27 12:16:58,972 INFO L899 garLoopResultBuilder]: For program point L15-2(lines 14 20) no Hoare annotation was computed. [2022-04-27 12:16:58,972 INFO L899 garLoopResultBuilder]: For program point __VERIFIER_assertEXIT(lines 14 20) no Hoare annotation was computed. [2022-04-27 12:16:58,972 INFO L899 garLoopResultBuilder]: For program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 17) no Hoare annotation was computed. [2022-04-27 12:16:58,974 INFO L356 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:16:58,975 INFO L176 ceAbstractionStarter]: Computing trace abstraction results [2022-04-27 12:16:58,977 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-27 12:16:58,977 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-27 12:16:58,983 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-27 12:16:58,983 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-27 12:16:58,983 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-27 12:16:58,983 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-27 12:16:58,983 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-27 12:16:58,983 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-27 12:16:58,983 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-27 12:16:58,984 WARN L170 areAnnotationChecker]: L27-1 has no Hoare annotation [2022-04-27 12:16:58,984 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-27 12:16:58,984 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-27 12:16:58,984 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-27 12:16:58,984 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-27 12:16:58,984 WARN L170 areAnnotationChecker]: L12-2 has no Hoare annotation [2022-04-27 12:16:58,984 WARN L170 areAnnotationChecker]: L27-1 has no Hoare annotation [2022-04-27 12:16:58,984 WARN L170 areAnnotationChecker]: L16 has no Hoare annotation [2022-04-27 12:16:58,984 WARN L170 areAnnotationChecker]: L16 has no Hoare annotation [2022-04-27 12:16:58,984 WARN L170 areAnnotationChecker]: L15-2 has no Hoare annotation [2022-04-27 12:16:58,984 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-27 12:16:58,984 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-27 12:16:58,984 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-27 12:16:58,984 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:16:58,984 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:16:58,984 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:16:58,984 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:16:58,984 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:16:58,984 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:16:58,984 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:16:58,984 WARN L170 areAnnotationChecker]: L31 has no Hoare annotation [2022-04-27 12:16:58,984 WARN L170 areAnnotationChecker]: L31 has no Hoare annotation [2022-04-27 12:16:58,984 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2022-04-27 12:16:58,984 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2022-04-27 12:16:58,984 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2022-04-27 12:16:58,984 WARN L170 areAnnotationChecker]: L50 has no Hoare annotation [2022-04-27 12:16:58,984 WARN L170 areAnnotationChecker]: L50 has no Hoare annotation [2022-04-27 12:16:58,984 WARN L170 areAnnotationChecker]: L50 has no Hoare annotation [2022-04-27 12:16:58,984 WARN L170 areAnnotationChecker]: L55-1 has no Hoare annotation [2022-04-27 12:16:58,984 WARN L170 areAnnotationChecker]: L64 has no Hoare annotation [2022-04-27 12:16:58,990 WARN L170 areAnnotationChecker]: L64 has no Hoare annotation [2022-04-27 12:16:58,990 WARN L170 areAnnotationChecker]: L47-3 has no Hoare annotation [2022-04-27 12:16:58,990 WARN L170 areAnnotationChecker]: L47-3 has no Hoare annotation [2022-04-27 12:16:58,992 WARN L170 areAnnotationChecker]: L47-3 has no Hoare annotation [2022-04-27 12:16:58,992 WARN L170 areAnnotationChecker]: L55-1 has no Hoare annotation [2022-04-27 12:16:58,992 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-27 12:16:58,992 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-27 12:16:58,992 INFO L163 areAnnotationChecker]: CFG has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-27 12:16:59,013 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 27.04 12:16:59 BoogieIcfgContainer [2022-04-27 12:16:59,013 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-27 12:16:59,014 INFO L158 Benchmark]: Toolchain (without parser) took 11409.51ms. Allocated memory was 188.7MB in the beginning and 280.0MB in the end (delta: 91.2MB). Free memory was 135.5MB in the beginning and 165.5MB in the end (delta: -30.0MB). Peak memory consumption was 61.7MB. Max. memory is 8.0GB. [2022-04-27 12:16:59,014 INFO L158 Benchmark]: CDTParser took 0.10ms. Allocated memory is still 188.7MB. Free memory was 152.4MB in the beginning and 152.3MB in the end (delta: 74.5kB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-27 12:16:59,014 INFO L158 Benchmark]: CACSL2BoogieTranslator took 201.93ms. Allocated memory was 188.7MB in the beginning and 231.7MB in the end (delta: 43.0MB). Free memory was 135.2MB in the beginning and 208.2MB in the end (delta: -72.9MB). Peak memory consumption was 7.8MB. Max. memory is 8.0GB. [2022-04-27 12:16:59,014 INFO L158 Benchmark]: Boogie Preprocessor took 27.08ms. Allocated memory is still 231.7MB. Free memory was 208.2MB in the beginning and 206.7MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-27 12:16:59,015 INFO L158 Benchmark]: RCFGBuilder took 261.45ms. Allocated memory is still 231.7MB. Free memory was 206.7MB in the beginning and 194.2MB in the end (delta: 12.5MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-27 12:16:59,015 INFO L158 Benchmark]: TraceAbstraction took 10914.45ms. Allocated memory was 231.7MB in the beginning and 280.0MB in the end (delta: 48.2MB). Free memory was 193.5MB in the beginning and 165.5MB in the end (delta: 28.0MB). Peak memory consumption was 77.2MB. Max. memory is 8.0GB. [2022-04-27 12:16:59,016 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.10ms. Allocated memory is still 188.7MB. Free memory was 152.4MB in the beginning and 152.3MB in the end (delta: 74.5kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 201.93ms. Allocated memory was 188.7MB in the beginning and 231.7MB in the end (delta: 43.0MB). Free memory was 135.2MB in the beginning and 208.2MB in the end (delta: -72.9MB). Peak memory consumption was 7.8MB. Max. memory is 8.0GB. * Boogie Preprocessor took 27.08ms. Allocated memory is still 231.7MB. Free memory was 208.2MB in the beginning and 206.7MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 261.45ms. Allocated memory is still 231.7MB. Free memory was 206.7MB in the beginning and 194.2MB in the end (delta: 12.5MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * TraceAbstraction took 10914.45ms. Allocated memory was 231.7MB in the beginning and 280.0MB in the end (delta: 48.2MB). Free memory was 193.5MB in the beginning and 165.5MB in the end (delta: 28.0MB). Peak memory consumption was 77.2MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - 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: 10.8s, OverallIterations: 7, TraceHistogramMax: 7, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 3.5s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.6s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 204 SdHoareTripleChecker+Valid, 0.9s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 161 mSDsluCounter, 1078 SdHoareTripleChecker+Invalid, 0.9s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 830 mSDsCounter, 95 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 990 IncrementalHoareTripleChecker+Invalid, 1085 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 95 mSolverCounterUnsat, 248 mSDtfsCounter, 990 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 413 GetRequests, 341 SyntacticMatches, 1 SemanticMatches, 71 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 126 ImplicationChecksByTransitivity, 0.5s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=74occurred in iteration=5, InterpolantAutomatonStates: 57, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.3s AutomataMinimizationTime, 7 MinimizatonAttempts, 13 StatesRemovedByMinimization, 4 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 18 LocationsWithAnnotation, 58 PreInvPairs, 72 NumberOfFragments, 426 HoareAnnotationTreeSize, 58 FomulaSimplifications, 18 FormulaSimplificationTreeSizeReduction, 0.1s HoareSimplificationTime, 18 FomulaSimplificationsInter, 348 FormulaSimplificationTreeSizeReductionInter, 0.4s HoareSimplificationTimeInter, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 4.4s InterpolantComputationTime, 298 NumberOfCodeBlocks, 298 NumberOfCodeBlocksAsserted, 7 NumberOfCheckSat, 408 ConstructedInterpolants, 0 QuantifiedInterpolants, 1398 SizeOfPredicates, 26 NumberOfNonLiveVariables, 745 ConjunctsInSsa, 94 ConjunctsInUnsatCore, 9 InterpolantComputations, 5 PerfectInterpolantSequences, 382/400 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: ((((((x == r && x <= 1) && 1 <= r) && b == y) && q * y + r + a * y == b + x) && q == 0) && 1 <= y) && y <= 1 - InvariantResult [Line: 38]: Loop Invariant Derived loop invariant: (((((((x == r && b == 0) && 0 <= x) && x <= 1) && q * y + r + a * y == b + x) && q == 0) && 1 <= y) && y <= 1) || ((((((b == y && q * y + r + a * y == b + x) && q == 1) && x <= y + r) && y <= 1) && y <= x) && r * 2 < x) RESULT: Ultimate proved your program to be correct! [2022-04-27 12:16:59,036 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...