/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/prod4br-ll_unwindbound20.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-27 14:24:20,599 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-27 14:24:20,600 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-27 14:24:20,656 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-27 14:24:20,657 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-27 14:24:20,658 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-27 14:24:20,660 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-27 14:24:20,662 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-27 14:24:20,663 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-27 14:24:20,666 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-27 14:24:20,667 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-27 14:24:20,668 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-27 14:24:20,668 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-27 14:24:20,669 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-27 14:24:20,670 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-27 14:24:20,672 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-27 14:24:20,673 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-27 14:24:20,673 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-27 14:24:20,675 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-27 14:24:20,679 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-27 14:24:20,680 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-27 14:24:20,681 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-27 14:24:20,681 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-27 14:24:20,682 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-27 14:24:20,683 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-27 14:24:20,688 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-27 14:24:20,688 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-27 14:24:20,688 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-27 14:24:20,689 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-27 14:24:20,689 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-27 14:24:20,690 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-27 14:24:20,690 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-27 14:24:20,691 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-27 14:24:20,692 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-27 14:24:20,692 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-27 14:24:20,693 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-27 14:24:20,693 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-27 14:24:20,693 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-27 14:24:20,693 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-27 14:24:20,693 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-27 14:24:20,694 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-27 14:24:20,695 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-27 14:24:20,695 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 14:24:20,717 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-27 14:24:20,718 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-27 14:24:20,718 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-04-27 14:24:20,718 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-04-27 14:24:20,719 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-27 14:24:20,719 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-27 14:24:20,719 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-27 14:24:20,719 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-27 14:24:20,719 INFO L138 SettingsManager]: * Use SBE=true [2022-04-27 14:24:20,720 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-27 14:24:20,720 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-27 14:24:20,720 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-27 14:24:20,720 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-27 14:24:20,720 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-27 14:24:20,720 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-27 14:24:20,721 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-27 14:24:20,721 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-27 14:24:20,721 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-27 14:24:20,721 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-27 14:24:20,721 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-27 14:24:20,721 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-27 14:24:20,722 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-27 14:24:20,722 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-27 14:24:20,722 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-27 14:24:20,722 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 14:24:20,722 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-27 14:24:20,722 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-27 14:24:20,722 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-27 14:24:20,722 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-27 14:24:20,722 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-27 14:24:20,723 INFO L138 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2022-04-27 14:24:20,723 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-04-27 14:24:20,723 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-27 14:24:20,723 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 14:24:20,903 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-27 14:24:20,922 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-27 14:24:20,924 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-27 14:24:20,925 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-27 14:24:20,925 INFO L275 PluginConnector]: CDTParser initialized [2022-04-27 14:24:20,926 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound20.c [2022-04-27 14:24:20,964 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/09c5012a5/c60cacf19e0c423da62b119de958dfa5/FLAG6087e7522 [2022-04-27 14:24:21,333 INFO L306 CDTParser]: Found 1 translation units. [2022-04-27 14:24:21,333 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound20.c [2022-04-27 14:24:21,338 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/09c5012a5/c60cacf19e0c423da62b119de958dfa5/FLAG6087e7522 [2022-04-27 14:24:21,350 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/09c5012a5/c60cacf19e0c423da62b119de958dfa5 [2022-04-27 14:24:21,352 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-27 14:24:21,353 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-27 14:24:21,355 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-27 14:24:21,355 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-27 14:24:21,357 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-27 14:24:21,358 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 02:24:21" (1/1) ... [2022-04-27 14:24:21,358 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@41cecc51 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 02:24:21, skipping insertion in model container [2022-04-27 14:24:21,358 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 02:24:21" (1/1) ... [2022-04-27 14:24:21,362 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-27 14:24:21,374 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-27 14:24:21,520 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/prod4br-ll_unwindbound20.c[524,537] [2022-04-27 14:24:21,552 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 14:24:21,556 INFO L203 MainTranslator]: Completed pre-run [2022-04-27 14:24:21,567 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/prod4br-ll_unwindbound20.c[524,537] [2022-04-27 14:24:21,586 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 14:24:21,599 INFO L208 MainTranslator]: Completed translation [2022-04-27 14:24:21,599 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 02:24:21 WrapperNode [2022-04-27 14:24:21,600 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-27 14:24:21,600 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-27 14:24:21,600 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-27 14:24:21,600 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-27 14:24:21,608 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 02:24:21" (1/1) ... [2022-04-27 14:24:21,608 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 02:24:21" (1/1) ... [2022-04-27 14:24:21,619 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 02:24:21" (1/1) ... [2022-04-27 14:24:21,619 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 02:24:21" (1/1) ... [2022-04-27 14:24:21,630 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 02:24:21" (1/1) ... [2022-04-27 14:24:21,633 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 02:24:21" (1/1) ... [2022-04-27 14:24:21,634 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 02:24:21" (1/1) ... [2022-04-27 14:24:21,635 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-27 14:24:21,635 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-27 14:24:21,635 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-27 14:24:21,635 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-27 14:24:21,639 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 02:24:21" (1/1) ... [2022-04-27 14:24:21,649 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 14:24:21,657 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 14:24:21,668 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 14:24:21,679 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 14:24:21,696 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-27 14:24:21,696 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-27 14:24:21,697 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-27 14:24:21,697 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-27 14:24:21,697 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-27 14:24:21,697 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-27 14:24:21,697 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-27 14:24:21,697 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-27 14:24:21,697 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-27 14:24:21,697 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-27 14:24:21,697 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-27 14:24:21,697 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-27 14:24:21,697 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-27 14:24:21,697 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-27 14:24:21,698 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-27 14:24:21,698 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-27 14:24:21,698 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-27 14:24:21,698 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-27 14:24:21,698 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-27 14:24:21,698 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-27 14:24:21,741 INFO L234 CfgBuilder]: Building ICFG [2022-04-27 14:24:21,742 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-27 14:24:21,861 INFO L275 CfgBuilder]: Performing block encoding [2022-04-27 14:24:21,865 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-27 14:24:21,865 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-27 14:24:21,866 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 02:24:21 BoogieIcfgContainer [2022-04-27 14:24:21,866 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-27 14:24:21,867 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-27 14:24:21,867 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-27 14:24:21,869 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-27 14:24:21,869 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.04 02:24:21" (1/3) ... [2022-04-27 14:24:21,870 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1532c27f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 02:24:21, skipping insertion in model container [2022-04-27 14:24:21,870 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 02:24:21" (2/3) ... [2022-04-27 14:24:21,870 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1532c27f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 02:24:21, skipping insertion in model container [2022-04-27 14:24:21,870 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 02:24:21" (3/3) ... [2022-04-27 14:24:21,871 INFO L111 eAbstractionObserver]: Analyzing ICFG prod4br-ll_unwindbound20.c [2022-04-27 14:24:21,882 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-27 14:24:21,882 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-27 14:24:21,914 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-27 14:24:21,922 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@7d32624c, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@14559c94 [2022-04-27 14:24:21,933 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-27 14:24:21,941 INFO L276 IsEmpty]: Start isEmpty. Operand has 32 states, 20 states have (on average 1.45) internal successors, (29), 21 states have internal predecessors, (29), 6 states have call successors, (6), 4 states have call predecessors, (6), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-27 14:24:21,945 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-27 14:24:21,945 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 14:24:21,946 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 14:24:21,946 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 14:24:21,949 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 14:24:21,949 INFO L85 PathProgramCache]: Analyzing trace with hash 1717894843, now seen corresponding path program 1 times [2022-04-27 14:24:21,955 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 14:24:21,955 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [226360964] [2022-04-27 14:24:21,955 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 14:24:21,956 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 14:24:22,023 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:24:22,090 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 14:24:22,105 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:24:22,124 INFO L290 TraceCheckUtils]: 0: Hoare triple {44#(and (= ~counter~0 |old(~counter~0)|) (= |#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {35#true} is VALID [2022-04-27 14:24:22,125 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume true; {35#true} is VALID [2022-04-27 14:24:22,125 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {35#true} {35#true} #77#return; {35#true} is VALID [2022-04-27 14:24:22,125 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-27 14:24:22,131 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:24:22,137 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-04-27 14:24:22,137 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-04-27 14:24:22,138 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} assume true; {36#false} is VALID [2022-04-27 14:24:22,138 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {35#true} #69#return; {36#false} is VALID [2022-04-27 14:24:22,139 INFO L272 TraceCheckUtils]: 0: Hoare triple {35#true} call ULTIMATE.init(); {44#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 14:24:22,140 INFO L290 TraceCheckUtils]: 1: Hoare triple {44#(and (= ~counter~0 |old(~counter~0)|) (= |#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {35#true} is VALID [2022-04-27 14:24:22,140 INFO L290 TraceCheckUtils]: 2: Hoare triple {35#true} assume true; {35#true} is VALID [2022-04-27 14:24:22,141 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {35#true} {35#true} #77#return; {35#true} is VALID [2022-04-27 14:24:22,142 INFO L272 TraceCheckUtils]: 4: Hoare triple {35#true} call #t~ret7 := main(); {35#true} is VALID [2022-04-27 14:24:22,143 INFO L290 TraceCheckUtils]: 5: Hoare triple {35#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {35#true} is VALID [2022-04-27 14:24:22,143 INFO L272 TraceCheckUtils]: 6: Hoare triple {35#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {35#true} is VALID [2022-04-27 14:24:22,143 INFO L290 TraceCheckUtils]: 7: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-04-27 14:24:22,143 INFO L290 TraceCheckUtils]: 8: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-04-27 14:24:22,144 INFO L290 TraceCheckUtils]: 9: Hoare triple {36#false} assume true; {36#false} is VALID [2022-04-27 14:24:22,144 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {36#false} {35#true} #69#return; {36#false} is VALID [2022-04-27 14:24:22,144 INFO L290 TraceCheckUtils]: 11: Hoare triple {36#false} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {36#false} is VALID [2022-04-27 14:24:22,145 INFO L290 TraceCheckUtils]: 12: Hoare triple {36#false} assume !true; {36#false} is VALID [2022-04-27 14:24:22,145 INFO L272 TraceCheckUtils]: 13: Hoare triple {36#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {36#false} is VALID [2022-04-27 14:24:22,145 INFO L290 TraceCheckUtils]: 14: Hoare triple {36#false} ~cond := #in~cond; {36#false} is VALID [2022-04-27 14:24:22,145 INFO L290 TraceCheckUtils]: 15: Hoare triple {36#false} assume 0 == ~cond; {36#false} is VALID [2022-04-27 14:24:22,145 INFO L290 TraceCheckUtils]: 16: Hoare triple {36#false} assume !false; {36#false} is VALID [2022-04-27 14:24:22,146 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 14:24:22,146 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 14:24:22,147 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [226360964] [2022-04-27 14:24:22,147 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [226360964] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 14:24:22,148 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 14:24:22,148 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-27 14:24:22,149 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1322244320] [2022-04-27 14:24:22,149 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 14:24:22,153 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-27 14:24:22,154 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 14:24:22,156 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 14:24:22,179 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 14:24:22,179 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-27 14:24:22,179 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 14:24:22,195 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-27 14:24:22,196 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-27 14:24:22,199 INFO L87 Difference]: Start difference. First operand has 32 states, 20 states have (on average 1.45) internal successors, (29), 21 states have internal predecessors, (29), 6 states have call successors, (6), 4 states have call predecessors, (6), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 14:24:22,336 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:24:22,337 INFO L93 Difference]: Finished difference Result 56 states and 77 transitions. [2022-04-27 14:24:22,337 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-27 14:24:22,337 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-27 14:24:22,338 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 14:24:22,339 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 14:24:22,346 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 77 transitions. [2022-04-27 14:24:22,346 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 14:24:22,349 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 77 transitions. [2022-04-27 14:24:22,349 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 77 transitions. [2022-04-27 14:24:22,413 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 14:24:22,419 INFO L225 Difference]: With dead ends: 56 [2022-04-27 14:24:22,419 INFO L226 Difference]: Without dead ends: 28 [2022-04-27 14:24:22,421 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 6 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 14:24:22,423 INFO L413 NwaCegarLoop]: 36 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 19 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 40 SdHoareTripleChecker+Invalid, 24 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 19 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 14:24:22,423 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [11 Valid, 40 Invalid, 24 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 19 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 14:24:22,433 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28 states. [2022-04-27 14:24:22,441 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28 to 27. [2022-04-27 14:24:22,441 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 14:24:22,441 INFO L82 GeneralOperation]: Start isEquivalent. First operand 28 states. Second operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 14:24:22,442 INFO L74 IsIncluded]: Start isIncluded. First operand 28 states. Second operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 14:24:22,442 INFO L87 Difference]: Start difference. First operand 28 states. Second operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 14:24:22,444 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:24:22,445 INFO L93 Difference]: Finished difference Result 28 states and 34 transitions. [2022-04-27 14:24:22,445 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 34 transitions. [2022-04-27 14:24:22,445 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 14:24:22,445 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 14:24:22,446 INFO L74 IsIncluded]: Start isIncluded. First operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 28 states. [2022-04-27 14:24:22,446 INFO L87 Difference]: Start difference. First operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 28 states. [2022-04-27 14:24:22,448 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:24:22,448 INFO L93 Difference]: Finished difference Result 28 states and 34 transitions. [2022-04-27 14:24:22,448 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 34 transitions. [2022-04-27 14:24:22,448 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 14:24:22,448 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 14:24:22,448 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 14:24:22,448 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 14:24:22,449 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 14:24:22,450 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 33 transitions. [2022-04-27 14:24:22,451 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 33 transitions. Word has length 17 [2022-04-27 14:24:22,451 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 14:24:22,451 INFO L495 AbstractCegarLoop]: Abstraction has 27 states and 33 transitions. [2022-04-27 14:24:22,451 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 14:24:22,451 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 33 transitions. [2022-04-27 14:24:22,452 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-27 14:24:22,452 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 14:24:22,452 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 14:24:22,452 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-27 14:24:22,452 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 14:24:22,453 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 14:24:22,453 INFO L85 PathProgramCache]: Analyzing trace with hash 444281082, now seen corresponding path program 1 times [2022-04-27 14:24:22,453 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 14:24:22,453 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1691324195] [2022-04-27 14:24:22,453 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 14:24:22,453 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 14:24:22,472 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 14:24:22,473 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [138122289] [2022-04-27 14:24:22,473 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 14:24:22,473 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 14:24:22,473 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 14:24:22,476 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 14:24:22,496 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 14:24:22,528 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:24:22,529 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-27 14:24:22,536 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:24:22,538 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 14:24:22,640 INFO L272 TraceCheckUtils]: 0: Hoare triple {214#true} call ULTIMATE.init(); {214#true} is VALID [2022-04-27 14:24:22,641 INFO L290 TraceCheckUtils]: 1: Hoare triple {214#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {222#(<= ~counter~0 0)} is VALID [2022-04-27 14:24:22,641 INFO L290 TraceCheckUtils]: 2: Hoare triple {222#(<= ~counter~0 0)} assume true; {222#(<= ~counter~0 0)} is VALID [2022-04-27 14:24:22,641 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {222#(<= ~counter~0 0)} {214#true} #77#return; {222#(<= ~counter~0 0)} is VALID [2022-04-27 14:24:22,642 INFO L272 TraceCheckUtils]: 4: Hoare triple {222#(<= ~counter~0 0)} call #t~ret7 := main(); {222#(<= ~counter~0 0)} is VALID [2022-04-27 14:24:22,642 INFO L290 TraceCheckUtils]: 5: Hoare triple {222#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {222#(<= ~counter~0 0)} is VALID [2022-04-27 14:24:22,643 INFO L272 TraceCheckUtils]: 6: Hoare triple {222#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {222#(<= ~counter~0 0)} is VALID [2022-04-27 14:24:22,643 INFO L290 TraceCheckUtils]: 7: Hoare triple {222#(<= ~counter~0 0)} ~cond := #in~cond; {222#(<= ~counter~0 0)} is VALID [2022-04-27 14:24:22,643 INFO L290 TraceCheckUtils]: 8: Hoare triple {222#(<= ~counter~0 0)} assume !(0 == ~cond); {222#(<= ~counter~0 0)} is VALID [2022-04-27 14:24:22,644 INFO L290 TraceCheckUtils]: 9: Hoare triple {222#(<= ~counter~0 0)} assume true; {222#(<= ~counter~0 0)} is VALID [2022-04-27 14:24:22,644 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {222#(<= ~counter~0 0)} {222#(<= ~counter~0 0)} #69#return; {222#(<= ~counter~0 0)} is VALID [2022-04-27 14:24:22,645 INFO L290 TraceCheckUtils]: 11: Hoare triple {222#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {222#(<= ~counter~0 0)} is VALID [2022-04-27 14:24:22,645 INFO L290 TraceCheckUtils]: 12: Hoare triple {222#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {256#(<= |main_#t~post6| 0)} is VALID [2022-04-27 14:24:22,645 INFO L290 TraceCheckUtils]: 13: Hoare triple {256#(<= |main_#t~post6| 0)} assume !(#t~post6 < 20);havoc #t~post6; {215#false} is VALID [2022-04-27 14:24:22,646 INFO L272 TraceCheckUtils]: 14: Hoare triple {215#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {215#false} is VALID [2022-04-27 14:24:22,646 INFO L290 TraceCheckUtils]: 15: Hoare triple {215#false} ~cond := #in~cond; {215#false} is VALID [2022-04-27 14:24:22,646 INFO L290 TraceCheckUtils]: 16: Hoare triple {215#false} assume 0 == ~cond; {215#false} is VALID [2022-04-27 14:24:22,646 INFO L290 TraceCheckUtils]: 17: Hoare triple {215#false} assume !false; {215#false} is VALID [2022-04-27 14:24:22,646 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 14:24:22,646 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 14:24:22,646 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 14:24:22,647 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1691324195] [2022-04-27 14:24:22,647 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 14:24:22,647 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [138122289] [2022-04-27 14:24:22,647 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [138122289] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 14:24:22,647 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 14:24:22,647 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-27 14:24:22,648 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1906741991] [2022-04-27 14:24:22,648 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 14:24:22,648 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-04-27 14:24:22,648 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 14:24:22,649 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-27 14:24:22,661 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 14:24:22,661 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-27 14:24:22,661 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 14:24:22,661 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-27 14:24:22,662 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-27 14:24:22,662 INFO L87 Difference]: Start difference. First operand 27 states and 33 transitions. Second operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-27 14:24:22,711 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:24:22,711 INFO L93 Difference]: Finished difference Result 37 states and 44 transitions. [2022-04-27 14:24:22,711 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-27 14:24:22,711 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-04-27 14:24:22,711 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 14:24:22,712 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-27 14:24:22,713 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 44 transitions. [2022-04-27 14:24:22,713 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-27 14:24:22,715 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 44 transitions. [2022-04-27 14:24:22,715 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 44 transitions. [2022-04-27 14:24:22,741 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 14:24:22,742 INFO L225 Difference]: With dead ends: 37 [2022-04-27 14:24:22,742 INFO L226 Difference]: Without dead ends: 29 [2022-04-27 14:24:22,742 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-27 14:24:22,743 INFO L413 NwaCegarLoop]: 31 mSDtfsCounter, 0 mSDsluCounter, 50 mSDsCounter, 0 mSdLazyCounter, 7 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 81 SdHoareTripleChecker+Invalid, 7 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 7 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 14:24:22,744 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 81 Invalid, 7 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 7 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 14:24:22,744 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2022-04-27 14:24:22,749 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 29. [2022-04-27 14:24:22,749 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 14:24:22,750 INFO L82 GeneralOperation]: Start isEquivalent. First operand 29 states. Second operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 14:24:22,750 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 14:24:22,750 INFO L87 Difference]: Start difference. First operand 29 states. Second operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 14:24:22,752 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:24:22,752 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2022-04-27 14:24:22,752 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-27 14:24:22,752 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 14:24:22,752 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 14:24:22,752 INFO L74 IsIncluded]: Start isIncluded. First operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 29 states. [2022-04-27 14:24:22,753 INFO L87 Difference]: Start difference. First operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 29 states. [2022-04-27 14:24:22,754 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:24:22,754 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2022-04-27 14:24:22,754 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-27 14:24:22,755 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 14:24:22,755 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 14:24:22,755 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 14:24:22,755 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 14:24:22,755 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 14:24:22,756 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 35 transitions. [2022-04-27 14:24:22,756 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 35 transitions. Word has length 18 [2022-04-27 14:24:22,756 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 14:24:22,756 INFO L495 AbstractCegarLoop]: Abstraction has 29 states and 35 transitions. [2022-04-27 14:24:22,757 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-27 14:24:22,757 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-27 14:24:22,757 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-27 14:24:22,757 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 14:24:22,757 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 14:24:22,775 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 14:24:22,971 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 14:24:22,972 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 14:24:22,972 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 14:24:22,972 INFO L85 PathProgramCache]: Analyzing trace with hash 446068542, now seen corresponding path program 1 times [2022-04-27 14:24:22,972 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 14:24:22,972 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [206729089] [2022-04-27 14:24:22,973 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 14:24:22,973 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 14:24:22,986 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 14:24:22,986 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2081407297] [2022-04-27 14:24:22,986 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 14:24:22,986 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 14:24:22,986 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 14:24:22,991 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 14:24:22,992 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 14:24:23,028 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:24:23,028 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-27 14:24:23,036 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:24:23,037 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 14:24:23,186 INFO L272 TraceCheckUtils]: 0: Hoare triple {422#true} call ULTIMATE.init(); {422#true} is VALID [2022-04-27 14:24:23,186 INFO L290 TraceCheckUtils]: 1: Hoare triple {422#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {422#true} is VALID [2022-04-27 14:24:23,186 INFO L290 TraceCheckUtils]: 2: Hoare triple {422#true} assume true; {422#true} is VALID [2022-04-27 14:24:23,186 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {422#true} {422#true} #77#return; {422#true} is VALID [2022-04-27 14:24:23,187 INFO L272 TraceCheckUtils]: 4: Hoare triple {422#true} call #t~ret7 := main(); {422#true} is VALID [2022-04-27 14:24:23,187 INFO L290 TraceCheckUtils]: 5: Hoare triple {422#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {422#true} is VALID [2022-04-27 14:24:23,187 INFO L272 TraceCheckUtils]: 6: Hoare triple {422#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {422#true} is VALID [2022-04-27 14:24:23,187 INFO L290 TraceCheckUtils]: 7: Hoare triple {422#true} ~cond := #in~cond; {422#true} is VALID [2022-04-27 14:24:23,187 INFO L290 TraceCheckUtils]: 8: Hoare triple {422#true} assume !(0 == ~cond); {422#true} is VALID [2022-04-27 14:24:23,187 INFO L290 TraceCheckUtils]: 9: Hoare triple {422#true} assume true; {422#true} is VALID [2022-04-27 14:24:23,187 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {422#true} {422#true} #69#return; {422#true} is VALID [2022-04-27 14:24:23,191 INFO L290 TraceCheckUtils]: 11: Hoare triple {422#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {460#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 14:24:23,192 INFO L290 TraceCheckUtils]: 12: Hoare triple {460#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {460#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 14:24:23,193 INFO L290 TraceCheckUtils]: 13: Hoare triple {460#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {460#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 14:24:23,193 INFO L272 TraceCheckUtils]: 14: Hoare triple {460#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {470#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 14:24:23,194 INFO L290 TraceCheckUtils]: 15: Hoare triple {470#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {474#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 14:24:23,194 INFO L290 TraceCheckUtils]: 16: Hoare triple {474#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {423#false} is VALID [2022-04-27 14:24:23,194 INFO L290 TraceCheckUtils]: 17: Hoare triple {423#false} assume !false; {423#false} is VALID [2022-04-27 14:24:23,194 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 14:24:23,195 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 14:24:23,195 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 14:24:23,195 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [206729089] [2022-04-27 14:24:23,195 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 14:24:23,195 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2081407297] [2022-04-27 14:24:23,195 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2081407297] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 14:24:23,195 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 14:24:23,195 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 14:24:23,195 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [842374752] [2022-04-27 14:24:23,196 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 14:24:23,198 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-27 14:24:23,198 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 14:24:23,198 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 14:24:23,226 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 14:24:23,227 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 14:24:23,227 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 14:24:23,227 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 14:24:23,228 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 14:24:23,228 INFO L87 Difference]: Start difference. First operand 29 states and 35 transitions. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 14:24:23,391 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:24:23,392 INFO L93 Difference]: Finished difference Result 42 states and 53 transitions. [2022-04-27 14:24:23,392 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 14:24:23,392 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-27 14:24:23,393 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 14:24:23,393 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 14:24:23,396 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 53 transitions. [2022-04-27 14:24:23,396 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 14:24:23,400 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 53 transitions. [2022-04-27 14:24:23,400 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 53 transitions. [2022-04-27 14:24:23,441 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 14:24:23,446 INFO L225 Difference]: With dead ends: 42 [2022-04-27 14:24:23,446 INFO L226 Difference]: Without dead ends: 40 [2022-04-27 14:24:23,446 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 14 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-27 14:24:23,448 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 9 mSDsluCounter, 59 mSDsCounter, 0 mSdLazyCounter, 54 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 83 SdHoareTripleChecker+Invalid, 54 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 54 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 14:24:23,448 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [11 Valid, 83 Invalid, 54 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 54 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 14:24:23,449 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2022-04-27 14:24:23,460 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 34. [2022-04-27 14:24:23,461 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 14:24:23,461 INFO L82 GeneralOperation]: Start isEquivalent. First operand 40 states. Second operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-27 14:24:23,461 INFO L74 IsIncluded]: Start isIncluded. First operand 40 states. Second operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-27 14:24:23,461 INFO L87 Difference]: Start difference. First operand 40 states. Second operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-27 14:24:23,464 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:24:23,464 INFO L93 Difference]: Finished difference Result 40 states and 51 transitions. [2022-04-27 14:24:23,464 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 51 transitions. [2022-04-27 14:24:23,464 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 14:24:23,464 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 14:24:23,465 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) Second operand 40 states. [2022-04-27 14:24:23,465 INFO L87 Difference]: Start difference. First operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) Second operand 40 states. [2022-04-27 14:24:23,471 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:24:23,471 INFO L93 Difference]: Finished difference Result 40 states and 51 transitions. [2022-04-27 14:24:23,471 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 51 transitions. [2022-04-27 14:24:23,472 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 14:24:23,472 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 14:24:23,472 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 14:24:23,472 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 14:24:23,472 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-27 14:24:23,473 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 40 transitions. [2022-04-27 14:24:23,473 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 40 transitions. Word has length 18 [2022-04-27 14:24:23,474 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 14:24:23,474 INFO L495 AbstractCegarLoop]: Abstraction has 34 states and 40 transitions. [2022-04-27 14:24:23,474 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 14:24:23,474 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 40 transitions. [2022-04-27 14:24:23,474 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-04-27 14:24:23,474 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 14:24:23,475 INFO L195 NwaCegarLoop]: trace histogram [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 14:24:23,490 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-27 14:24:23,683 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 14:24:23,683 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 14:24:23,684 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 14:24:23,684 INFO L85 PathProgramCache]: Analyzing trace with hash -1308579644, now seen corresponding path program 1 times [2022-04-27 14:24:23,684 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 14:24:23,684 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1169544724] [2022-04-27 14:24:23,684 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 14:24:23,684 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 14:24:23,705 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 14:24:23,705 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1282174144] [2022-04-27 14:24:23,705 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 14:24:23,706 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 14:24:23,706 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 14:24:23,711 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 14:24:23,712 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 14:24:23,742 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:24:23,743 INFO L263 TraceCheckSpWp]: Trace formula consists of 96 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-27 14:24:23,751 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:24:23,752 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 14:24:31,527 INFO L272 TraceCheckUtils]: 0: Hoare triple {668#true} call ULTIMATE.init(); {668#true} is VALID [2022-04-27 14:24:31,527 INFO L290 TraceCheckUtils]: 1: Hoare triple {668#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {668#true} is VALID [2022-04-27 14:24:31,527 INFO L290 TraceCheckUtils]: 2: Hoare triple {668#true} assume true; {668#true} is VALID [2022-04-27 14:24:31,527 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {668#true} {668#true} #77#return; {668#true} is VALID [2022-04-27 14:24:31,528 INFO L272 TraceCheckUtils]: 4: Hoare triple {668#true} call #t~ret7 := main(); {668#true} is VALID [2022-04-27 14:24:31,528 INFO L290 TraceCheckUtils]: 5: Hoare triple {668#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {668#true} is VALID [2022-04-27 14:24:31,528 INFO L272 TraceCheckUtils]: 6: Hoare triple {668#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {668#true} is VALID [2022-04-27 14:24:31,528 INFO L290 TraceCheckUtils]: 7: Hoare triple {668#true} ~cond := #in~cond; {694#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 14:24:31,529 INFO L290 TraceCheckUtils]: 8: Hoare triple {694#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {698#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 14:24:31,529 INFO L290 TraceCheckUtils]: 9: Hoare triple {698#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {698#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 14:24:31,529 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {698#(not (= |assume_abort_if_not_#in~cond| 0))} {668#true} #69#return; {705#(<= 1 main_~y~0)} is VALID [2022-04-27 14:24:31,530 INFO L290 TraceCheckUtils]: 11: Hoare triple {705#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {709#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is VALID [2022-04-27 14:24:31,530 INFO L290 TraceCheckUtils]: 12: Hoare triple {709#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {709#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is VALID [2022-04-27 14:24:31,531 INFO L290 TraceCheckUtils]: 13: Hoare triple {709#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} assume !!(#t~post6 < 20);havoc #t~post6; {709#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is VALID [2022-04-27 14:24:31,531 INFO L272 TraceCheckUtils]: 14: Hoare triple {709#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {668#true} is VALID [2022-04-27 14:24:31,531 INFO L290 TraceCheckUtils]: 15: Hoare triple {668#true} ~cond := #in~cond; {722#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 14:24:31,532 INFO L290 TraceCheckUtils]: 16: Hoare triple {722#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {726#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 14:24:31,532 INFO L290 TraceCheckUtils]: 17: Hoare triple {726#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {726#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 14:24:33,544 WARN L284 TraceCheckUtils]: 18: Hoare quadruple {726#(not (= |__VERIFIER_assert_#in~cond| 0))} {709#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} #71#return; {733#(and (or (and (= (mod (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) (* main_~b~0 main_~a~0)) 0) (not (= main_~a~0 0))) (= (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) 0)) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is UNKNOWN [2022-04-27 14:24:33,545 INFO L290 TraceCheckUtils]: 19: Hoare triple {733#(and (or (and (= (mod (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) (* main_~b~0 main_~a~0)) 0) (not (= main_~a~0 0))) (= (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) 0)) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} assume !(0 != ~a~0 && 0 != ~b~0); {737#(and (= main_~q~0 (* main_~y~0 main_~x~0)) (<= 1 main_~y~0))} is VALID [2022-04-27 14:24:33,546 INFO L272 TraceCheckUtils]: 20: Hoare triple {737#(and (= main_~q~0 (* main_~y~0 main_~x~0)) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {741#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 14:24:33,546 INFO L290 TraceCheckUtils]: 21: Hoare triple {741#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {745#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 14:24:33,547 INFO L290 TraceCheckUtils]: 22: Hoare triple {745#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {669#false} is VALID [2022-04-27 14:24:33,547 INFO L290 TraceCheckUtils]: 23: Hoare triple {669#false} assume !false; {669#false} is VALID [2022-04-27 14:24:33,547 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 14:24:33,547 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 14:25:10,871 INFO L290 TraceCheckUtils]: 23: Hoare triple {669#false} assume !false; {669#false} is VALID [2022-04-27 14:25:10,872 INFO L290 TraceCheckUtils]: 22: Hoare triple {745#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {669#false} is VALID [2022-04-27 14:25:10,872 INFO L290 TraceCheckUtils]: 21: Hoare triple {741#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {745#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 14:25:10,873 INFO L272 TraceCheckUtils]: 20: Hoare triple {761#(= main_~q~0 (* main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {741#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 14:25:10,873 INFO L290 TraceCheckUtils]: 19: Hoare triple {765#(or (= main_~q~0 (* main_~y~0 main_~x~0)) (and (not (= main_~b~0 0)) (not (= main_~a~0 0))))} assume !(0 != ~a~0 && 0 != ~b~0); {761#(= main_~q~0 (* main_~y~0 main_~x~0))} is VALID [2022-04-27 14:25:10,875 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {726#(not (= |__VERIFIER_assert_#in~cond| 0))} {668#true} #71#return; {765#(or (= main_~q~0 (* main_~y~0 main_~x~0)) (and (not (= main_~b~0 0)) (not (= main_~a~0 0))))} is VALID [2022-04-27 14:25:10,875 INFO L290 TraceCheckUtils]: 17: Hoare triple {726#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {726#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 14:25:10,876 INFO L290 TraceCheckUtils]: 16: Hoare triple {778#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {726#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 14:25:10,876 INFO L290 TraceCheckUtils]: 15: Hoare triple {668#true} ~cond := #in~cond; {778#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 14:25:10,876 INFO L272 TraceCheckUtils]: 14: Hoare triple {668#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {668#true} is VALID [2022-04-27 14:25:10,876 INFO L290 TraceCheckUtils]: 13: Hoare triple {668#true} assume !!(#t~post6 < 20);havoc #t~post6; {668#true} is VALID [2022-04-27 14:25:10,877 INFO L290 TraceCheckUtils]: 12: Hoare triple {668#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {668#true} is VALID [2022-04-27 14:25:10,877 INFO L290 TraceCheckUtils]: 11: Hoare triple {668#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {668#true} is VALID [2022-04-27 14:25:10,877 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {668#true} {668#true} #69#return; {668#true} is VALID [2022-04-27 14:25:10,877 INFO L290 TraceCheckUtils]: 9: Hoare triple {668#true} assume true; {668#true} is VALID [2022-04-27 14:25:10,877 INFO L290 TraceCheckUtils]: 8: Hoare triple {668#true} assume !(0 == ~cond); {668#true} is VALID [2022-04-27 14:25:10,877 INFO L290 TraceCheckUtils]: 7: Hoare triple {668#true} ~cond := #in~cond; {668#true} is VALID [2022-04-27 14:25:10,877 INFO L272 TraceCheckUtils]: 6: Hoare triple {668#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {668#true} is VALID [2022-04-27 14:25:10,877 INFO L290 TraceCheckUtils]: 5: Hoare triple {668#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {668#true} is VALID [2022-04-27 14:25:10,878 INFO L272 TraceCheckUtils]: 4: Hoare triple {668#true} call #t~ret7 := main(); {668#true} is VALID [2022-04-27 14:25:10,878 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {668#true} {668#true} #77#return; {668#true} is VALID [2022-04-27 14:25:10,878 INFO L290 TraceCheckUtils]: 2: Hoare triple {668#true} assume true; {668#true} is VALID [2022-04-27 14:25:10,878 INFO L290 TraceCheckUtils]: 1: Hoare triple {668#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {668#true} is VALID [2022-04-27 14:25:10,878 INFO L272 TraceCheckUtils]: 0: Hoare triple {668#true} call ULTIMATE.init(); {668#true} is VALID [2022-04-27 14:25:10,878 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 14:25:10,878 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 14:25:10,878 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1169544724] [2022-04-27 14:25:10,878 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 14:25:10,879 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1282174144] [2022-04-27 14:25:10,879 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1282174144] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 14:25:10,879 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 14:25:10,879 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 8] total 15 [2022-04-27 14:25:10,879 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [185302051] [2022-04-27 14:25:10,879 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 14:25:10,879 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 13 states have (on average 1.9230769230769231) internal successors, (25), 11 states have internal predecessors, (25), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) Word has length 24 [2022-04-27 14:25:10,880 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 14:25:10,880 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 13 states have (on average 1.9230769230769231) internal successors, (25), 11 states have internal predecessors, (25), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 14:25:12,909 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 36 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-27 14:25:12,910 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-27 14:25:12,910 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 14:25:12,910 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-27 14:25:12,910 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=39, Invalid=171, Unknown=0, NotChecked=0, Total=210 [2022-04-27 14:25:12,911 INFO L87 Difference]: Start difference. First operand 34 states and 40 transitions. Second operand has 15 states, 13 states have (on average 1.9230769230769231) internal successors, (25), 11 states have internal predecessors, (25), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 14:25:17,025 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:25:17,025 INFO L93 Difference]: Finished difference Result 55 states and 72 transitions. [2022-04-27 14:25:17,025 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-27 14:25:17,026 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 13 states have (on average 1.9230769230769231) internal successors, (25), 11 states have internal predecessors, (25), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) Word has length 24 [2022-04-27 14:25:17,026 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 14:25:17,026 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 13 states have (on average 1.9230769230769231) internal successors, (25), 11 states have internal predecessors, (25), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 14:25:17,028 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 69 transitions. [2022-04-27 14:25:17,028 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 13 states have (on average 1.9230769230769231) internal successors, (25), 11 states have internal predecessors, (25), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 14:25:17,030 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 69 transitions. [2022-04-27 14:25:17,030 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 69 transitions. [2022-04-27 14:25:19,090 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 68 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-27 14:25:19,091 INFO L225 Difference]: With dead ends: 55 [2022-04-27 14:25:19,091 INFO L226 Difference]: Without dead ends: 53 [2022-04-27 14:25:19,092 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 53 GetRequests, 34 SyntacticMatches, 1 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 52 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=71, Invalid=309, Unknown=0, NotChecked=0, Total=380 [2022-04-27 14:25:19,092 INFO L413 NwaCegarLoop]: 20 mSDtfsCounter, 51 mSDsluCounter, 103 mSDsCounter, 0 mSdLazyCounter, 199 mSolverCounterSat, 31 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 55 SdHoareTripleChecker+Valid, 123 SdHoareTripleChecker+Invalid, 230 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 31 IncrementalHoareTripleChecker+Valid, 199 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.9s IncrementalHoareTripleChecker+Time [2022-04-27 14:25:19,092 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [55 Valid, 123 Invalid, 230 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [31 Valid, 199 Invalid, 0 Unknown, 0 Unchecked, 1.9s Time] [2022-04-27 14:25:19,093 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 53 states. [2022-04-27 14:25:19,106 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 53 to 39. [2022-04-27 14:25:19,106 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 14:25:19,106 INFO L82 GeneralOperation]: Start isEquivalent. First operand 53 states. Second operand has 39 states, 25 states have (on average 1.24) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-27 14:25:19,107 INFO L74 IsIncluded]: Start isIncluded. First operand 53 states. Second operand has 39 states, 25 states have (on average 1.24) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-27 14:25:19,107 INFO L87 Difference]: Start difference. First operand 53 states. Second operand has 39 states, 25 states have (on average 1.24) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-27 14:25:19,109 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:25:19,109 INFO L93 Difference]: Finished difference Result 53 states and 70 transitions. [2022-04-27 14:25:19,109 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 70 transitions. [2022-04-27 14:25:19,110 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 14:25:19,110 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 14:25:19,110 INFO L74 IsIncluded]: Start isIncluded. First operand has 39 states, 25 states have (on average 1.24) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) Second operand 53 states. [2022-04-27 14:25:19,110 INFO L87 Difference]: Start difference. First operand has 39 states, 25 states have (on average 1.24) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) Second operand 53 states. [2022-04-27 14:25:19,112 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:25:19,112 INFO L93 Difference]: Finished difference Result 53 states and 70 transitions. [2022-04-27 14:25:19,112 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 70 transitions. [2022-04-27 14:25:19,113 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 14:25:19,113 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 14:25:19,113 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 14:25:19,113 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 14:25:19,113 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 39 states, 25 states have (on average 1.24) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-27 14:25:19,114 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 39 states to 39 states and 45 transitions. [2022-04-27 14:25:19,114 INFO L78 Accepts]: Start accepts. Automaton has 39 states and 45 transitions. Word has length 24 [2022-04-27 14:25:19,114 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 14:25:19,115 INFO L495 AbstractCegarLoop]: Abstraction has 39 states and 45 transitions. [2022-04-27 14:25:19,115 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 13 states have (on average 1.9230769230769231) internal successors, (25), 11 states have internal predecessors, (25), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 14:25:19,115 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 45 transitions. [2022-04-27 14:25:19,115 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-04-27 14:25:19,115 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 14:25:19,115 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 14:25:19,134 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 14:25:19,316 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 14:25:19,316 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 14:25:19,316 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 14:25:19,316 INFO L85 PathProgramCache]: Analyzing trace with hash 1797927234, now seen corresponding path program 1 times [2022-04-27 14:25:19,317 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 14:25:19,317 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1660340561] [2022-04-27 14:25:19,317 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 14:25:19,317 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 14:25:19,334 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 14:25:19,334 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [60910811] [2022-04-27 14:25:19,335 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 14:25:19,335 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 14:25:19,335 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 14:25:19,335 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 14:25:19,343 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 14:25:19,374 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:25:19,375 INFO L263 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 14:25:19,381 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:25:19,382 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 14:25:19,490 INFO L272 TraceCheckUtils]: 0: Hoare triple {1077#true} call ULTIMATE.init(); {1077#true} is VALID [2022-04-27 14:25:19,490 INFO L290 TraceCheckUtils]: 1: Hoare triple {1077#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1085#(<= ~counter~0 0)} is VALID [2022-04-27 14:25:19,491 INFO L290 TraceCheckUtils]: 2: Hoare triple {1085#(<= ~counter~0 0)} assume true; {1085#(<= ~counter~0 0)} is VALID [2022-04-27 14:25:19,491 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1085#(<= ~counter~0 0)} {1077#true} #77#return; {1085#(<= ~counter~0 0)} is VALID [2022-04-27 14:25:19,492 INFO L272 TraceCheckUtils]: 4: Hoare triple {1085#(<= ~counter~0 0)} call #t~ret7 := main(); {1085#(<= ~counter~0 0)} is VALID [2022-04-27 14:25:19,492 INFO L290 TraceCheckUtils]: 5: Hoare triple {1085#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1085#(<= ~counter~0 0)} is VALID [2022-04-27 14:25:19,493 INFO L272 TraceCheckUtils]: 6: Hoare triple {1085#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1085#(<= ~counter~0 0)} is VALID [2022-04-27 14:25:19,494 INFO L290 TraceCheckUtils]: 7: Hoare triple {1085#(<= ~counter~0 0)} ~cond := #in~cond; {1085#(<= ~counter~0 0)} is VALID [2022-04-27 14:25:19,494 INFO L290 TraceCheckUtils]: 8: Hoare triple {1085#(<= ~counter~0 0)} assume !(0 == ~cond); {1085#(<= ~counter~0 0)} is VALID [2022-04-27 14:25:19,495 INFO L290 TraceCheckUtils]: 9: Hoare triple {1085#(<= ~counter~0 0)} assume true; {1085#(<= ~counter~0 0)} is VALID [2022-04-27 14:25:19,495 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1085#(<= ~counter~0 0)} {1085#(<= ~counter~0 0)} #69#return; {1085#(<= ~counter~0 0)} is VALID [2022-04-27 14:25:19,496 INFO L290 TraceCheckUtils]: 11: Hoare triple {1085#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {1085#(<= ~counter~0 0)} is VALID [2022-04-27 14:25:19,496 INFO L290 TraceCheckUtils]: 12: Hoare triple {1085#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1119#(<= ~counter~0 1)} is VALID [2022-04-27 14:25:19,496 INFO L290 TraceCheckUtils]: 13: Hoare triple {1119#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {1119#(<= ~counter~0 1)} is VALID [2022-04-27 14:25:19,497 INFO L272 TraceCheckUtils]: 14: Hoare triple {1119#(<= ~counter~0 1)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1119#(<= ~counter~0 1)} is VALID [2022-04-27 14:25:19,498 INFO L290 TraceCheckUtils]: 15: Hoare triple {1119#(<= ~counter~0 1)} ~cond := #in~cond; {1119#(<= ~counter~0 1)} is VALID [2022-04-27 14:25:19,498 INFO L290 TraceCheckUtils]: 16: Hoare triple {1119#(<= ~counter~0 1)} assume !(0 == ~cond); {1119#(<= ~counter~0 1)} is VALID [2022-04-27 14:25:19,498 INFO L290 TraceCheckUtils]: 17: Hoare triple {1119#(<= ~counter~0 1)} assume true; {1119#(<= ~counter~0 1)} is VALID [2022-04-27 14:25:19,508 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1119#(<= ~counter~0 1)} {1119#(<= ~counter~0 1)} #71#return; {1119#(<= ~counter~0 1)} is VALID [2022-04-27 14:25:19,509 INFO L290 TraceCheckUtils]: 19: Hoare triple {1119#(<= ~counter~0 1)} assume !!(0 != ~a~0 && 0 != ~b~0); {1119#(<= ~counter~0 1)} is VALID [2022-04-27 14:25:19,509 INFO L290 TraceCheckUtils]: 20: Hoare triple {1119#(<= ~counter~0 1)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {1119#(<= ~counter~0 1)} is VALID [2022-04-27 14:25:19,509 INFO L290 TraceCheckUtils]: 21: Hoare triple {1119#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1147#(<= |main_#t~post6| 1)} is VALID [2022-04-27 14:25:19,510 INFO L290 TraceCheckUtils]: 22: Hoare triple {1147#(<= |main_#t~post6| 1)} assume !(#t~post6 < 20);havoc #t~post6; {1078#false} is VALID [2022-04-27 14:25:19,510 INFO L272 TraceCheckUtils]: 23: Hoare triple {1078#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {1078#false} is VALID [2022-04-27 14:25:19,510 INFO L290 TraceCheckUtils]: 24: Hoare triple {1078#false} ~cond := #in~cond; {1078#false} is VALID [2022-04-27 14:25:19,510 INFO L290 TraceCheckUtils]: 25: Hoare triple {1078#false} assume 0 == ~cond; {1078#false} is VALID [2022-04-27 14:25:19,510 INFO L290 TraceCheckUtils]: 26: Hoare triple {1078#false} assume !false; {1078#false} is VALID [2022-04-27 14:25:19,510 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 14:25:19,510 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 14:25:19,644 INFO L290 TraceCheckUtils]: 26: Hoare triple {1078#false} assume !false; {1078#false} is VALID [2022-04-27 14:25:19,644 INFO L290 TraceCheckUtils]: 25: Hoare triple {1078#false} assume 0 == ~cond; {1078#false} is VALID [2022-04-27 14:25:19,644 INFO L290 TraceCheckUtils]: 24: Hoare triple {1078#false} ~cond := #in~cond; {1078#false} is VALID [2022-04-27 14:25:19,644 INFO L272 TraceCheckUtils]: 23: Hoare triple {1078#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {1078#false} is VALID [2022-04-27 14:25:19,644 INFO L290 TraceCheckUtils]: 22: Hoare triple {1175#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {1078#false} is VALID [2022-04-27 14:25:19,645 INFO L290 TraceCheckUtils]: 21: Hoare triple {1179#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1175#(< |main_#t~post6| 20)} is VALID [2022-04-27 14:25:19,645 INFO L290 TraceCheckUtils]: 20: Hoare triple {1179#(< ~counter~0 20)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {1179#(< ~counter~0 20)} is VALID [2022-04-27 14:25:19,645 INFO L290 TraceCheckUtils]: 19: Hoare triple {1179#(< ~counter~0 20)} assume !!(0 != ~a~0 && 0 != ~b~0); {1179#(< ~counter~0 20)} is VALID [2022-04-27 14:25:19,646 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1077#true} {1179#(< ~counter~0 20)} #71#return; {1179#(< ~counter~0 20)} is VALID [2022-04-27 14:25:19,646 INFO L290 TraceCheckUtils]: 17: Hoare triple {1077#true} assume true; {1077#true} is VALID [2022-04-27 14:25:19,646 INFO L290 TraceCheckUtils]: 16: Hoare triple {1077#true} assume !(0 == ~cond); {1077#true} is VALID [2022-04-27 14:25:19,646 INFO L290 TraceCheckUtils]: 15: Hoare triple {1077#true} ~cond := #in~cond; {1077#true} is VALID [2022-04-27 14:25:19,647 INFO L272 TraceCheckUtils]: 14: Hoare triple {1179#(< ~counter~0 20)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1077#true} is VALID [2022-04-27 14:25:19,647 INFO L290 TraceCheckUtils]: 13: Hoare triple {1179#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {1179#(< ~counter~0 20)} is VALID [2022-04-27 14:25:19,647 INFO L290 TraceCheckUtils]: 12: Hoare triple {1207#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1179#(< ~counter~0 20)} is VALID [2022-04-27 14:25:19,648 INFO L290 TraceCheckUtils]: 11: Hoare triple {1207#(< ~counter~0 19)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {1207#(< ~counter~0 19)} is VALID [2022-04-27 14:25:19,648 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1077#true} {1207#(< ~counter~0 19)} #69#return; {1207#(< ~counter~0 19)} is VALID [2022-04-27 14:25:19,648 INFO L290 TraceCheckUtils]: 9: Hoare triple {1077#true} assume true; {1077#true} is VALID [2022-04-27 14:25:19,648 INFO L290 TraceCheckUtils]: 8: Hoare triple {1077#true} assume !(0 == ~cond); {1077#true} is VALID [2022-04-27 14:25:19,648 INFO L290 TraceCheckUtils]: 7: Hoare triple {1077#true} ~cond := #in~cond; {1077#true} is VALID [2022-04-27 14:25:19,648 INFO L272 TraceCheckUtils]: 6: Hoare triple {1207#(< ~counter~0 19)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1077#true} is VALID [2022-04-27 14:25:19,649 INFO L290 TraceCheckUtils]: 5: Hoare triple {1207#(< ~counter~0 19)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1207#(< ~counter~0 19)} is VALID [2022-04-27 14:25:19,649 INFO L272 TraceCheckUtils]: 4: Hoare triple {1207#(< ~counter~0 19)} call #t~ret7 := main(); {1207#(< ~counter~0 19)} is VALID [2022-04-27 14:25:19,649 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1207#(< ~counter~0 19)} {1077#true} #77#return; {1207#(< ~counter~0 19)} is VALID [2022-04-27 14:25:19,650 INFO L290 TraceCheckUtils]: 2: Hoare triple {1207#(< ~counter~0 19)} assume true; {1207#(< ~counter~0 19)} is VALID [2022-04-27 14:25:19,650 INFO L290 TraceCheckUtils]: 1: Hoare triple {1077#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1207#(< ~counter~0 19)} is VALID [2022-04-27 14:25:19,650 INFO L272 TraceCheckUtils]: 0: Hoare triple {1077#true} call ULTIMATE.init(); {1077#true} is VALID [2022-04-27 14:25:19,650 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 14:25:19,650 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 14:25:19,651 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1660340561] [2022-04-27 14:25:19,651 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 14:25:19,651 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [60910811] [2022-04-27 14:25:19,651 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [60910811] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 14:25:19,651 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 14:25:19,651 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-27 14:25:19,651 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1978461716] [2022-04-27 14:25:19,651 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 14:25:19,652 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) Word has length 27 [2022-04-27 14:25:19,652 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 14:25:19,652 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-27 14:25:19,685 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 14:25:19,686 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-27 14:25:19,686 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 14:25:19,686 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-27 14:25:19,686 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-27 14:25:19,686 INFO L87 Difference]: Start difference. First operand 39 states and 45 transitions. Second operand has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-27 14:25:19,929 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:25:19,930 INFO L93 Difference]: Finished difference Result 103 states and 123 transitions. [2022-04-27 14:25:19,930 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-27 14:25:19,930 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) Word has length 27 [2022-04-27 14:25:19,930 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 14:25:19,930 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-27 14:25:19,932 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 106 transitions. [2022-04-27 14:25:19,932 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-27 14:25:19,934 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 106 transitions. [2022-04-27 14:25:19,934 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 106 transitions. [2022-04-27 14:25:20,001 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 106 edges. 106 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 14:25:20,003 INFO L225 Difference]: With dead ends: 103 [2022-04-27 14:25:20,003 INFO L226 Difference]: Without dead ends: 93 [2022-04-27 14:25:20,003 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 56 GetRequests, 47 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=40, Invalid=70, Unknown=0, NotChecked=0, Total=110 [2022-04-27 14:25:20,004 INFO L413 NwaCegarLoop]: 39 mSDtfsCounter, 55 mSDsluCounter, 143 mSDsCounter, 0 mSdLazyCounter, 33 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 55 SdHoareTripleChecker+Valid, 182 SdHoareTripleChecker+Invalid, 44 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 33 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 14:25:20,004 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [55 Valid, 182 Invalid, 44 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 33 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 14:25:20,004 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 93 states. [2022-04-27 14:25:20,040 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 93 to 87. [2022-04-27 14:25:20,040 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 14:25:20,040 INFO L82 GeneralOperation]: Start isEquivalent. First operand 93 states. Second operand has 87 states, 60 states have (on average 1.3333333333333333) internal successors, (80), 64 states have internal predecessors, (80), 16 states have call successors, (16), 12 states have call predecessors, (16), 10 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-27 14:25:20,040 INFO L74 IsIncluded]: Start isIncluded. First operand 93 states. Second operand has 87 states, 60 states have (on average 1.3333333333333333) internal successors, (80), 64 states have internal predecessors, (80), 16 states have call successors, (16), 12 states have call predecessors, (16), 10 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-27 14:25:20,041 INFO L87 Difference]: Start difference. First operand 93 states. Second operand has 87 states, 60 states have (on average 1.3333333333333333) internal successors, (80), 64 states have internal predecessors, (80), 16 states have call successors, (16), 12 states have call predecessors, (16), 10 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-27 14:25:20,043 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:25:20,043 INFO L93 Difference]: Finished difference Result 93 states and 110 transitions. [2022-04-27 14:25:20,043 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 110 transitions. [2022-04-27 14:25:20,044 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 14:25:20,044 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 14:25:20,044 INFO L74 IsIncluded]: Start isIncluded. First operand has 87 states, 60 states have (on average 1.3333333333333333) internal successors, (80), 64 states have internal predecessors, (80), 16 states have call successors, (16), 12 states have call predecessors, (16), 10 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) Second operand 93 states. [2022-04-27 14:25:20,044 INFO L87 Difference]: Start difference. First operand has 87 states, 60 states have (on average 1.3333333333333333) internal successors, (80), 64 states have internal predecessors, (80), 16 states have call successors, (16), 12 states have call predecessors, (16), 10 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) Second operand 93 states. [2022-04-27 14:25:20,048 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:25:20,048 INFO L93 Difference]: Finished difference Result 93 states and 110 transitions. [2022-04-27 14:25:20,048 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 110 transitions. [2022-04-27 14:25:20,048 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 14:25:20,048 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 14:25:20,048 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 14:25:20,048 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 14:25:20,049 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 87 states, 60 states have (on average 1.3333333333333333) internal successors, (80), 64 states have internal predecessors, (80), 16 states have call successors, (16), 12 states have call predecessors, (16), 10 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-27 14:25:20,053 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 87 states to 87 states and 107 transitions. [2022-04-27 14:25:20,053 INFO L78 Accepts]: Start accepts. Automaton has 87 states and 107 transitions. Word has length 27 [2022-04-27 14:25:20,053 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 14:25:20,053 INFO L495 AbstractCegarLoop]: Abstraction has 87 states and 107 transitions. [2022-04-27 14:25:20,053 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 4 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-27 14:25:20,053 INFO L276 IsEmpty]: Start isEmpty. Operand 87 states and 107 transitions. [2022-04-27 14:25:20,053 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-04-27 14:25:20,053 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 14:25:20,054 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 14:25:20,077 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 14:25:20,264 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 14:25:20,265 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 14:25:20,265 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 14:25:20,265 INFO L85 PathProgramCache]: Analyzing trace with hash 1799714694, now seen corresponding path program 1 times [2022-04-27 14:25:20,265 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 14:25:20,265 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [852961419] [2022-04-27 14:25:20,265 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 14:25:20,265 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 14:25:20,275 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 14:25:20,275 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [392049892] [2022-04-27 14:25:20,275 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 14:25:20,275 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 14:25:20,275 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 14:25:20,276 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 14:25:20,277 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 14:25:20,323 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:25:20,324 INFO L263 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 34 conjunts are in the unsatisfiable core [2022-04-27 14:25:20,335 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:25:20,336 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 14:25:21,744 INFO L272 TraceCheckUtils]: 0: Hoare triple {1697#true} call ULTIMATE.init(); {1697#true} is VALID [2022-04-27 14:25:21,744 INFO L290 TraceCheckUtils]: 1: Hoare triple {1697#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1697#true} is VALID [2022-04-27 14:25:21,744 INFO L290 TraceCheckUtils]: 2: Hoare triple {1697#true} assume true; {1697#true} is VALID [2022-04-27 14:25:21,744 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1697#true} {1697#true} #77#return; {1697#true} is VALID [2022-04-27 14:25:21,744 INFO L272 TraceCheckUtils]: 4: Hoare triple {1697#true} call #t~ret7 := main(); {1697#true} is VALID [2022-04-27 14:25:21,744 INFO L290 TraceCheckUtils]: 5: Hoare triple {1697#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1697#true} is VALID [2022-04-27 14:25:21,744 INFO L272 TraceCheckUtils]: 6: Hoare triple {1697#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1697#true} is VALID [2022-04-27 14:25:21,745 INFO L290 TraceCheckUtils]: 7: Hoare triple {1697#true} ~cond := #in~cond; {1723#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 14:25:21,745 INFO L290 TraceCheckUtils]: 8: Hoare triple {1723#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1727#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 14:25:21,745 INFO L290 TraceCheckUtils]: 9: Hoare triple {1727#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1727#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 14:25:21,746 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1727#(not (= |assume_abort_if_not_#in~cond| 0))} {1697#true} #69#return; {1734#(<= 1 main_~y~0)} is VALID [2022-04-27 14:25:21,746 INFO L290 TraceCheckUtils]: 11: Hoare triple {1734#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {1738#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 14:25:21,747 INFO L290 TraceCheckUtils]: 12: Hoare triple {1738#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1738#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 14:25:21,747 INFO L290 TraceCheckUtils]: 13: Hoare triple {1738#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {1738#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 14:25:21,747 INFO L272 TraceCheckUtils]: 14: Hoare triple {1738#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1697#true} is VALID [2022-04-27 14:25:21,747 INFO L290 TraceCheckUtils]: 15: Hoare triple {1697#true} ~cond := #in~cond; {1751#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 14:25:21,748 INFO L290 TraceCheckUtils]: 16: Hoare triple {1751#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {1755#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 14:25:21,748 INFO L290 TraceCheckUtils]: 17: Hoare triple {1755#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1755#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 14:25:21,749 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1755#(not (= |__VERIFIER_assert_#in~cond| 0))} {1738#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #71#return; {1738#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 14:25:21,749 INFO L290 TraceCheckUtils]: 19: Hoare triple {1738#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~a~0 && 0 != ~b~0); {1738#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 14:25:21,750 INFO L290 TraceCheckUtils]: 20: Hoare triple {1738#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {1768#(and (= (div main_~y~0 2) main_~b~0) (<= (mod main_~y~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (<= 1 main_~y~0) (= (mod main_~x~0 2) 0))} is VALID [2022-04-27 14:25:21,751 INFO L290 TraceCheckUtils]: 21: Hoare triple {1768#(and (= (div main_~y~0 2) main_~b~0) (<= (mod main_~y~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (<= 1 main_~y~0) (= (mod main_~x~0 2) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1768#(and (= (div main_~y~0 2) main_~b~0) (<= (mod main_~y~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (<= 1 main_~y~0) (= (mod main_~x~0 2) 0))} is VALID [2022-04-27 14:25:21,751 INFO L290 TraceCheckUtils]: 22: Hoare triple {1768#(and (= (div main_~y~0 2) main_~b~0) (<= (mod main_~y~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (<= 1 main_~y~0) (= (mod main_~x~0 2) 0))} assume !!(#t~post6 < 20);havoc #t~post6; {1768#(and (= (div main_~y~0 2) main_~b~0) (<= (mod main_~y~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (<= 1 main_~y~0) (= (mod main_~x~0 2) 0))} is VALID [2022-04-27 14:25:21,753 INFO L272 TraceCheckUtils]: 23: Hoare triple {1768#(and (= (div main_~y~0 2) main_~b~0) (<= (mod main_~y~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (<= 1 main_~y~0) (= (mod main_~x~0 2) 0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1778#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 14:25:21,754 INFO L290 TraceCheckUtils]: 24: Hoare triple {1778#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1782#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 14:25:21,754 INFO L290 TraceCheckUtils]: 25: Hoare triple {1782#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1698#false} is VALID [2022-04-27 14:25:21,754 INFO L290 TraceCheckUtils]: 26: Hoare triple {1698#false} assume !false; {1698#false} is VALID [2022-04-27 14:25:21,754 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 1 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 14:25:21,754 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 14:26:30,292 INFO L290 TraceCheckUtils]: 26: Hoare triple {1698#false} assume !false; {1698#false} is VALID [2022-04-27 14:26:30,293 INFO L290 TraceCheckUtils]: 25: Hoare triple {1782#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1698#false} is VALID [2022-04-27 14:26:30,293 INFO L290 TraceCheckUtils]: 24: Hoare triple {1778#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1782#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 14:26:30,294 INFO L272 TraceCheckUtils]: 23: Hoare triple {1798#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1778#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 14:26:30,294 INFO L290 TraceCheckUtils]: 22: Hoare triple {1798#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} assume !!(#t~post6 < 20);havoc #t~post6; {1798#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-27 14:26:30,295 INFO L290 TraceCheckUtils]: 21: Hoare triple {1798#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1798#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-27 14:26:30,298 INFO L290 TraceCheckUtils]: 20: Hoare triple {1808#(or (and (or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0))) (or (= (mod main_~b~0 2) 0) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))) (not (= (mod main_~a~0 2) 0)) (and (not (< main_~b~0 0)) (not (<= (mod main_~b~0 2) 0))))} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {1798#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-27 14:26:30,299 INFO L290 TraceCheckUtils]: 19: Hoare triple {1808#(or (and (or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0))) (or (= (mod main_~b~0 2) 0) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))) (not (= (mod main_~a~0 2) 0)) (and (not (< main_~b~0 0)) (not (<= (mod main_~b~0 2) 0))))} assume !!(0 != ~a~0 && 0 != ~b~0); {1808#(or (and (or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0))) (or (= (mod main_~b~0 2) 0) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))) (not (= (mod main_~a~0 2) 0)) (and (not (< main_~b~0 0)) (not (<= (mod main_~b~0 2) 0))))} is VALID [2022-04-27 14:26:30,306 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1755#(not (= |__VERIFIER_assert_#in~cond| 0))} {1815#(or (not (= (mod main_~a~0 2) 0)) (= (mod main_~b~0 2) 0) (not (< main_~b~0 0)) (not (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))} #71#return; {1808#(or (and (or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0))) (or (= (mod main_~b~0 2) 0) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))) (not (= (mod main_~a~0 2) 0)) (and (not (< main_~b~0 0)) (not (<= (mod main_~b~0 2) 0))))} is VALID [2022-04-27 14:26:30,306 INFO L290 TraceCheckUtils]: 17: Hoare triple {1755#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1755#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 14:26:30,306 INFO L290 TraceCheckUtils]: 16: Hoare triple {1825#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {1755#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 14:26:30,307 INFO L290 TraceCheckUtils]: 15: Hoare triple {1697#true} ~cond := #in~cond; {1825#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 14:26:30,307 INFO L272 TraceCheckUtils]: 14: Hoare triple {1815#(or (not (= (mod main_~a~0 2) 0)) (= (mod main_~b~0 2) 0) (not (< main_~b~0 0)) (not (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1697#true} is VALID [2022-04-27 14:26:30,307 INFO L290 TraceCheckUtils]: 13: Hoare triple {1815#(or (not (= (mod main_~a~0 2) 0)) (= (mod main_~b~0 2) 0) (not (< main_~b~0 0)) (not (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))} assume !!(#t~post6 < 20);havoc #t~post6; {1815#(or (not (= (mod main_~a~0 2) 0)) (= (mod main_~b~0 2) 0) (not (< main_~b~0 0)) (not (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 14:26:30,308 INFO L290 TraceCheckUtils]: 12: Hoare triple {1815#(or (not (= (mod main_~a~0 2) 0)) (= (mod main_~b~0 2) 0) (not (< main_~b~0 0)) (not (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1815#(or (not (= (mod main_~a~0 2) 0)) (= (mod main_~b~0 2) 0) (not (< main_~b~0 0)) (not (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 14:26:30,308 INFO L290 TraceCheckUtils]: 11: Hoare triple {1838#(or (<= 0 main_~y~0) (= (mod main_~y~0 2) 0) (= (+ (* (div main_~x~0 2) 4) (* (* (div main_~x~0 2) (div main_~y~0 2)) 4)) (* main_~y~0 main_~x~0)) (not (= (mod main_~x~0 2) 0)))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {1815#(or (not (= (mod main_~a~0 2) 0)) (= (mod main_~b~0 2) 0) (not (< main_~b~0 0)) (not (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 14:26:30,309 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1727#(not (= |assume_abort_if_not_#in~cond| 0))} {1697#true} #69#return; {1838#(or (<= 0 main_~y~0) (= (mod main_~y~0 2) 0) (= (+ (* (div main_~x~0 2) 4) (* (* (div main_~x~0 2) (div main_~y~0 2)) 4)) (* main_~y~0 main_~x~0)) (not (= (mod main_~x~0 2) 0)))} is VALID [2022-04-27 14:26:30,310 INFO L290 TraceCheckUtils]: 9: Hoare triple {1727#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1727#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 14:26:30,310 INFO L290 TraceCheckUtils]: 8: Hoare triple {1851#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {1727#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 14:26:30,310 INFO L290 TraceCheckUtils]: 7: Hoare triple {1697#true} ~cond := #in~cond; {1851#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-27 14:26:30,310 INFO L272 TraceCheckUtils]: 6: Hoare triple {1697#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1697#true} is VALID [2022-04-27 14:26:30,310 INFO L290 TraceCheckUtils]: 5: Hoare triple {1697#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1697#true} is VALID [2022-04-27 14:26:30,310 INFO L272 TraceCheckUtils]: 4: Hoare triple {1697#true} call #t~ret7 := main(); {1697#true} is VALID [2022-04-27 14:26:30,311 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1697#true} {1697#true} #77#return; {1697#true} is VALID [2022-04-27 14:26:30,311 INFO L290 TraceCheckUtils]: 2: Hoare triple {1697#true} assume true; {1697#true} is VALID [2022-04-27 14:26:30,311 INFO L290 TraceCheckUtils]: 1: Hoare triple {1697#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1697#true} is VALID [2022-04-27 14:26:30,311 INFO L272 TraceCheckUtils]: 0: Hoare triple {1697#true} call ULTIMATE.init(); {1697#true} is VALID [2022-04-27 14:26:30,311 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 1 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 14:26:30,311 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 14:26:30,311 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [852961419] [2022-04-27 14:26:30,311 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 14:26:30,311 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [392049892] [2022-04-27 14:26:30,311 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [392049892] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 14:26:30,311 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 14:26:30,312 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 12] total 17 [2022-04-27 14:26:30,312 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1577925855] [2022-04-27 14:26:30,312 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 14:26:30,312 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 1.7647058823529411) internal successors, (30), 14 states have internal predecessors, (30), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) Word has length 27 [2022-04-27 14:26:30,312 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 14:26:30,313 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 17 states, 17 states have (on average 1.7647058823529411) internal successors, (30), 14 states have internal predecessors, (30), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 14:26:30,355 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 14:26:30,355 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-27 14:26:30,355 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 14:26:30,355 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-27 14:26:30,355 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=49, Invalid=223, Unknown=0, NotChecked=0, Total=272 [2022-04-27 14:26:30,356 INFO L87 Difference]: Start difference. First operand 87 states and 107 transitions. Second operand has 17 states, 17 states have (on average 1.7647058823529411) internal successors, (30), 14 states have internal predecessors, (30), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 14:26:34,044 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:26:34,044 INFO L93 Difference]: Finished difference Result 127 states and 164 transitions. [2022-04-27 14:26:34,044 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-27 14:26:34,044 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 1.7647058823529411) internal successors, (30), 14 states have internal predecessors, (30), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) Word has length 27 [2022-04-27 14:26:34,044 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 14:26:34,044 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 1.7647058823529411) internal successors, (30), 14 states have internal predecessors, (30), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 14:26:34,046 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 83 transitions. [2022-04-27 14:26:34,046 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 1.7647058823529411) internal successors, (30), 14 states have internal predecessors, (30), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 14:26:34,047 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 83 transitions. [2022-04-27 14:26:34,047 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 83 transitions. [2022-04-27 14:26:34,230 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 83 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 14:26:34,232 INFO L225 Difference]: With dead ends: 127 [2022-04-27 14:26:34,232 INFO L226 Difference]: Without dead ends: 121 [2022-04-27 14:26:34,232 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 58 GetRequests, 37 SyntacticMatches, 1 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 60 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=84, Invalid=378, Unknown=0, NotChecked=0, Total=462 [2022-04-27 14:26:34,233 INFO L413 NwaCegarLoop]: 23 mSDtfsCounter, 99 mSDsluCounter, 121 mSDsCounter, 0 mSdLazyCounter, 281 mSolverCounterSat, 89 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 102 SdHoareTripleChecker+Valid, 144 SdHoareTripleChecker+Invalid, 370 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 89 IncrementalHoareTripleChecker+Valid, 281 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.8s IncrementalHoareTripleChecker+Time [2022-04-27 14:26:34,233 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [102 Valid, 144 Invalid, 370 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [89 Valid, 281 Invalid, 0 Unknown, 0 Unchecked, 1.8s Time] [2022-04-27 14:26:34,233 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 121 states. [2022-04-27 14:26:34,283 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 121 to 79. [2022-04-27 14:26:34,283 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 14:26:34,283 INFO L82 GeneralOperation]: Start isEquivalent. First operand 121 states. Second operand has 79 states, 57 states have (on average 1.3157894736842106) internal successors, (75), 59 states have internal predecessors, (75), 12 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 14:26:34,284 INFO L74 IsIncluded]: Start isIncluded. First operand 121 states. Second operand has 79 states, 57 states have (on average 1.3157894736842106) internal successors, (75), 59 states have internal predecessors, (75), 12 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 14:26:34,284 INFO L87 Difference]: Start difference. First operand 121 states. Second operand has 79 states, 57 states have (on average 1.3157894736842106) internal successors, (75), 59 states have internal predecessors, (75), 12 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 14:26:34,287 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:26:34,287 INFO L93 Difference]: Finished difference Result 121 states and 156 transitions. [2022-04-27 14:26:34,287 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 156 transitions. [2022-04-27 14:26:34,287 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 14:26:34,287 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 14:26:34,288 INFO L74 IsIncluded]: Start isIncluded. First operand has 79 states, 57 states have (on average 1.3157894736842106) internal successors, (75), 59 states have internal predecessors, (75), 12 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Second operand 121 states. [2022-04-27 14:26:34,288 INFO L87 Difference]: Start difference. First operand has 79 states, 57 states have (on average 1.3157894736842106) internal successors, (75), 59 states have internal predecessors, (75), 12 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Second operand 121 states. [2022-04-27 14:26:34,291 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:26:34,291 INFO L93 Difference]: Finished difference Result 121 states and 156 transitions. [2022-04-27 14:26:34,291 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 156 transitions. [2022-04-27 14:26:34,291 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 14:26:34,291 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 14:26:34,291 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 14:26:34,291 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 14:26:34,291 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 79 states, 57 states have (on average 1.3157894736842106) internal successors, (75), 59 states have internal predecessors, (75), 12 states have call successors, (12), 11 states have call predecessors, (12), 9 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 14:26:34,293 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 79 states to 79 states and 96 transitions. [2022-04-27 14:26:34,293 INFO L78 Accepts]: Start accepts. Automaton has 79 states and 96 transitions. Word has length 27 [2022-04-27 14:26:34,293 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 14:26:34,293 INFO L495 AbstractCegarLoop]: Abstraction has 79 states and 96 transitions. [2022-04-27 14:26:34,293 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 17 states have (on average 1.7647058823529411) internal successors, (30), 14 states have internal predecessors, (30), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 14:26:34,293 INFO L276 IsEmpty]: Start isEmpty. Operand 79 states and 96 transitions. [2022-04-27 14:26:34,294 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-27 14:26:34,294 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 14:26:34,294 INFO L195 NwaCegarLoop]: trace histogram [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] [2022-04-27 14:26:34,310 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 14:26:34,507 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 14:26:34,507 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 14:26:34,508 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 14:26:34,508 INFO L85 PathProgramCache]: Analyzing trace with hash -1613968938, now seen corresponding path program 1 times [2022-04-27 14:26:34,508 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 14:26:34,508 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [977201992] [2022-04-27 14:26:34,508 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 14:26:34,508 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 14:26:34,521 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 14:26:34,521 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [218379193] [2022-04-27 14:26:34,521 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 14:26:34,521 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 14:26:34,521 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 14:26:34,525 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 14:26:34,526 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 14:26:34,556 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:26:34,557 INFO L263 TraceCheckSpWp]: Trace formula consists of 105 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-27 14:26:34,564 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:26:34,565 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 14:26:34,683 INFO L272 TraceCheckUtils]: 0: Hoare triple {2407#true} call ULTIMATE.init(); {2407#true} is VALID [2022-04-27 14:26:34,684 INFO L290 TraceCheckUtils]: 1: Hoare triple {2407#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2407#true} is VALID [2022-04-27 14:26:34,684 INFO L290 TraceCheckUtils]: 2: Hoare triple {2407#true} assume true; {2407#true} is VALID [2022-04-27 14:26:34,684 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2407#true} {2407#true} #77#return; {2407#true} is VALID [2022-04-27 14:26:34,684 INFO L272 TraceCheckUtils]: 4: Hoare triple {2407#true} call #t~ret7 := main(); {2407#true} is VALID [2022-04-27 14:26:34,684 INFO L290 TraceCheckUtils]: 5: Hoare triple {2407#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2407#true} is VALID [2022-04-27 14:26:34,684 INFO L272 TraceCheckUtils]: 6: Hoare triple {2407#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2407#true} is VALID [2022-04-27 14:26:34,684 INFO L290 TraceCheckUtils]: 7: Hoare triple {2407#true} ~cond := #in~cond; {2433#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 14:26:34,685 INFO L290 TraceCheckUtils]: 8: Hoare triple {2433#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2437#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 14:26:34,685 INFO L290 TraceCheckUtils]: 9: Hoare triple {2437#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2437#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 14:26:34,686 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2437#(not (= |assume_abort_if_not_#in~cond| 0))} {2407#true} #69#return; {2444#(<= 1 main_~y~0)} is VALID [2022-04-27 14:26:34,686 INFO L290 TraceCheckUtils]: 11: Hoare triple {2444#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {2448#(<= 1 main_~b~0)} is VALID [2022-04-27 14:26:34,686 INFO L290 TraceCheckUtils]: 12: Hoare triple {2448#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2448#(<= 1 main_~b~0)} is VALID [2022-04-27 14:26:34,687 INFO L290 TraceCheckUtils]: 13: Hoare triple {2448#(<= 1 main_~b~0)} assume !!(#t~post6 < 20);havoc #t~post6; {2448#(<= 1 main_~b~0)} is VALID [2022-04-27 14:26:34,687 INFO L272 TraceCheckUtils]: 14: Hoare triple {2448#(<= 1 main_~b~0)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {2407#true} is VALID [2022-04-27 14:26:34,687 INFO L290 TraceCheckUtils]: 15: Hoare triple {2407#true} ~cond := #in~cond; {2407#true} is VALID [2022-04-27 14:26:34,687 INFO L290 TraceCheckUtils]: 16: Hoare triple {2407#true} assume !(0 == ~cond); {2407#true} is VALID [2022-04-27 14:26:34,687 INFO L290 TraceCheckUtils]: 17: Hoare triple {2407#true} assume true; {2407#true} is VALID [2022-04-27 14:26:34,690 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2407#true} {2448#(<= 1 main_~b~0)} #71#return; {2448#(<= 1 main_~b~0)} is VALID [2022-04-27 14:26:34,691 INFO L290 TraceCheckUtils]: 19: Hoare triple {2448#(<= 1 main_~b~0)} assume !(0 != ~a~0 && 0 != ~b~0); {2473#(and (= main_~a~0 0) (<= 1 main_~b~0))} is VALID [2022-04-27 14:26:34,691 INFO L272 TraceCheckUtils]: 20: Hoare triple {2473#(and (= main_~a~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {2407#true} is VALID [2022-04-27 14:26:34,691 INFO L290 TraceCheckUtils]: 21: Hoare triple {2407#true} ~cond := #in~cond; {2407#true} is VALID [2022-04-27 14:26:34,691 INFO L290 TraceCheckUtils]: 22: Hoare triple {2407#true} assume !(0 == ~cond); {2407#true} is VALID [2022-04-27 14:26:34,691 INFO L290 TraceCheckUtils]: 23: Hoare triple {2407#true} assume true; {2407#true} is VALID [2022-04-27 14:26:34,692 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {2407#true} {2473#(and (= main_~a~0 0) (<= 1 main_~b~0))} #73#return; {2473#(and (= main_~a~0 0) (<= 1 main_~b~0))} is VALID [2022-04-27 14:26:34,692 INFO L272 TraceCheckUtils]: 25: Hoare triple {2473#(and (= main_~a~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if 0 == ~a~0 * ~b~0 then 1 else 0)); {2492#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 14:26:34,697 INFO L290 TraceCheckUtils]: 26: Hoare triple {2492#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2496#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 14:26:34,697 INFO L290 TraceCheckUtils]: 27: Hoare triple {2496#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2408#false} is VALID [2022-04-27 14:26:34,698 INFO L290 TraceCheckUtils]: 28: Hoare triple {2408#false} assume !false; {2408#false} is VALID [2022-04-27 14:26:34,698 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 14:26:34,698 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 14:26:34,698 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 14:26:34,698 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [977201992] [2022-04-27 14:26:34,698 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 14:26:34,699 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [218379193] [2022-04-27 14:26:34,699 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [218379193] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 14:26:34,699 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 14:26:34,699 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-27 14:26:34,699 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [37411860] [2022-04-27 14:26:34,699 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 14:26:34,700 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 29 [2022-04-27 14:26:34,700 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 14:26:34,700 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-27 14:26:34,719 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 14:26:34,719 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-27 14:26:34,720 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 14:26:34,720 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-27 14:26:34,720 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=56, Unknown=0, NotChecked=0, Total=72 [2022-04-27 14:26:34,721 INFO L87 Difference]: Start difference. First operand 79 states and 96 transitions. Second operand has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-27 14:26:35,047 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:26:35,047 INFO L93 Difference]: Finished difference Result 116 states and 151 transitions. [2022-04-27 14:26:35,047 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-27 14:26:35,048 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 29 [2022-04-27 14:26:35,048 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 14:26:35,048 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-27 14:26:35,049 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 57 transitions. [2022-04-27 14:26:35,049 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-27 14:26:35,049 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 57 transitions. [2022-04-27 14:26:35,050 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 57 transitions. [2022-04-27 14:26:35,094 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 14:26:35,096 INFO L225 Difference]: With dead ends: 116 [2022-04-27 14:26:35,096 INFO L226 Difference]: Without dead ends: 104 [2022-04-27 14:26:35,096 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 32 GetRequests, 21 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=34, Invalid=122, Unknown=0, NotChecked=0, Total=156 [2022-04-27 14:26:35,097 INFO L413 NwaCegarLoop]: 26 mSDtfsCounter, 33 mSDsluCounter, 115 mSDsCounter, 0 mSdLazyCounter, 110 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 35 SdHoareTripleChecker+Valid, 141 SdHoareTripleChecker+Invalid, 119 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 110 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 14:26:35,097 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [35 Valid, 141 Invalid, 119 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 110 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 14:26:35,097 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 104 states. [2022-04-27 14:26:35,172 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 104 to 99. [2022-04-27 14:26:35,173 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 14:26:35,173 INFO L82 GeneralOperation]: Start isEquivalent. First operand 104 states. Second operand has 99 states, 74 states have (on average 1.3243243243243243) internal successors, (98), 76 states have internal predecessors, (98), 15 states have call successors, (15), 11 states have call predecessors, (15), 9 states have return successors, (12), 11 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-27 14:26:35,173 INFO L74 IsIncluded]: Start isIncluded. First operand 104 states. Second operand has 99 states, 74 states have (on average 1.3243243243243243) internal successors, (98), 76 states have internal predecessors, (98), 15 states have call successors, (15), 11 states have call predecessors, (15), 9 states have return successors, (12), 11 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-27 14:26:35,174 INFO L87 Difference]: Start difference. First operand 104 states. Second operand has 99 states, 74 states have (on average 1.3243243243243243) internal successors, (98), 76 states have internal predecessors, (98), 15 states have call successors, (15), 11 states have call predecessors, (15), 9 states have return successors, (12), 11 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-27 14:26:35,176 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:26:35,176 INFO L93 Difference]: Finished difference Result 104 states and 134 transitions. [2022-04-27 14:26:35,176 INFO L276 IsEmpty]: Start isEmpty. Operand 104 states and 134 transitions. [2022-04-27 14:26:35,176 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 14:26:35,176 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 14:26:35,177 INFO L74 IsIncluded]: Start isIncluded. First operand has 99 states, 74 states have (on average 1.3243243243243243) internal successors, (98), 76 states have internal predecessors, (98), 15 states have call successors, (15), 11 states have call predecessors, (15), 9 states have return successors, (12), 11 states have call predecessors, (12), 12 states have call successors, (12) Second operand 104 states. [2022-04-27 14:26:35,177 INFO L87 Difference]: Start difference. First operand has 99 states, 74 states have (on average 1.3243243243243243) internal successors, (98), 76 states have internal predecessors, (98), 15 states have call successors, (15), 11 states have call predecessors, (15), 9 states have return successors, (12), 11 states have call predecessors, (12), 12 states have call successors, (12) Second operand 104 states. [2022-04-27 14:26:35,179 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:26:35,179 INFO L93 Difference]: Finished difference Result 104 states and 134 transitions. [2022-04-27 14:26:35,179 INFO L276 IsEmpty]: Start isEmpty. Operand 104 states and 134 transitions. [2022-04-27 14:26:35,180 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 14:26:35,180 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 14:26:35,180 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 14:26:35,180 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 14:26:35,180 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 99 states, 74 states have (on average 1.3243243243243243) internal successors, (98), 76 states have internal predecessors, (98), 15 states have call successors, (15), 11 states have call predecessors, (15), 9 states have return successors, (12), 11 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-27 14:26:35,182 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 99 states to 99 states and 125 transitions. [2022-04-27 14:26:35,182 INFO L78 Accepts]: Start accepts. Automaton has 99 states and 125 transitions. Word has length 29 [2022-04-27 14:26:35,182 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 14:26:35,182 INFO L495 AbstractCegarLoop]: Abstraction has 99 states and 125 transitions. [2022-04-27 14:26:35,182 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-27 14:26:35,182 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 125 transitions. [2022-04-27 14:26:35,183 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-27 14:26:35,183 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 14:26:35,183 INFO L195 NwaCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 14:26:35,201 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 14:26:35,392 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 14:26:35,392 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 14:26:35,392 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 14:26:35,392 INFO L85 PathProgramCache]: Analyzing trace with hash 1524039145, now seen corresponding path program 1 times [2022-04-27 14:26:35,393 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 14:26:35,393 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [198870852] [2022-04-27 14:26:35,393 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 14:26:35,393 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 14:26:35,407 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 14:26:35,407 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1751930124] [2022-04-27 14:26:35,407 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 14:26:35,407 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 14:26:35,407 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 14:26:35,410 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 14:26:35,416 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-27 14:26:35,452 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:26:35,452 INFO L263 TraceCheckSpWp]: Trace formula consists of 131 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-27 14:26:35,459 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:26:35,460 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 14:26:35,577 INFO L272 TraceCheckUtils]: 0: Hoare triple {3011#true} call ULTIMATE.init(); {3011#true} is VALID [2022-04-27 14:26:35,578 INFO L290 TraceCheckUtils]: 1: Hoare triple {3011#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3011#true} is VALID [2022-04-27 14:26:35,578 INFO L290 TraceCheckUtils]: 2: Hoare triple {3011#true} assume true; {3011#true} is VALID [2022-04-27 14:26:35,578 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3011#true} {3011#true} #77#return; {3011#true} is VALID [2022-04-27 14:26:35,578 INFO L272 TraceCheckUtils]: 4: Hoare triple {3011#true} call #t~ret7 := main(); {3011#true} is VALID [2022-04-27 14:26:35,578 INFO L290 TraceCheckUtils]: 5: Hoare triple {3011#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3011#true} is VALID [2022-04-27 14:26:35,578 INFO L272 TraceCheckUtils]: 6: Hoare triple {3011#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3011#true} is VALID [2022-04-27 14:26:35,578 INFO L290 TraceCheckUtils]: 7: Hoare triple {3011#true} ~cond := #in~cond; {3011#true} is VALID [2022-04-27 14:26:35,578 INFO L290 TraceCheckUtils]: 8: Hoare triple {3011#true} assume !(0 == ~cond); {3011#true} is VALID [2022-04-27 14:26:35,578 INFO L290 TraceCheckUtils]: 9: Hoare triple {3011#true} assume true; {3011#true} is VALID [2022-04-27 14:26:35,578 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3011#true} {3011#true} #69#return; {3011#true} is VALID [2022-04-27 14:26:35,579 INFO L290 TraceCheckUtils]: 11: Hoare triple {3011#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {3011#true} is VALID [2022-04-27 14:26:35,579 INFO L290 TraceCheckUtils]: 12: Hoare triple {3011#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3011#true} is VALID [2022-04-27 14:26:35,579 INFO L290 TraceCheckUtils]: 13: Hoare triple {3011#true} assume !!(#t~post6 < 20);havoc #t~post6; {3011#true} is VALID [2022-04-27 14:26:35,579 INFO L272 TraceCheckUtils]: 14: Hoare triple {3011#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {3011#true} is VALID [2022-04-27 14:26:35,579 INFO L290 TraceCheckUtils]: 15: Hoare triple {3011#true} ~cond := #in~cond; {3011#true} is VALID [2022-04-27 14:26:35,579 INFO L290 TraceCheckUtils]: 16: Hoare triple {3011#true} assume !(0 == ~cond); {3011#true} is VALID [2022-04-27 14:26:35,579 INFO L290 TraceCheckUtils]: 17: Hoare triple {3011#true} assume true; {3011#true} is VALID [2022-04-27 14:26:35,579 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3011#true} {3011#true} #71#return; {3011#true} is VALID [2022-04-27 14:26:35,579 INFO L290 TraceCheckUtils]: 19: Hoare triple {3011#true} assume !!(0 != ~a~0 && 0 != ~b~0); {3073#(not (= main_~a~0 0))} is VALID [2022-04-27 14:26:35,580 INFO L290 TraceCheckUtils]: 20: Hoare triple {3073#(not (= main_~a~0 0))} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {3073#(not (= main_~a~0 0))} is VALID [2022-04-27 14:26:35,580 INFO L290 TraceCheckUtils]: 21: Hoare triple {3073#(not (= main_~a~0 0))} assume !(1 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {3073#(not (= main_~a~0 0))} is VALID [2022-04-27 14:26:35,580 INFO L290 TraceCheckUtils]: 22: Hoare triple {3073#(not (= main_~a~0 0))} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 1 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~b~0 := ~b~0 - 1;~q~0 := ~q~0 + ~a~0 * ~p~0; {3073#(not (= main_~a~0 0))} is VALID [2022-04-27 14:26:35,581 INFO L290 TraceCheckUtils]: 23: Hoare triple {3073#(not (= main_~a~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3073#(not (= main_~a~0 0))} is VALID [2022-04-27 14:26:35,581 INFO L290 TraceCheckUtils]: 24: Hoare triple {3073#(not (= main_~a~0 0))} assume !!(#t~post6 < 20);havoc #t~post6; {3073#(not (= main_~a~0 0))} is VALID [2022-04-27 14:26:35,581 INFO L272 TraceCheckUtils]: 25: Hoare triple {3073#(not (= main_~a~0 0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {3011#true} is VALID [2022-04-27 14:26:35,581 INFO L290 TraceCheckUtils]: 26: Hoare triple {3011#true} ~cond := #in~cond; {3011#true} is VALID [2022-04-27 14:26:35,581 INFO L290 TraceCheckUtils]: 27: Hoare triple {3011#true} assume !(0 == ~cond); {3011#true} is VALID [2022-04-27 14:26:35,582 INFO L290 TraceCheckUtils]: 28: Hoare triple {3011#true} assume true; {3011#true} is VALID [2022-04-27 14:26:35,582 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {3011#true} {3073#(not (= main_~a~0 0))} #71#return; {3073#(not (= main_~a~0 0))} is VALID [2022-04-27 14:26:35,583 INFO L290 TraceCheckUtils]: 30: Hoare triple {3073#(not (= main_~a~0 0))} assume !(0 != ~a~0 && 0 != ~b~0); {3107#(and (= main_~b~0 0) (not (= main_~a~0 0)))} is VALID [2022-04-27 14:26:35,583 INFO L272 TraceCheckUtils]: 31: Hoare triple {3107#(and (= main_~b~0 0) (not (= main_~a~0 0)))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {3011#true} is VALID [2022-04-27 14:26:35,583 INFO L290 TraceCheckUtils]: 32: Hoare triple {3011#true} ~cond := #in~cond; {3011#true} is VALID [2022-04-27 14:26:35,583 INFO L290 TraceCheckUtils]: 33: Hoare triple {3011#true} assume !(0 == ~cond); {3011#true} is VALID [2022-04-27 14:26:35,583 INFO L290 TraceCheckUtils]: 34: Hoare triple {3011#true} assume true; {3011#true} is VALID [2022-04-27 14:26:35,583 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {3011#true} {3107#(and (= main_~b~0 0) (not (= main_~a~0 0)))} #73#return; {3107#(and (= main_~b~0 0) (not (= main_~a~0 0)))} is VALID [2022-04-27 14:26:35,584 INFO L272 TraceCheckUtils]: 36: Hoare triple {3107#(and (= main_~b~0 0) (not (= main_~a~0 0)))} call __VERIFIER_assert((if 0 == ~a~0 * ~b~0 then 1 else 0)); {3126#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 14:26:35,584 INFO L290 TraceCheckUtils]: 37: Hoare triple {3126#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3130#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 14:26:35,585 INFO L290 TraceCheckUtils]: 38: Hoare triple {3130#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3012#false} is VALID [2022-04-27 14:26:35,585 INFO L290 TraceCheckUtils]: 39: Hoare triple {3012#false} assume !false; {3012#false} is VALID [2022-04-27 14:26:35,585 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 10 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-27 14:26:35,585 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 14:26:35,585 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 14:26:35,585 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [198870852] [2022-04-27 14:26:35,585 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 14:26:35,585 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1751930124] [2022-04-27 14:26:35,585 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1751930124] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 14:26:35,585 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 14:26:35,585 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-27 14:26:35,586 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1833760738] [2022-04-27 14:26:35,586 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 14:26:35,586 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 4.4) internal successors, (22), 5 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Word has length 40 [2022-04-27 14:26:35,586 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 14:26:35,586 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 4.4) internal successors, (22), 5 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 14:26:35,612 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 14:26:35,613 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-27 14:26:35,613 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 14:26:35,613 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-27 14:26:35,613 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-04-27 14:26:35,613 INFO L87 Difference]: Start difference. First operand 99 states and 125 transitions. Second operand has 6 states, 5 states have (on average 4.4) internal successors, (22), 5 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 14:26:35,877 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:26:35,877 INFO L93 Difference]: Finished difference Result 141 states and 180 transitions. [2022-04-27 14:26:35,877 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 14:26:35,878 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 4.4) internal successors, (22), 5 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Word has length 40 [2022-04-27 14:26:35,878 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 14:26:35,878 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 4.4) internal successors, (22), 5 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 14:26:35,879 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 51 transitions. [2022-04-27 14:26:35,879 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 4.4) internal successors, (22), 5 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 14:26:35,879 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 51 transitions. [2022-04-27 14:26:35,880 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 51 transitions. [2022-04-27 14:26:35,914 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 14:26:35,916 INFO L225 Difference]: With dead ends: 141 [2022-04-27 14:26:35,916 INFO L226 Difference]: Without dead ends: 129 [2022-04-27 14:26:35,916 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 40 GetRequests, 35 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=14, Invalid=28, Unknown=0, NotChecked=0, Total=42 [2022-04-27 14:26:35,917 INFO L413 NwaCegarLoop]: 35 mSDtfsCounter, 7 mSDsluCounter, 81 mSDsCounter, 0 mSdLazyCounter, 57 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 116 SdHoareTripleChecker+Invalid, 59 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 57 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 14:26:35,917 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [8 Valid, 116 Invalid, 59 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 57 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 14:26:35,917 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 129 states. [2022-04-27 14:26:35,979 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 129 to 113. [2022-04-27 14:26:35,979 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 14:26:35,980 INFO L82 GeneralOperation]: Start isEquivalent. First operand 129 states. Second operand has 113 states, 85 states have (on average 1.2941176470588236) internal successors, (110), 87 states have internal predecessors, (110), 18 states have call successors, (18), 11 states have call predecessors, (18), 9 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-27 14:26:35,980 INFO L74 IsIncluded]: Start isIncluded. First operand 129 states. Second operand has 113 states, 85 states have (on average 1.2941176470588236) internal successors, (110), 87 states have internal predecessors, (110), 18 states have call successors, (18), 11 states have call predecessors, (18), 9 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-27 14:26:35,980 INFO L87 Difference]: Start difference. First operand 129 states. Second operand has 113 states, 85 states have (on average 1.2941176470588236) internal successors, (110), 87 states have internal predecessors, (110), 18 states have call successors, (18), 11 states have call predecessors, (18), 9 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-27 14:26:35,983 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:26:35,983 INFO L93 Difference]: Finished difference Result 129 states and 164 transitions. [2022-04-27 14:26:35,983 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 164 transitions. [2022-04-27 14:26:35,983 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 14:26:35,984 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 14:26:35,984 INFO L74 IsIncluded]: Start isIncluded. First operand has 113 states, 85 states have (on average 1.2941176470588236) internal successors, (110), 87 states have internal predecessors, (110), 18 states have call successors, (18), 11 states have call predecessors, (18), 9 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) Second operand 129 states. [2022-04-27 14:26:35,984 INFO L87 Difference]: Start difference. First operand has 113 states, 85 states have (on average 1.2941176470588236) internal successors, (110), 87 states have internal predecessors, (110), 18 states have call successors, (18), 11 states have call predecessors, (18), 9 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) Second operand 129 states. [2022-04-27 14:26:35,987 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:26:35,987 INFO L93 Difference]: Finished difference Result 129 states and 164 transitions. [2022-04-27 14:26:35,987 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 164 transitions. [2022-04-27 14:26:35,987 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 14:26:35,987 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 14:26:35,987 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 14:26:35,987 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 14:26:35,988 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 113 states, 85 states have (on average 1.2941176470588236) internal successors, (110), 87 states have internal predecessors, (110), 18 states have call successors, (18), 11 states have call predecessors, (18), 9 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-27 14:26:35,990 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 113 states to 113 states and 143 transitions. [2022-04-27 14:26:35,990 INFO L78 Accepts]: Start accepts. Automaton has 113 states and 143 transitions. Word has length 40 [2022-04-27 14:26:35,990 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 14:26:35,990 INFO L495 AbstractCegarLoop]: Abstraction has 113 states and 143 transitions. [2022-04-27 14:26:35,990 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 4.4) internal successors, (22), 5 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 14:26:35,990 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 143 transitions. [2022-04-27 14:26:35,991 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-27 14:26:35,991 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 14:26:35,991 INFO L195 NwaCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 14:26:36,007 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-27 14:26:36,207 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 14:26:36,207 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 14:26:36,207 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 14:26:36,207 INFO L85 PathProgramCache]: Analyzing trace with hash -470105561, now seen corresponding path program 1 times [2022-04-27 14:26:36,208 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 14:26:36,208 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [479185942] [2022-04-27 14:26:36,208 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 14:26:36,208 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 14:26:36,218 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 14:26:36,218 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1153964992] [2022-04-27 14:26:36,218 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 14:26:36,219 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 14:26:36,219 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 14:26:36,221 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 14:26:36,222 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-27 14:26:36,259 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:26:36,259 INFO L263 TraceCheckSpWp]: Trace formula consists of 130 conjuncts, 12 conjunts are in the unsatisfiable core [2022-04-27 14:26:36,281 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:26:36,283 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 14:26:36,501 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 14:26:36,534 INFO L272 TraceCheckUtils]: 0: Hoare triple {3749#true} call ULTIMATE.init(); {3749#true} is VALID [2022-04-27 14:26:36,534 INFO L290 TraceCheckUtils]: 1: Hoare triple {3749#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3749#true} is VALID [2022-04-27 14:26:36,534 INFO L290 TraceCheckUtils]: 2: Hoare triple {3749#true} assume true; {3749#true} is VALID [2022-04-27 14:26:36,534 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3749#true} {3749#true} #77#return; {3749#true} is VALID [2022-04-27 14:26:36,535 INFO L272 TraceCheckUtils]: 4: Hoare triple {3749#true} call #t~ret7 := main(); {3749#true} is VALID [2022-04-27 14:26:36,535 INFO L290 TraceCheckUtils]: 5: Hoare triple {3749#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3749#true} is VALID [2022-04-27 14:26:36,535 INFO L272 TraceCheckUtils]: 6: Hoare triple {3749#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3749#true} is VALID [2022-04-27 14:26:36,535 INFO L290 TraceCheckUtils]: 7: Hoare triple {3749#true} ~cond := #in~cond; {3775#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 14:26:36,535 INFO L290 TraceCheckUtils]: 8: Hoare triple {3775#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3779#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 14:26:36,536 INFO L290 TraceCheckUtils]: 9: Hoare triple {3779#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3779#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 14:26:36,536 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3779#(not (= |assume_abort_if_not_#in~cond| 0))} {3749#true} #69#return; {3786#(<= 1 main_~y~0)} is VALID [2022-04-27 14:26:36,537 INFO L290 TraceCheckUtils]: 11: Hoare triple {3786#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {3790#(<= 1 main_~b~0)} is VALID [2022-04-27 14:26:36,537 INFO L290 TraceCheckUtils]: 12: Hoare triple {3790#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3790#(<= 1 main_~b~0)} is VALID [2022-04-27 14:26:36,537 INFO L290 TraceCheckUtils]: 13: Hoare triple {3790#(<= 1 main_~b~0)} assume !!(#t~post6 < 20);havoc #t~post6; {3790#(<= 1 main_~b~0)} is VALID [2022-04-27 14:26:36,537 INFO L272 TraceCheckUtils]: 14: Hoare triple {3790#(<= 1 main_~b~0)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {3749#true} is VALID [2022-04-27 14:26:36,537 INFO L290 TraceCheckUtils]: 15: Hoare triple {3749#true} ~cond := #in~cond; {3749#true} is VALID [2022-04-27 14:26:36,537 INFO L290 TraceCheckUtils]: 16: Hoare triple {3749#true} assume !(0 == ~cond); {3749#true} is VALID [2022-04-27 14:26:36,537 INFO L290 TraceCheckUtils]: 17: Hoare triple {3749#true} assume true; {3749#true} is VALID [2022-04-27 14:26:36,538 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3749#true} {3790#(<= 1 main_~b~0)} #71#return; {3790#(<= 1 main_~b~0)} is VALID [2022-04-27 14:26:36,538 INFO L290 TraceCheckUtils]: 19: Hoare triple {3790#(<= 1 main_~b~0)} assume !!(0 != ~a~0 && 0 != ~b~0); {3790#(<= 1 main_~b~0)} is VALID [2022-04-27 14:26:36,539 INFO L290 TraceCheckUtils]: 20: Hoare triple {3790#(<= 1 main_~b~0)} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {3790#(<= 1 main_~b~0)} is VALID [2022-04-27 14:26:36,539 INFO L290 TraceCheckUtils]: 21: Hoare triple {3790#(<= 1 main_~b~0)} assume !(1 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {3790#(<= 1 main_~b~0)} is VALID [2022-04-27 14:26:36,540 INFO L290 TraceCheckUtils]: 22: Hoare triple {3790#(<= 1 main_~b~0)} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 1 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2));~a~0 := ~a~0 - 1;~b~0 := ~b~0 - 1;~q~0 := ~q~0 + (1 + (~a~0 + ~b~0)) * ~p~0; {3824#(<= 0 main_~b~0)} is VALID [2022-04-27 14:26:36,540 INFO L290 TraceCheckUtils]: 23: Hoare triple {3824#(<= 0 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3824#(<= 0 main_~b~0)} is VALID [2022-04-27 14:26:36,540 INFO L290 TraceCheckUtils]: 24: Hoare triple {3824#(<= 0 main_~b~0)} assume !!(#t~post6 < 20);havoc #t~post6; {3824#(<= 0 main_~b~0)} is VALID [2022-04-27 14:26:36,541 INFO L272 TraceCheckUtils]: 25: Hoare triple {3824#(<= 0 main_~b~0)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {3749#true} is VALID [2022-04-27 14:26:36,541 INFO L290 TraceCheckUtils]: 26: Hoare triple {3749#true} ~cond := #in~cond; {3749#true} is VALID [2022-04-27 14:26:36,541 INFO L290 TraceCheckUtils]: 27: Hoare triple {3749#true} assume !(0 == ~cond); {3749#true} is VALID [2022-04-27 14:26:36,541 INFO L290 TraceCheckUtils]: 28: Hoare triple {3749#true} assume true; {3749#true} is VALID [2022-04-27 14:26:36,541 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {3749#true} {3824#(<= 0 main_~b~0)} #71#return; {3824#(<= 0 main_~b~0)} is VALID [2022-04-27 14:26:36,542 INFO L290 TraceCheckUtils]: 30: Hoare triple {3824#(<= 0 main_~b~0)} assume !(0 != ~a~0 && 0 != ~b~0); {3849#(and (or (= main_~a~0 0) (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-27 14:26:36,542 INFO L272 TraceCheckUtils]: 31: Hoare triple {3849#(and (or (= main_~a~0 0) (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {3749#true} is VALID [2022-04-27 14:26:36,542 INFO L290 TraceCheckUtils]: 32: Hoare triple {3749#true} ~cond := #in~cond; {3749#true} is VALID [2022-04-27 14:26:36,542 INFO L290 TraceCheckUtils]: 33: Hoare triple {3749#true} assume !(0 == ~cond); {3749#true} is VALID [2022-04-27 14:26:36,542 INFO L290 TraceCheckUtils]: 34: Hoare triple {3749#true} assume true; {3749#true} is VALID [2022-04-27 14:26:36,543 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {3749#true} {3849#(and (or (= main_~a~0 0) (= main_~b~0 0)) (<= 0 main_~b~0))} #73#return; {3849#(and (or (= main_~a~0 0) (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-27 14:26:36,544 INFO L272 TraceCheckUtils]: 36: Hoare triple {3849#(and (or (= main_~a~0 0) (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if 0 == ~a~0 * ~b~0 then 1 else 0)); {3868#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 14:26:36,544 INFO L290 TraceCheckUtils]: 37: Hoare triple {3868#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3872#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 14:26:36,545 INFO L290 TraceCheckUtils]: 38: Hoare triple {3872#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3750#false} is VALID [2022-04-27 14:26:36,545 INFO L290 TraceCheckUtils]: 39: Hoare triple {3750#false} assume !false; {3750#false} is VALID [2022-04-27 14:26:36,545 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 6 proven. 4 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-27 14:26:36,545 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 14:26:36,739 INFO L290 TraceCheckUtils]: 39: Hoare triple {3750#false} assume !false; {3750#false} is VALID [2022-04-27 14:26:36,740 INFO L290 TraceCheckUtils]: 38: Hoare triple {3872#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3750#false} is VALID [2022-04-27 14:26:36,740 INFO L290 TraceCheckUtils]: 37: Hoare triple {3868#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3872#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 14:26:36,741 INFO L272 TraceCheckUtils]: 36: Hoare triple {3888#(= (* main_~b~0 main_~a~0) 0)} call __VERIFIER_assert((if 0 == ~a~0 * ~b~0 then 1 else 0)); {3868#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 14:26:36,741 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {3749#true} {3888#(= (* main_~b~0 main_~a~0) 0)} #73#return; {3888#(= (* main_~b~0 main_~a~0) 0)} is VALID [2022-04-27 14:26:36,741 INFO L290 TraceCheckUtils]: 34: Hoare triple {3749#true} assume true; {3749#true} is VALID [2022-04-27 14:26:36,741 INFO L290 TraceCheckUtils]: 33: Hoare triple {3749#true} assume !(0 == ~cond); {3749#true} is VALID [2022-04-27 14:26:36,742 INFO L290 TraceCheckUtils]: 32: Hoare triple {3749#true} ~cond := #in~cond; {3749#true} is VALID [2022-04-27 14:26:36,742 INFO L272 TraceCheckUtils]: 31: Hoare triple {3888#(= (* main_~b~0 main_~a~0) 0)} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {3749#true} is VALID [2022-04-27 14:26:36,743 INFO L290 TraceCheckUtils]: 30: Hoare triple {3749#true} assume !(0 != ~a~0 && 0 != ~b~0); {3888#(= (* main_~b~0 main_~a~0) 0)} is VALID [2022-04-27 14:26:36,743 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {3749#true} {3749#true} #71#return; {3749#true} is VALID [2022-04-27 14:26:36,743 INFO L290 TraceCheckUtils]: 28: Hoare triple {3749#true} assume true; {3749#true} is VALID [2022-04-27 14:26:36,743 INFO L290 TraceCheckUtils]: 27: Hoare triple {3749#true} assume !(0 == ~cond); {3749#true} is VALID [2022-04-27 14:26:36,743 INFO L290 TraceCheckUtils]: 26: Hoare triple {3749#true} ~cond := #in~cond; {3749#true} is VALID [2022-04-27 14:26:36,743 INFO L272 TraceCheckUtils]: 25: Hoare triple {3749#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {3749#true} is VALID [2022-04-27 14:26:36,743 INFO L290 TraceCheckUtils]: 24: Hoare triple {3749#true} assume !!(#t~post6 < 20);havoc #t~post6; {3749#true} is VALID [2022-04-27 14:26:36,743 INFO L290 TraceCheckUtils]: 23: Hoare triple {3749#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3749#true} is VALID [2022-04-27 14:26:36,743 INFO L290 TraceCheckUtils]: 22: Hoare triple {3749#true} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 1 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2));~a~0 := ~a~0 - 1;~b~0 := ~b~0 - 1;~q~0 := ~q~0 + (1 + (~a~0 + ~b~0)) * ~p~0; {3749#true} is VALID [2022-04-27 14:26:36,743 INFO L290 TraceCheckUtils]: 21: Hoare triple {3749#true} assume !(1 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {3749#true} is VALID [2022-04-27 14:26:36,743 INFO L290 TraceCheckUtils]: 20: Hoare triple {3749#true} assume !(0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2)); {3749#true} is VALID [2022-04-27 14:26:36,744 INFO L290 TraceCheckUtils]: 19: Hoare triple {3749#true} assume !!(0 != ~a~0 && 0 != ~b~0); {3749#true} is VALID [2022-04-27 14:26:36,744 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3749#true} {3749#true} #71#return; {3749#true} is VALID [2022-04-27 14:26:36,744 INFO L290 TraceCheckUtils]: 17: Hoare triple {3749#true} assume true; {3749#true} is VALID [2022-04-27 14:26:36,744 INFO L290 TraceCheckUtils]: 16: Hoare triple {3749#true} assume !(0 == ~cond); {3749#true} is VALID [2022-04-27 14:26:36,744 INFO L290 TraceCheckUtils]: 15: Hoare triple {3749#true} ~cond := #in~cond; {3749#true} is VALID [2022-04-27 14:26:36,744 INFO L272 TraceCheckUtils]: 14: Hoare triple {3749#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {3749#true} is VALID [2022-04-27 14:26:36,744 INFO L290 TraceCheckUtils]: 13: Hoare triple {3749#true} assume !!(#t~post6 < 20);havoc #t~post6; {3749#true} is VALID [2022-04-27 14:26:36,744 INFO L290 TraceCheckUtils]: 12: Hoare triple {3749#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3749#true} is VALID [2022-04-27 14:26:36,744 INFO L290 TraceCheckUtils]: 11: Hoare triple {3749#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {3749#true} is VALID [2022-04-27 14:26:36,744 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3749#true} {3749#true} #69#return; {3749#true} is VALID [2022-04-27 14:26:36,744 INFO L290 TraceCheckUtils]: 9: Hoare triple {3749#true} assume true; {3749#true} is VALID [2022-04-27 14:26:36,744 INFO L290 TraceCheckUtils]: 8: Hoare triple {3749#true} assume !(0 == ~cond); {3749#true} is VALID [2022-04-27 14:26:36,744 INFO L290 TraceCheckUtils]: 7: Hoare triple {3749#true} ~cond := #in~cond; {3749#true} is VALID [2022-04-27 14:26:36,744 INFO L272 TraceCheckUtils]: 6: Hoare triple {3749#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3749#true} is VALID [2022-04-27 14:26:36,745 INFO L290 TraceCheckUtils]: 5: Hoare triple {3749#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3749#true} is VALID [2022-04-27 14:26:36,745 INFO L272 TraceCheckUtils]: 4: Hoare triple {3749#true} call #t~ret7 := main(); {3749#true} is VALID [2022-04-27 14:26:36,745 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3749#true} {3749#true} #77#return; {3749#true} is VALID [2022-04-27 14:26:36,745 INFO L290 TraceCheckUtils]: 2: Hoare triple {3749#true} assume true; {3749#true} is VALID [2022-04-27 14:26:36,745 INFO L290 TraceCheckUtils]: 1: Hoare triple {3749#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3749#true} is VALID [2022-04-27 14:26:36,745 INFO L272 TraceCheckUtils]: 0: Hoare triple {3749#true} call ULTIMATE.init(); {3749#true} is VALID [2022-04-27 14:26:36,745 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-27 14:26:36,745 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 14:26:36,745 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [479185942] [2022-04-27 14:26:36,745 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 14:26:36,745 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1153964992] [2022-04-27 14:26:36,745 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1153964992] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-27 14:26:36,745 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-27 14:26:36,746 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [10] total 11 [2022-04-27 14:26:36,746 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2057783076] [2022-04-27 14:26:36,746 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 14:26:36,747 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 40 [2022-04-27 14:26:36,747 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 14:26:36,747 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 14:26:36,767 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 14:26:36,767 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 14:26:36,767 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 14:26:36,767 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 14:26:36,767 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=88, Unknown=0, NotChecked=0, Total=110 [2022-04-27 14:26:36,767 INFO L87 Difference]: Start difference. First operand 113 states and 143 transitions. Second operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 14:26:37,201 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:26:37,202 INFO L93 Difference]: Finished difference Result 120 states and 149 transitions. [2022-04-27 14:26:37,202 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 14:26:37,202 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 40 [2022-04-27 14:26:37,202 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 14:26:37,202 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 14:26:37,203 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 41 transitions. [2022-04-27 14:26:37,203 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 14:26:37,203 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 41 transitions. [2022-04-27 14:26:37,203 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 41 transitions. [2022-04-27 14:26:37,236 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 14:26:37,238 INFO L225 Difference]: With dead ends: 120 [2022-04-27 14:26:37,238 INFO L226 Difference]: Without dead ends: 100 [2022-04-27 14:26:37,238 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 80 GetRequests, 69 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=26, Invalid=106, Unknown=0, NotChecked=0, Total=132 [2022-04-27 14:26:37,238 INFO L413 NwaCegarLoop]: 37 mSDtfsCounter, 5 mSDsluCounter, 85 mSDsCounter, 0 mSdLazyCounter, 25 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 5 SdHoareTripleChecker+Valid, 122 SdHoareTripleChecker+Invalid, 25 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 25 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 14:26:37,239 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [5 Valid, 122 Invalid, 25 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 25 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 14:26:37,239 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 100 states. [2022-04-27 14:26:37,273 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 100 to 66. [2022-04-27 14:26:37,273 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 14:26:37,274 INFO L82 GeneralOperation]: Start isEquivalent. First operand 100 states. Second operand has 66 states, 49 states have (on average 1.2857142857142858) internal successors, (63), 50 states have internal predecessors, (63), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 14:26:37,274 INFO L74 IsIncluded]: Start isIncluded. First operand 100 states. Second operand has 66 states, 49 states have (on average 1.2857142857142858) internal successors, (63), 50 states have internal predecessors, (63), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 14:26:37,274 INFO L87 Difference]: Start difference. First operand 100 states. Second operand has 66 states, 49 states have (on average 1.2857142857142858) internal successors, (63), 50 states have internal predecessors, (63), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 14:26:37,277 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:26:37,277 INFO L93 Difference]: Finished difference Result 100 states and 127 transitions. [2022-04-27 14:26:37,277 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 127 transitions. [2022-04-27 14:26:37,277 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 14:26:37,277 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 14:26:37,277 INFO L74 IsIncluded]: Start isIncluded. First operand has 66 states, 49 states have (on average 1.2857142857142858) internal successors, (63), 50 states have internal predecessors, (63), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 100 states. [2022-04-27 14:26:37,277 INFO L87 Difference]: Start difference. First operand has 66 states, 49 states have (on average 1.2857142857142858) internal successors, (63), 50 states have internal predecessors, (63), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 100 states. [2022-04-27 14:26:37,279 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:26:37,279 INFO L93 Difference]: Finished difference Result 100 states and 127 transitions. [2022-04-27 14:26:37,279 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 127 transitions. [2022-04-27 14:26:37,280 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 14:26:37,280 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 14:26:37,280 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 14:26:37,280 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 14:26:37,280 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 66 states, 49 states have (on average 1.2857142857142858) internal successors, (63), 50 states have internal predecessors, (63), 9 states have call successors, (9), 8 states have call predecessors, (9), 7 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 14:26:37,281 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 66 states to 66 states and 79 transitions. [2022-04-27 14:26:37,281 INFO L78 Accepts]: Start accepts. Automaton has 66 states and 79 transitions. Word has length 40 [2022-04-27 14:26:37,281 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 14:26:37,281 INFO L495 AbstractCegarLoop]: Abstraction has 66 states and 79 transitions. [2022-04-27 14:26:37,281 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 5.0) internal successors, (20), 4 states have internal predecessors, (20), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 14:26:37,281 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 79 transitions. [2022-04-27 14:26:37,282 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 55 [2022-04-27 14:26:37,282 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 14:26:37,282 INFO L195 NwaCegarLoop]: trace histogram [5, 5, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 14:26:37,298 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-04-27 14:26:37,491 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable8 [2022-04-27 14:26:37,492 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 14:26:37,492 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 14:26:37,492 INFO L85 PathProgramCache]: Analyzing trace with hash -1818717446, now seen corresponding path program 2 times [2022-04-27 14:26:37,492 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 14:26:37,492 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [432975327] [2022-04-27 14:26:37,492 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 14:26:37,492 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 14:26:37,503 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 14:26:37,503 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [844311692] [2022-04-27 14:26:37,503 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 14:26:37,503 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 14:26:37,503 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 14:26:37,504 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 14:26:37,505 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-04-27 14:26:37,548 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 14:26:37,548 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 14:26:37,549 INFO L263 TraceCheckSpWp]: Trace formula consists of 190 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-27 14:26:37,557 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 14:26:37,560 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 14:26:37,814 INFO L272 TraceCheckUtils]: 0: Hoare triple {4453#true} call ULTIMATE.init(); {4453#true} is VALID [2022-04-27 14:26:37,814 INFO L290 TraceCheckUtils]: 1: Hoare triple {4453#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4461#(<= ~counter~0 0)} is VALID [2022-04-27 14:26:37,815 INFO L290 TraceCheckUtils]: 2: Hoare triple {4461#(<= ~counter~0 0)} assume true; {4461#(<= ~counter~0 0)} is VALID [2022-04-27 14:26:37,815 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4461#(<= ~counter~0 0)} {4453#true} #77#return; {4461#(<= ~counter~0 0)} is VALID [2022-04-27 14:26:37,816 INFO L272 TraceCheckUtils]: 4: Hoare triple {4461#(<= ~counter~0 0)} call #t~ret7 := main(); {4461#(<= ~counter~0 0)} is VALID [2022-04-27 14:26:37,816 INFO L290 TraceCheckUtils]: 5: Hoare triple {4461#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4461#(<= ~counter~0 0)} is VALID [2022-04-27 14:26:37,817 INFO L272 TraceCheckUtils]: 6: Hoare triple {4461#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4461#(<= ~counter~0 0)} is VALID [2022-04-27 14:26:37,818 INFO L290 TraceCheckUtils]: 7: Hoare triple {4461#(<= ~counter~0 0)} ~cond := #in~cond; {4461#(<= ~counter~0 0)} is VALID [2022-04-27 14:26:37,818 INFO L290 TraceCheckUtils]: 8: Hoare triple {4461#(<= ~counter~0 0)} assume !(0 == ~cond); {4461#(<= ~counter~0 0)} is VALID [2022-04-27 14:26:37,819 INFO L290 TraceCheckUtils]: 9: Hoare triple {4461#(<= ~counter~0 0)} assume true; {4461#(<= ~counter~0 0)} is VALID [2022-04-27 14:26:37,823 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4461#(<= ~counter~0 0)} {4461#(<= ~counter~0 0)} #69#return; {4461#(<= ~counter~0 0)} is VALID [2022-04-27 14:26:37,823 INFO L290 TraceCheckUtils]: 11: Hoare triple {4461#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {4461#(<= ~counter~0 0)} is VALID [2022-04-27 14:26:37,824 INFO L290 TraceCheckUtils]: 12: Hoare triple {4461#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4495#(<= ~counter~0 1)} is VALID [2022-04-27 14:26:37,824 INFO L290 TraceCheckUtils]: 13: Hoare triple {4495#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {4495#(<= ~counter~0 1)} is VALID [2022-04-27 14:26:37,825 INFO L272 TraceCheckUtils]: 14: Hoare triple {4495#(<= ~counter~0 1)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {4495#(<= ~counter~0 1)} is VALID [2022-04-27 14:26:37,825 INFO L290 TraceCheckUtils]: 15: Hoare triple {4495#(<= ~counter~0 1)} ~cond := #in~cond; {4495#(<= ~counter~0 1)} is VALID [2022-04-27 14:26:37,825 INFO L290 TraceCheckUtils]: 16: Hoare triple {4495#(<= ~counter~0 1)} assume !(0 == ~cond); {4495#(<= ~counter~0 1)} is VALID [2022-04-27 14:26:37,826 INFO L290 TraceCheckUtils]: 17: Hoare triple {4495#(<= ~counter~0 1)} assume true; {4495#(<= ~counter~0 1)} is VALID [2022-04-27 14:26:37,826 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4495#(<= ~counter~0 1)} {4495#(<= ~counter~0 1)} #71#return; {4495#(<= ~counter~0 1)} is VALID [2022-04-27 14:26:37,827 INFO L290 TraceCheckUtils]: 19: Hoare triple {4495#(<= ~counter~0 1)} assume !!(0 != ~a~0 && 0 != ~b~0); {4495#(<= ~counter~0 1)} is VALID [2022-04-27 14:26:37,827 INFO L290 TraceCheckUtils]: 20: Hoare triple {4495#(<= ~counter~0 1)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {4495#(<= ~counter~0 1)} is VALID [2022-04-27 14:26:37,827 INFO L290 TraceCheckUtils]: 21: Hoare triple {4495#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4523#(<= ~counter~0 2)} is VALID [2022-04-27 14:26:37,828 INFO L290 TraceCheckUtils]: 22: Hoare triple {4523#(<= ~counter~0 2)} assume !!(#t~post6 < 20);havoc #t~post6; {4523#(<= ~counter~0 2)} is VALID [2022-04-27 14:26:37,828 INFO L272 TraceCheckUtils]: 23: Hoare triple {4523#(<= ~counter~0 2)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {4523#(<= ~counter~0 2)} is VALID [2022-04-27 14:26:37,829 INFO L290 TraceCheckUtils]: 24: Hoare triple {4523#(<= ~counter~0 2)} ~cond := #in~cond; {4523#(<= ~counter~0 2)} is VALID [2022-04-27 14:26:37,829 INFO L290 TraceCheckUtils]: 25: Hoare triple {4523#(<= ~counter~0 2)} assume !(0 == ~cond); {4523#(<= ~counter~0 2)} is VALID [2022-04-27 14:26:37,829 INFO L290 TraceCheckUtils]: 26: Hoare triple {4523#(<= ~counter~0 2)} assume true; {4523#(<= ~counter~0 2)} is VALID [2022-04-27 14:26:37,830 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {4523#(<= ~counter~0 2)} {4523#(<= ~counter~0 2)} #71#return; {4523#(<= ~counter~0 2)} is VALID [2022-04-27 14:26:37,830 INFO L290 TraceCheckUtils]: 28: Hoare triple {4523#(<= ~counter~0 2)} assume !!(0 != ~a~0 && 0 != ~b~0); {4523#(<= ~counter~0 2)} is VALID [2022-04-27 14:26:37,830 INFO L290 TraceCheckUtils]: 29: Hoare triple {4523#(<= ~counter~0 2)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {4523#(<= ~counter~0 2)} is VALID [2022-04-27 14:26:37,831 INFO L290 TraceCheckUtils]: 30: Hoare triple {4523#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4551#(<= ~counter~0 3)} is VALID [2022-04-27 14:26:37,831 INFO L290 TraceCheckUtils]: 31: Hoare triple {4551#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {4551#(<= ~counter~0 3)} is VALID [2022-04-27 14:26:37,832 INFO L272 TraceCheckUtils]: 32: Hoare triple {4551#(<= ~counter~0 3)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {4551#(<= ~counter~0 3)} is VALID [2022-04-27 14:26:37,832 INFO L290 TraceCheckUtils]: 33: Hoare triple {4551#(<= ~counter~0 3)} ~cond := #in~cond; {4551#(<= ~counter~0 3)} is VALID [2022-04-27 14:26:37,832 INFO L290 TraceCheckUtils]: 34: Hoare triple {4551#(<= ~counter~0 3)} assume !(0 == ~cond); {4551#(<= ~counter~0 3)} is VALID [2022-04-27 14:26:37,832 INFO L290 TraceCheckUtils]: 35: Hoare triple {4551#(<= ~counter~0 3)} assume true; {4551#(<= ~counter~0 3)} is VALID [2022-04-27 14:26:37,833 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {4551#(<= ~counter~0 3)} {4551#(<= ~counter~0 3)} #71#return; {4551#(<= ~counter~0 3)} is VALID [2022-04-27 14:26:37,833 INFO L290 TraceCheckUtils]: 37: Hoare triple {4551#(<= ~counter~0 3)} assume !!(0 != ~a~0 && 0 != ~b~0); {4551#(<= ~counter~0 3)} is VALID [2022-04-27 14:26:37,833 INFO L290 TraceCheckUtils]: 38: Hoare triple {4551#(<= ~counter~0 3)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {4551#(<= ~counter~0 3)} is VALID [2022-04-27 14:26:37,834 INFO L290 TraceCheckUtils]: 39: Hoare triple {4551#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4579#(<= ~counter~0 4)} is VALID [2022-04-27 14:26:37,834 INFO L290 TraceCheckUtils]: 40: Hoare triple {4579#(<= ~counter~0 4)} assume !!(#t~post6 < 20);havoc #t~post6; {4579#(<= ~counter~0 4)} is VALID [2022-04-27 14:26:37,835 INFO L272 TraceCheckUtils]: 41: Hoare triple {4579#(<= ~counter~0 4)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {4579#(<= ~counter~0 4)} is VALID [2022-04-27 14:26:37,835 INFO L290 TraceCheckUtils]: 42: Hoare triple {4579#(<= ~counter~0 4)} ~cond := #in~cond; {4579#(<= ~counter~0 4)} is VALID [2022-04-27 14:26:37,835 INFO L290 TraceCheckUtils]: 43: Hoare triple {4579#(<= ~counter~0 4)} assume !(0 == ~cond); {4579#(<= ~counter~0 4)} is VALID [2022-04-27 14:26:37,836 INFO L290 TraceCheckUtils]: 44: Hoare triple {4579#(<= ~counter~0 4)} assume true; {4579#(<= ~counter~0 4)} is VALID [2022-04-27 14:26:37,836 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {4579#(<= ~counter~0 4)} {4579#(<= ~counter~0 4)} #71#return; {4579#(<= ~counter~0 4)} is VALID [2022-04-27 14:26:37,836 INFO L290 TraceCheckUtils]: 46: Hoare triple {4579#(<= ~counter~0 4)} assume !!(0 != ~a~0 && 0 != ~b~0); {4579#(<= ~counter~0 4)} is VALID [2022-04-27 14:26:37,837 INFO L290 TraceCheckUtils]: 47: Hoare triple {4579#(<= ~counter~0 4)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {4579#(<= ~counter~0 4)} is VALID [2022-04-27 14:26:37,837 INFO L290 TraceCheckUtils]: 48: Hoare triple {4579#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4607#(<= |main_#t~post6| 4)} is VALID [2022-04-27 14:26:37,837 INFO L290 TraceCheckUtils]: 49: Hoare triple {4607#(<= |main_#t~post6| 4)} assume !(#t~post6 < 20);havoc #t~post6; {4454#false} is VALID [2022-04-27 14:26:37,837 INFO L272 TraceCheckUtils]: 50: Hoare triple {4454#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {4454#false} is VALID [2022-04-27 14:26:37,838 INFO L290 TraceCheckUtils]: 51: Hoare triple {4454#false} ~cond := #in~cond; {4454#false} is VALID [2022-04-27 14:26:37,838 INFO L290 TraceCheckUtils]: 52: Hoare triple {4454#false} assume 0 == ~cond; {4454#false} is VALID [2022-04-27 14:26:37,838 INFO L290 TraceCheckUtils]: 53: Hoare triple {4454#false} assume !false; {4454#false} is VALID [2022-04-27 14:26:37,838 INFO L134 CoverageAnalysis]: Checked inductivity of 70 backedges. 8 proven. 62 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 14:26:37,838 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 14:26:38,106 INFO L290 TraceCheckUtils]: 53: Hoare triple {4454#false} assume !false; {4454#false} is VALID [2022-04-27 14:26:38,107 INFO L290 TraceCheckUtils]: 52: Hoare triple {4454#false} assume 0 == ~cond; {4454#false} is VALID [2022-04-27 14:26:38,107 INFO L290 TraceCheckUtils]: 51: Hoare triple {4454#false} ~cond := #in~cond; {4454#false} is VALID [2022-04-27 14:26:38,107 INFO L272 TraceCheckUtils]: 50: Hoare triple {4454#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {4454#false} is VALID [2022-04-27 14:26:38,107 INFO L290 TraceCheckUtils]: 49: Hoare triple {4635#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {4454#false} is VALID [2022-04-27 14:26:38,107 INFO L290 TraceCheckUtils]: 48: Hoare triple {4639#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4635#(< |main_#t~post6| 20)} is VALID [2022-04-27 14:26:38,108 INFO L290 TraceCheckUtils]: 47: Hoare triple {4639#(< ~counter~0 20)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {4639#(< ~counter~0 20)} is VALID [2022-04-27 14:26:38,108 INFO L290 TraceCheckUtils]: 46: Hoare triple {4639#(< ~counter~0 20)} assume !!(0 != ~a~0 && 0 != ~b~0); {4639#(< ~counter~0 20)} is VALID [2022-04-27 14:26:38,109 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {4453#true} {4639#(< ~counter~0 20)} #71#return; {4639#(< ~counter~0 20)} is VALID [2022-04-27 14:26:38,109 INFO L290 TraceCheckUtils]: 44: Hoare triple {4453#true} assume true; {4453#true} is VALID [2022-04-27 14:26:38,109 INFO L290 TraceCheckUtils]: 43: Hoare triple {4453#true} assume !(0 == ~cond); {4453#true} is VALID [2022-04-27 14:26:38,109 INFO L290 TraceCheckUtils]: 42: Hoare triple {4453#true} ~cond := #in~cond; {4453#true} is VALID [2022-04-27 14:26:38,109 INFO L272 TraceCheckUtils]: 41: Hoare triple {4639#(< ~counter~0 20)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {4453#true} is VALID [2022-04-27 14:26:38,109 INFO L290 TraceCheckUtils]: 40: Hoare triple {4639#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {4639#(< ~counter~0 20)} is VALID [2022-04-27 14:26:38,110 INFO L290 TraceCheckUtils]: 39: Hoare triple {4667#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4639#(< ~counter~0 20)} is VALID [2022-04-27 14:26:38,110 INFO L290 TraceCheckUtils]: 38: Hoare triple {4667#(< ~counter~0 19)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {4667#(< ~counter~0 19)} is VALID [2022-04-27 14:26:38,110 INFO L290 TraceCheckUtils]: 37: Hoare triple {4667#(< ~counter~0 19)} assume !!(0 != ~a~0 && 0 != ~b~0); {4667#(< ~counter~0 19)} is VALID [2022-04-27 14:26:38,111 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {4453#true} {4667#(< ~counter~0 19)} #71#return; {4667#(< ~counter~0 19)} is VALID [2022-04-27 14:26:38,111 INFO L290 TraceCheckUtils]: 35: Hoare triple {4453#true} assume true; {4453#true} is VALID [2022-04-27 14:26:38,111 INFO L290 TraceCheckUtils]: 34: Hoare triple {4453#true} assume !(0 == ~cond); {4453#true} is VALID [2022-04-27 14:26:38,111 INFO L290 TraceCheckUtils]: 33: Hoare triple {4453#true} ~cond := #in~cond; {4453#true} is VALID [2022-04-27 14:26:38,111 INFO L272 TraceCheckUtils]: 32: Hoare triple {4667#(< ~counter~0 19)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {4453#true} is VALID [2022-04-27 14:26:38,113 INFO L290 TraceCheckUtils]: 31: Hoare triple {4667#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {4667#(< ~counter~0 19)} is VALID [2022-04-27 14:26:38,113 INFO L290 TraceCheckUtils]: 30: Hoare triple {4695#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4667#(< ~counter~0 19)} is VALID [2022-04-27 14:26:38,113 INFO L290 TraceCheckUtils]: 29: Hoare triple {4695#(< ~counter~0 18)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {4695#(< ~counter~0 18)} is VALID [2022-04-27 14:26:38,114 INFO L290 TraceCheckUtils]: 28: Hoare triple {4695#(< ~counter~0 18)} assume !!(0 != ~a~0 && 0 != ~b~0); {4695#(< ~counter~0 18)} is VALID [2022-04-27 14:26:38,114 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {4453#true} {4695#(< ~counter~0 18)} #71#return; {4695#(< ~counter~0 18)} is VALID [2022-04-27 14:26:38,119 INFO L290 TraceCheckUtils]: 26: Hoare triple {4453#true} assume true; {4453#true} is VALID [2022-04-27 14:26:38,119 INFO L290 TraceCheckUtils]: 25: Hoare triple {4453#true} assume !(0 == ~cond); {4453#true} is VALID [2022-04-27 14:26:38,119 INFO L290 TraceCheckUtils]: 24: Hoare triple {4453#true} ~cond := #in~cond; {4453#true} is VALID [2022-04-27 14:26:38,119 INFO L272 TraceCheckUtils]: 23: Hoare triple {4695#(< ~counter~0 18)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {4453#true} is VALID [2022-04-27 14:26:38,127 INFO L290 TraceCheckUtils]: 22: Hoare triple {4695#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {4695#(< ~counter~0 18)} is VALID [2022-04-27 14:26:38,128 INFO L290 TraceCheckUtils]: 21: Hoare triple {4723#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4695#(< ~counter~0 18)} is VALID [2022-04-27 14:26:38,128 INFO L290 TraceCheckUtils]: 20: Hoare triple {4723#(< ~counter~0 17)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {4723#(< ~counter~0 17)} is VALID [2022-04-27 14:26:38,128 INFO L290 TraceCheckUtils]: 19: Hoare triple {4723#(< ~counter~0 17)} assume !!(0 != ~a~0 && 0 != ~b~0); {4723#(< ~counter~0 17)} is VALID [2022-04-27 14:26:38,129 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4453#true} {4723#(< ~counter~0 17)} #71#return; {4723#(< ~counter~0 17)} is VALID [2022-04-27 14:26:38,129 INFO L290 TraceCheckUtils]: 17: Hoare triple {4453#true} assume true; {4453#true} is VALID [2022-04-27 14:26:38,129 INFO L290 TraceCheckUtils]: 16: Hoare triple {4453#true} assume !(0 == ~cond); {4453#true} is VALID [2022-04-27 14:26:38,129 INFO L290 TraceCheckUtils]: 15: Hoare triple {4453#true} ~cond := #in~cond; {4453#true} is VALID [2022-04-27 14:26:38,129 INFO L272 TraceCheckUtils]: 14: Hoare triple {4723#(< ~counter~0 17)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {4453#true} is VALID [2022-04-27 14:26:38,130 INFO L290 TraceCheckUtils]: 13: Hoare triple {4723#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {4723#(< ~counter~0 17)} is VALID [2022-04-27 14:26:38,130 INFO L290 TraceCheckUtils]: 12: Hoare triple {4751#(< ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4723#(< ~counter~0 17)} is VALID [2022-04-27 14:26:38,131 INFO L290 TraceCheckUtils]: 11: Hoare triple {4751#(< ~counter~0 16)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {4751#(< ~counter~0 16)} is VALID [2022-04-27 14:26:38,131 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4453#true} {4751#(< ~counter~0 16)} #69#return; {4751#(< ~counter~0 16)} is VALID [2022-04-27 14:26:38,131 INFO L290 TraceCheckUtils]: 9: Hoare triple {4453#true} assume true; {4453#true} is VALID [2022-04-27 14:26:38,131 INFO L290 TraceCheckUtils]: 8: Hoare triple {4453#true} assume !(0 == ~cond); {4453#true} is VALID [2022-04-27 14:26:38,131 INFO L290 TraceCheckUtils]: 7: Hoare triple {4453#true} ~cond := #in~cond; {4453#true} is VALID [2022-04-27 14:26:38,131 INFO L272 TraceCheckUtils]: 6: Hoare triple {4751#(< ~counter~0 16)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4453#true} is VALID [2022-04-27 14:26:38,132 INFO L290 TraceCheckUtils]: 5: Hoare triple {4751#(< ~counter~0 16)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4751#(< ~counter~0 16)} is VALID [2022-04-27 14:26:38,132 INFO L272 TraceCheckUtils]: 4: Hoare triple {4751#(< ~counter~0 16)} call #t~ret7 := main(); {4751#(< ~counter~0 16)} is VALID [2022-04-27 14:26:38,132 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4751#(< ~counter~0 16)} {4453#true} #77#return; {4751#(< ~counter~0 16)} is VALID [2022-04-27 14:26:38,133 INFO L290 TraceCheckUtils]: 2: Hoare triple {4751#(< ~counter~0 16)} assume true; {4751#(< ~counter~0 16)} is VALID [2022-04-27 14:26:38,133 INFO L290 TraceCheckUtils]: 1: Hoare triple {4453#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4751#(< ~counter~0 16)} is VALID [2022-04-27 14:26:38,133 INFO L272 TraceCheckUtils]: 0: Hoare triple {4453#true} call ULTIMATE.init(); {4453#true} is VALID [2022-04-27 14:26:38,133 INFO L134 CoverageAnalysis]: Checked inductivity of 70 backedges. 8 proven. 38 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-27 14:26:38,133 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 14:26:38,134 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [432975327] [2022-04-27 14:26:38,134 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 14:26:38,134 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [844311692] [2022-04-27 14:26:38,134 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [844311692] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 14:26:38,134 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 14:26:38,134 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-27 14:26:38,134 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2000248955] [2022-04-27 14:26:38,134 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 14:26:38,135 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 4.857142857142857) internal successors, (68), 14 states have internal predecessors, (68), 12 states have call successors, (14), 8 states have call predecessors, (14), 7 states have return successors, (12), 10 states have call predecessors, (12), 11 states have call successors, (12) Word has length 54 [2022-04-27 14:26:38,135 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 14:26:38,136 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 4.857142857142857) internal successors, (68), 14 states have internal predecessors, (68), 12 states have call successors, (14), 8 states have call predecessors, (14), 7 states have return successors, (12), 10 states have call predecessors, (12), 11 states have call successors, (12) [2022-04-27 14:26:38,214 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 94 edges. 94 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 14:26:38,214 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-27 14:26:38,214 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 14:26:38,215 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-27 14:26:38,215 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-27 14:26:38,215 INFO L87 Difference]: Start difference. First operand 66 states and 79 transitions. Second operand has 14 states, 14 states have (on average 4.857142857142857) internal successors, (68), 14 states have internal predecessors, (68), 12 states have call successors, (14), 8 states have call predecessors, (14), 7 states have return successors, (12), 10 states have call predecessors, (12), 11 states have call successors, (12) [2022-04-27 14:26:38,735 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:26:38,735 INFO L93 Difference]: Finished difference Result 140 states and 177 transitions. [2022-04-27 14:26:38,735 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-27 14:26:38,735 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 4.857142857142857) internal successors, (68), 14 states have internal predecessors, (68), 12 states have call successors, (14), 8 states have call predecessors, (14), 7 states have return successors, (12), 10 states have call predecessors, (12), 11 states have call successors, (12) Word has length 54 [2022-04-27 14:26:38,735 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 14:26:38,735 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 4.857142857142857) internal successors, (68), 14 states have internal predecessors, (68), 12 states have call successors, (14), 8 states have call predecessors, (14), 7 states have return successors, (12), 10 states have call predecessors, (12), 11 states have call successors, (12) [2022-04-27 14:26:38,738 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 174 transitions. [2022-04-27 14:26:38,738 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 4.857142857142857) internal successors, (68), 14 states have internal predecessors, (68), 12 states have call successors, (14), 8 states have call predecessors, (14), 7 states have return successors, (12), 10 states have call predecessors, (12), 11 states have call successors, (12) [2022-04-27 14:26:38,740 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 174 transitions. [2022-04-27 14:26:38,740 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 174 transitions. [2022-04-27 14:26:38,873 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 174 edges. 174 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 14:26:38,875 INFO L225 Difference]: With dead ends: 140 [2022-04-27 14:26:38,875 INFO L226 Difference]: Without dead ends: 132 [2022-04-27 14:26:38,875 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 116 GetRequests, 95 SyntacticMatches, 0 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 55 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=184, Invalid=322, Unknown=0, NotChecked=0, Total=506 [2022-04-27 14:26:38,876 INFO L413 NwaCegarLoop]: 39 mSDtfsCounter, 223 mSDsluCounter, 201 mSDsCounter, 0 mSdLazyCounter, 59 mSolverCounterSat, 50 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 223 SdHoareTripleChecker+Valid, 240 SdHoareTripleChecker+Invalid, 109 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 50 IncrementalHoareTripleChecker+Valid, 59 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 14:26:38,876 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [223 Valid, 240 Invalid, 109 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [50 Valid, 59 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 14:26:38,876 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 132 states. [2022-04-27 14:26:38,956 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 132 to 132. [2022-04-27 14:26:38,956 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 14:26:38,956 INFO L82 GeneralOperation]: Start isEquivalent. First operand 132 states. Second operand has 132 states, 103 states have (on average 1.3106796116504855) internal successors, (135), 104 states have internal predecessors, (135), 15 states have call successors, (15), 14 states have call predecessors, (15), 13 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-27 14:26:38,956 INFO L74 IsIncluded]: Start isIncluded. First operand 132 states. Second operand has 132 states, 103 states have (on average 1.3106796116504855) internal successors, (135), 104 states have internal predecessors, (135), 15 states have call successors, (15), 14 states have call predecessors, (15), 13 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-27 14:26:38,957 INFO L87 Difference]: Start difference. First operand 132 states. Second operand has 132 states, 103 states have (on average 1.3106796116504855) internal successors, (135), 104 states have internal predecessors, (135), 15 states have call successors, (15), 14 states have call predecessors, (15), 13 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-27 14:26:38,958 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:26:38,958 INFO L93 Difference]: Finished difference Result 132 states and 163 transitions. [2022-04-27 14:26:38,958 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 163 transitions. [2022-04-27 14:26:38,959 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 14:26:38,959 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 14:26:38,959 INFO L74 IsIncluded]: Start isIncluded. First operand has 132 states, 103 states have (on average 1.3106796116504855) internal successors, (135), 104 states have internal predecessors, (135), 15 states have call successors, (15), 14 states have call predecessors, (15), 13 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 132 states. [2022-04-27 14:26:38,959 INFO L87 Difference]: Start difference. First operand has 132 states, 103 states have (on average 1.3106796116504855) internal successors, (135), 104 states have internal predecessors, (135), 15 states have call successors, (15), 14 states have call predecessors, (15), 13 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 132 states. [2022-04-27 14:26:38,961 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 14:26:38,961 INFO L93 Difference]: Finished difference Result 132 states and 163 transitions. [2022-04-27 14:26:38,961 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 163 transitions. [2022-04-27 14:26:38,961 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 14:26:38,961 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 14:26:38,962 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 14:26:38,962 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 14:26:38,962 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 132 states, 103 states have (on average 1.3106796116504855) internal successors, (135), 104 states have internal predecessors, (135), 15 states have call successors, (15), 14 states have call predecessors, (15), 13 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-27 14:26:38,963 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 132 states to 132 states and 163 transitions. [2022-04-27 14:26:38,964 INFO L78 Accepts]: Start accepts. Automaton has 132 states and 163 transitions. Word has length 54 [2022-04-27 14:26:38,964 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 14:26:38,964 INFO L495 AbstractCegarLoop]: Abstraction has 132 states and 163 transitions. [2022-04-27 14:26:38,964 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 4.857142857142857) internal successors, (68), 14 states have internal predecessors, (68), 12 states have call successors, (14), 8 states have call predecessors, (14), 7 states have return successors, (12), 10 states have call predecessors, (12), 11 states have call successors, (12) [2022-04-27 14:26:38,964 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 163 transitions. [2022-04-27 14:26:38,965 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 109 [2022-04-27 14:26:38,965 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 14:26:38,965 INFO L195 NwaCegarLoop]: trace histogram [11, 11, 10, 10, 10, 10, 10, 10, 10, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 14:26:38,981 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Ended with exit code 0 [2022-04-27 14:26:39,172 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-04-27 14:26:39,173 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 14:26:39,173 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 14:26:39,173 INFO L85 PathProgramCache]: Analyzing trace with hash 1397474810, now seen corresponding path program 3 times [2022-04-27 14:26:39,173 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 14:26:39,173 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [784605341] [2022-04-27 14:26:39,173 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 14:26:39,174 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 14:26:39,194 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 14:26:39,194 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2026192622] [2022-04-27 14:26:39,194 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-27 14:26:39,194 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 14:26:39,194 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 14:26:39,204 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 14:26:39,215 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process